OpenCV

OpenCV
Autor inițialIntel Corporation, Willow Garage, Itseez
Versiune inițialăiunie 2000 (2000-06)
Ultima versiune4.0.1 (22 decembrie 2018 (2018-12-22))
Repogithub.com/opencv/opencv Modificați la Wikidata
Scris înC/C++
Sistem de operareCross-platform
Mărime~200 MB
TipBibliotecă
LicențăLicența BSD
Prezență online
opencv.org

OpenCV (Vedere computerizată cu sursa deschisă) este o bibliotecă de funcții informatice specializată pe vedere computerizată în timp-real. Elaborată inițial de Intel, a fost dezvoltată ulterior de Willow Garage, apoi de Itseez (care a fost achiziționată mai târziu de Intel). Biblioteca este de tip multiplatformă și este gratuită pentru utilizare sub licența BSD pentru sursă deschisă.

OpenCV suportă ansamblurile software de învățare profundă TensorFlow, Torch/ PyTorch și Caffe.

Istorie

Lansat oficial în anul 1999, proiectul OpenCV a fost inițial o inițiativă a departamentului Intel Cercetare pentru dezvoltarea aplicațiilor intensive-numeric, făcând parte dintr-o serie de proiecte printre care și urmărirea razelor în timp-real și pereții cu ecran 3D. Printre principalii contribuitori ai proiectului au fost și câțiva experți în optimizare de la Intel Rusia, precum și echipa Intel Performance Library. La începuturile OpenCV, scopurile proiectului erau descrise astfel:

Prima versiune alfa a OpenCV a fost lansată public la Conferința IEEE despre Vederea Computerizată și Recunoașterea Modelului din anul 2000, iar cinci versiuni beta au fost lansate între anii 2001 și 2005. Prima versiune 1.0 a fost lansată în anul 2006. O versiune 1.1 „pre-lansare” a fost lansată în luna octombrie 2008.

A doua lansare majoră a OpenCV a avut loc în octombrie 2009. OpenCV 2 include modificări majore ale interfeței C++, țintind modele mai ușoare, cu tipuri mai stabile, funcții noi, și implementări mai bune ale celor existente, în sensul performanței (în special pentru sistemele multi-nucleu). Acum au loc lansări oficiale chiar și la perioade de șase luni iar dezvoltarea este realizată de o echipă rusă independentă sprijinită de corporații comerciale.

În luna mai 2016, Intel a semnat un acord de preluare a Itseez, un dezvoltator OpenCV avansat.

Aplicații

Ansambluri deschise rulând exemplul OpenCV

OpenCV este aplicat în:

Pentru a sprijini cele de mai sus, OpenCV include o bibliotecă statistică de învățare automată care conține:

Limbaje de programare

OpenCV este scris în limbajul C++ și are interfața principală în C++, dar păstrează și o interfață C veche mai puțin dezvoltată, deși extinsă. Există translații în Python, Java și MATLAB/ OCTAVE. Interfețele de programare (abr. en. API) pentru acestea se pot găsi în documentația din internet. Pentru a încuraja adoptarea de o mai mare audiență au fost dezvoltate și anvelope în C#, Perl, Ch, Haskell, și Ruby.

Noile dezvoltări și algoritmii în OpenCV se realizează acum pentru interfața C++.

Accelerare hardware

Dacă biblioteca găsește Primitivele Integrate de Performanță (abr. en. IPP) ale Intel în sistem, va utiliza aceste rutine specifice optimizate pentru a se accelera.

O interfață GPU bazată pe CUDA este dezvoltată începând din septembrie 2010.

O interfață GPU bazată pe OpenCL este în dezvoltare din octombrie 2012, iar documentația pentru versiunea 2.4.13.3 se poate găsi la docs.opencv.org.

Suport pentru sisteme de operare

OpenCV rulează pe următoarele sisteme de operare desktop: Windows, Linux, macOS, FreeBSD, NetBSD, OpenBSD.

OpenCV rulează pe următoarele sisteme de operare mobile: Android, iOS, Maemo, BlackBerry 10. Utilizatorii pot prelua versiunea oficială din SourceForge sau ultimele coduri sursă din GitHub. OpenCV utilizează CMake.

Vezi și

Bibliografie

Referințe

  1. ^ en Pulli, Kari; Baksheev, Anatoly; Kornyakov, Kirill; Eruhimov, Victor (1 aprilie 2012). „Vedere computerizată în timp-real cu OpenCV”. Queue. pp. 40:40–40:56. doi:10.1145/2181796.2206309
  2. ^ en Taheri, Sajjad (31 mai 2018). „Vedere computerizată în masă: vederea computerizată pentru platforma Open Web”. eeTimes. Accesat în 26 noiembrie 2018. 
  3. ^ en Intel achiziționează Itseez: https://opencv.org/intel-acquires-itseez.html Arhivat în 14 februarie 2019, la Wayback Machine.
  4. ^ en https://github.com/opencv/opencv/wiki/Învățare profundă în OpenCV
  5. ^ en Adrian Kaehler; Gary Bradski (14 decembrie 2016). Să învățăm OpenCV 3: Vedere computerizată în C++ cu biblioteca OpenCV. O'Reilly Media. pp. 26ff. ISBN 978-1-4919-3800-3
  6. ^ en Bradski, Gary; Kaehler, Adrian (2008). Să învățăm OpenCV: Vedere computerizată cu biblioteca OpenCV. O'Reilly Media, Inc. p. 6. 
  7. ^ en Jurnal de modificări OpenCV: http://code.opencv.org/projects/opencv/wiki/ChangeLog Arhivat în 15 ianuarie 2013, la Wayback Machine.
  8. ^ en „Intel achiziționează Vederea Computerizată pentru IOT, Auto | Intel Newsroom”. Intel Newsroom (în engleză). Accesat în 26 noiembrie 2018. 
  9. ^ en „Intel achiziționează compania rusă de vedere computerizată Itseez”. East-West Digital News (în engleză). 31 mai 2016. Accesat în 26 noiembrie 2018. 
  10. ^ en OpenCV: http://opencv.org/opencv-3-3.html Arhivat în 14 februarie 2019, la Wayback Machine.
  11. ^ en Interfața C OpenCV: http://docs.opencv.org
  12. ^ en CPAN: http://search.cpan.org/~yuta/Cv-0.29/
  13. ^ en OpenCV în Ch: http://www.softintegration.com/products/thirdparty/opencv/
  14. ^ Proiectul haskell-opencv în Github: https://github.com/LumiGuide/haskell-opencv
  15. ^ en Portare pentru Cuda GPU: http://opencv.org/platforms/cuda.html Arhivat în 21 mai 2016, la Wayback Machine.
  16. ^ en Anunțul pentru OpenCL: http://opencv.org/opencv-v2-4-3rc-is-under-way.html Arhivat în 17 februarie 2019, la Wayback Machine.
  17. ^ en Referința API pentru vedere computerizată OpenCL: http://docs.opencv.org/modules/ocl/doc/ocl.html
  18. ^ en Portarea Maemo: https://garage.maemo.org/projects/opencv Arhivat în 17 martie 2016, la Wayback Machine.
  19. ^ BlackBerry 10 (portare parțială): https://github.com/blackberry/OpenCV
  20. ^ en https://github.com/Itseez/opencv