Zum Inhalt springen

OpenCV

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 26. Juni 2020 um 16:36 Uhr durch Nolispanmo (Diskussion | Beiträge) (Weblinks: -1 404). Sie kann sich erheblich von der aktuellen Version unterscheiden.
OpenCV

Basisdaten

Entwickler Intel, Willow Garage
Erscheinungsjahr Juni 2000
Aktuelle Version 4.11.0[1]
(9. Januar 2025)
Betriebssystem plattformunabhängig
Programmier­sprache C++
Kategorie Programmbibliothek für: Bildverarbeitung Computer-Vision Kamerakalibrierung
Lizenz BSD
deutschsprachig nein
opencv.org

OpenCV (englische Abk. für Open Computer Vision) ist eine freie Programmbibliothek mit Algorithmen für die Bildverarbeitung und Computer Sehen. Sie ist für die Programmiersprachen C, C++, Python und Java geschrieben und steht als freie Software unter den Bedingungen der BSD-Lizenz. Die Entwicklung der Bibliothek wurde von Intel initiiert und wurde bis 2013 von Willow Garage gepflegt. Nach deren Auflösung wurde sie von Itseez fortgeführt, welches mittlerweile von Intel übernommen wurde.[2]

Im September 2006 wurde die Version 1.0 herausgegeben. Ende September 2009 folgte nach längerer Pause die Version 2.0.0, welche die Bezeichnung „Gold“ trägt. Anfang Juni 2015 erschien Version 3.0, die erstmals OpenCL unterstützte.[3]

Die Stärke von OpenCV liegt in ihrer Geschwindigkeit und in der großen Menge der Algorithmen aus neuesten Forschungsergebnissen.

Anwendungsbereiche

Die Bibliothek umfasst unter anderem Algorithmen für Gesichtserkennung, 3D-Funktionalität, Haar-Klassifikatoren, verschiedene sehr schnelle Filter (z. B. Sobel, Canny, Gauß) und Funktionen für die Kamerakalibrierung.

OpenCV besteht aus Modulen für verschiedene Anwendungsfelder:

Ferner beinhaltet OpenCV eine Bibliothek für Maschinelles Lernen mit folgendem Funktionsumfang:

Deep Learning

Automatische Objekterkennung mit Hilfe der Software OpenCV. Hierzu wurde ein zuvor auf dem COCO-Dataset trainiertes YOLOv3 Modell geladen welches 80 verschiedene Objekte identifizieren kann.

Das DNN-Modul von OpenCV kann die von gängigen Deep Learning Frameworks vortrainierten Netze einlesen und auf ihnen einen Forward Pass ausführen. D.h. es werden Werte in der sichtbaren Eingangsschicht (englisch input layer) des künstlichen neuronalen Netzwerks eingelesen und beim Durchlaufen aller Schichten des Netzwerks verarbeitet, bis sie dann an der sichtbaren letzten Schicht (output layer) ausgegeben werden[4]. Objekterkennung mit z. B. YOLO wurde auf diese Weise realisiert. Das seit OpenCV 3.1 existierende DNN-Modul wurde mit Release 3.3 in das Haupt-Repository verschoben und ist somit leichter, also ohne Kompilierung des Quellcodes, benutzbar.

Unterstützt werden folgende Bibliotheken:

Einzelnachweise

  1. Release 4.11.0. 9. Januar 2025 (abgerufen am 26. Januar 2025).
  2. Intel acquires Itseez - OpenCV library. Abgerufen am 27. April 2018 (englisch).
  3. OpenCV 3.0 – The Transparent API and OpenCL™ Acceleration, Harris Gasparakis, 15. Oktober 2014
  4. Deep-Learning-in-OpenCV. In: GitHub. OpenCV, 17. Januar 2019, abgerufen am 17. Januar 2019 (englisch).

Literatur

  • Gary Bradski, Adrian Kaehler: Learning OpenCV Computer Vision with the OpenCV Library. O'Reilly, 2008, ISBN 978-0-596-51613-0.