„OpenCV“ – Versionsunterschied
[gesichtete Version] | [gesichtete Version] |
K →Anwendungsbereiche: DNN |
Update 2006 logo with 2020 logo; remove empty line above template |
||
(39 dazwischenliegende Versionen von 30 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
{{Infobox Software |
{{Infobox Software |
||
| |
|Name = OpenCV |
||
| |
|Logo = [[Datei:OpenCV logo black.svg|180px]] |
||
| |
|Screenshot = |
||
| |
|Beschreibung = <!-- Beschreibung des Screenshots! --> |
||
| |
|Maintainer = |
||
| |
|Hersteller = [[Intel]], [[Willow Garage]] |
||
| |
|Erscheinungsjahr = Juni 2000 |
||
| |
|AktuelleVersion = <!-- Wikidata --> |
||
| |
|AktuelleVersionFreigabeDatum = <!-- Wikidata --> |
||
|AktuelleVorabVersion = |
|||
⚫ | |||
|AktuelleVorabVersionFreigabeDatum = |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
| Lizenz = [[BSD-Lizenz|BSD]] |
|||
⚫ | |||
| Deutsch = |
|||
|Lizenz = <!-- Wikidata --> |
|||
⚫ | |||
|Deutsch = nein |
|||
⚫ | |||
|Dateien = |
|||
}} |
}} |
||
'''OpenCV''' ist eine [[Freie Software|freie]] [[Programmbibliothek]] mit [[Algorithmus|Algorithmen]] für die [[Bildverarbeitung]] und [[ |
'''OpenCV''' (englische Abk. für Open Source Computer Vision Library<ref>{{Internetquelle |url=https://github.com/opencv/opencv |titel=opencv/opencv |hrsg=OpenCV |datum=2023-02-23 |abruf=2023-02-23}}</ref>) ist eine [[Freie Software|freie]] [[Programmbibliothek]] mit [[Algorithmus|Algorithmen]] für die [[Bildverarbeitung]] und [[Computer Vision]]. Sie ist für die Programmiersprachen [[C (Programmiersprache)|C]], [[C++]], [[Python (Programmiersprache)|Python]] und [[Java (Programmiersprache)|Java]] geschrieben und steht als freie Software unter den Bedingungen der [[Apache-Lizenz|Apache 2 License]]. Die Entwicklung der Bibliothek wurde von [[Intel]] initiiert und bis 2013 von Willow Garage gepflegt. Nach deren Auflösung wurde sie von Itseez fortgeführt, das mittlerweile von Intel übernommen wurde.<ref>{{Internetquelle |url=https://opencv.org/intel-acquires-itseez.html |titel=Intel acquires Itseez - OpenCV library |zugriff=2018-04-27 |sprache=en |archiv-url=https://web.archive.org/web/20190214174741/https://opencv.org/intel-acquires-itseez.html |archiv-datum=2019-02-14 |offline=ja |archiv-bot=2024-04-04 22:21:20 InternetArchiveBot }}</ref> |
||
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.<ref>[http://developer.amd.com/community/blog/2014/10/15/opencv-3-0-transparent-api-opencl-acceleration/ OpenCV 3.0 – The Transparent API and OpenCL™ Acceleration], Harris Gasparakis, 15. Oktober 2014</ref> |
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.<ref>[http://developer.amd.com/community/blog/2014/10/15/opencv-3-0-transparent-api-opencl-acceleration/ OpenCV 3.0 – The Transparent API and OpenCL™ Acceleration], Harris Gasparakis, 15. Oktober 2014</ref> |
||
Die Stärke von OpenCV liegt in ihrer [[Leistung (Informatik)|Geschwindigkeit]] und in der großen Menge der Algorithmen aus neuesten |
Die Stärke von OpenCV liegt in ihrer [[Leistung (Informatik)|Geschwindigkeit]] und in der großen Menge der Algorithmen aus neuesten Forschungsergebnissen. |
||
== Anwendungsbereiche == |
== Anwendungsbereiche == |
||
Die Bibliothek umfasst unter anderem Algorithmen für [[Gesichtserkennung (Fotografie)|Gesichtserkennung]], 3D-Funktionalität, Haar-[[Klassifikator]]en, verschiedene sehr schnelle [[Bildverarbeitung# |
Die Bibliothek umfasst unter anderem Algorithmen für [[Gesichtserkennung (Fotografie)|Gesichtserkennung]], 3D-Funktionalität, Haar-[[Klassifikator]]en, verschiedene sehr schnelle [[Bildverarbeitung#Operationen der Bildverarbeitung|Filter]] (z. B. [[Sobel-Operator|Sobel]], [[Canny-Algorithmus|Canny]], [[Gauß-Filter#Bildverarbeitung|Gauß]]) und Funktionen für die [[Photogrammetrie|Kamerakalibrierung]]. |
||
OpenCV besteht aus Modulen für verschiedene Anwendungsfelder: |
OpenCV besteht aus Modulen für verschiedene Anwendungsfelder: |
||
Zeile 32: | Zeile 35: | ||
* [[Gestenerkennung]] |
* [[Gestenerkennung]] |
||
* [[Mensch-Computer-Interaktion]] (HCI) |
* [[Mensch-Computer-Interaktion]] (HCI) |
||
* [[Roboter#Autonome mobile Roboter| |
* [[Roboter#Autonome mobile Roboter|Mobile Roboter]] |
||
* [[Klassifizierung |
* [[Klassifizierung]] mit Hilfe der [[Viola-Jones-Methode]] |
||
* [[Segmentierung (Bildverarbeitung)|Segmentierung]] und Erkennung |
* [[Segmentierung (Bildverarbeitung)|Segmentierung]] und Erkennung |
||
* [[Stereoskopisches Sehen]] (Stereopsis), ergibt Tiefenbilder |
* [[Stereoskopisches Sehen]] (Stereopsis), ergibt Tiefenbilder |
||
* |
* [[Structure from Motion]] (SfM), siehe [[Computer Vision]] |
||
* |
* Optisches Tracking, [[Motion Compensation]] und [[Optischer Fluss]] |
||
* [[Kalman-Filter]] zum Tracking |
* [[Kalman-Filter]] zum Tracking |
||
Zeile 49: | Zeile 52: | ||
* [[Random Forest]] |
* [[Random Forest]] |
||
* [[Support Vector Machine]] (SVM) |
* [[Support Vector Machine]] (SVM) |
||
=== Deep Learning === |
|||
[[Datei:Detected-with-YOLO--Schreibtisch-mit-Objekten.jpg|mini|Automatische Objekterkennung mit OpenCV. Hierzu wurde ein auf dem COCO-Dataset trainiertes YOLOv3 Modell geladen, das 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.<ref>{{Internetquelle |url=https://github.com/opencv/opencv/wiki/Deep-Learning-in-OpenCV |titel=Deep-Learning-in-OpenCV |werk=GitHub |hrsg=OpenCV |datum=2019-01-17 |zugriff=2019-01-17 |sprache=en}}</ref> [[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: |
|||
* [[Caffe]] |
|||
* [[TensorFlow]] |
|||
* [[PyTorch|Torch]] |
|||
* Darknet |
|||
* Modelle im [[ONNX]] Format |
|||
== Einzelnachweise == |
== Einzelnachweise == |
||
Zeile 58: | Zeile 72: | ||
|Jahr=2008 |
|Jahr=2008 |
||
|Titel=Learning OpenCV Computer Vision with the OpenCV Library |
|Titel=Learning OpenCV Computer Vision with the OpenCV Library |
||
|Verlag= |
|Verlag=O’Reilly |
||
|ISBN=978-0-596-51613-0}} |
|ISBN=978-0-596-51613-0}} |
||
== Weblinks == |
== Weblinks == |
||
{{commonscat}} |
|||
* http://sourceforge.net/projects/opencvlibrary/ |
* [http://sourceforge.net/projects/opencvlibrary/ SourceForge-Projektseite] |
||
* [https://github.com/opencv/opencv/wiki http://opencv.willowgarage.com/wiki/] OpenCV-WiKi |
|||
* |
* [https://github.com/opencv/opencv/wiki OpenCV-WiKi] |
||
* http://www. |
* [http://www.nvidia.de/object/nvidia-for-opencv-press-20100923-de.html OpenCV auf GPU (nvidia.de)] |
||
* http://www.nvidia.de/object/nvidia-for-opencv-press-20100923-de.html OpenCV auf GPU (nvidia.de) |
|||
[[Kategorie:Freie Software]] |
[[Kategorie:Freie Software]] |
||
[[Kategorie: |
[[Kategorie:Computer Vision]] |
||
[[Kategorie: |
[[Kategorie:Software (Künstliche Intelligenz)]] |
||
[[Kategorie:Künstliche Intelligenz]] |
Aktuelle Version vom 20. Dezember 2024, 18:20 Uhr
OpenCV
| |
---|---|
![]() | |
Basisdaten
| |
Entwickler | Intel, Willow Garage |
Erscheinungsjahr | Juni 2000 |
Aktuelle Version | 4.11.0[1] (9. Januar 2025) |
Betriebssystem | plattformunabhängig |
Programmiersprache | C++ |
Kategorie | Programmbibliothek für: Bildverarbeitung Computer-Vision Kamerakalibrierung |
Lizenz | Apache-Lizenz, Version 2.0[2] |
deutschsprachig | nein |
opencv.org |
OpenCV (englische Abk. für Open Source Computer Vision Library[3]) ist eine freie Programmbibliothek mit Algorithmen für die Bildverarbeitung und Computer Vision. Sie ist für die Programmiersprachen C, C++, Python und Java geschrieben und steht als freie Software unter den Bedingungen der Apache 2 License. Die Entwicklung der Bibliothek wurde von Intel initiiert und bis 2013 von Willow Garage gepflegt. Nach deren Auflösung wurde sie von Itseez fortgeführt, das mittlerweile von Intel übernommen wurde.[4]
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.[5]
Die Stärke von OpenCV liegt in ihrer Geschwindigkeit und in der großen Menge der Algorithmen aus neuesten Forschungsergebnissen.
Anwendungsbereiche
[Bearbeiten | Quelltext bearbeiten]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:
- 2D- und 3D-Merkmale (z. B. Interest-Operator oder Deskriptoren)
- Eigenbewegungsschätzung, siehe Photogrammetrie: Rückwärtsschnitt
- Gesichtserkennung
Automatische Gesichtserkennung mit OpenCV - Gestenerkennung
- Mensch-Computer-Interaktion (HCI)
- Mobile Roboter
- Klassifizierung mit Hilfe der Viola-Jones-Methode
- Segmentierung und Erkennung
- Stereoskopisches Sehen (Stereopsis), ergibt Tiefenbilder
- Structure from Motion (SfM), siehe Computer Vision
- Optisches Tracking, Motion Compensation und Optischer Fluss
- Kalman-Filter zum Tracking
Ferner beinhaltet OpenCV eine Bibliothek für Maschinelles Lernen mit folgendem Funktionsumfang:
- Boosting (automatische Klassifizierung)
- Lernen eines Entscheidungsbaumes
- EM-Algorithmus (Expectation-Maximization)
- Nächste-Nachbarn-Klassifikation
- Bayes-Klassifikator
- Künstliche neuronale Netze, inkl. DNN
- Random Forest
- Support Vector Machine (SVM)
Deep Learning
[Bearbeiten | Quelltext bearbeiten]
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.[6] 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:
- Caffe
- TensorFlow
- Torch
- Darknet
- Modelle im ONNX Format
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ Release 4.11.0. 9. Januar 2025 (abgerufen am 26. Januar 2025).
- ↑ License. (englisch, abgerufen am 4. Dezember 2021).
- ↑ opencv/opencv. OpenCV, 23. Februar 2023, abgerufen am 23. Februar 2023.
- ↑ Intel acquires Itseez - OpenCV library. Archiviert vom (nicht mehr online verfügbar) am 14. Februar 2019; abgerufen am 27. April 2018 (englisch). Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.
- ↑ OpenCV 3.0 – The Transparent API and OpenCL™ Acceleration, Harris Gasparakis, 15. Oktober 2014
- ↑ Deep-Learning-in-OpenCV. In: GitHub. OpenCV, 17. Januar 2019, abgerufen am 17. Januar 2019 (englisch).
Literatur
[Bearbeiten | Quelltext bearbeiten]- Gary Bradski, Adrian Kaehler: Learning OpenCV Computer Vision with the OpenCV Library. O’Reilly, 2008, ISBN 978-0-596-51613-0.