OpenCV
Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od
verze recenzované 15. května 2018; kontroly vyžadují
19 úprav .
OpenCV ( anglicky Open Source Computer Vision Library , open source knihovna počítačového vidění) je knihovna algoritmů počítačového vidění , zpracování obrazu a univerzálních numerických algoritmů s otevřeným zdrojovým kódem . Implementováno v C / C++ , vyvíjeno také pro Python , Java , Ruby , Matlab , Lua a další jazyky [2] . Zdarma k použití pro akademické a komerční účely – distribuováno za podmínek licence BSD .
Druhá velká aktualizace OpenCV byla vydána v říjnu 2009. OpenCV 2 obsahuje velké změny v rozhraní C++, které zjednodušují, vylepšují zabezpečení, zavádějí nové funkce a zvyšují výkon (zejména u vícejádrových systémů). Oficiální verze nyní vycházejí každých šest měsíců [3] a vývoj provádí nezávislý ruský tým s podporou komerčních korporací. [4] V květnu 2016 Intel podepsal dohodu o akvizici Itseeze [5] , hlavního vývojáře OpenCV. [6]
Aplikace
- Schválit společné standardní rozhraní počítačového vidění pro aplikace v této oblasti. Podporovat růst takových aplikací a vytvářet nové modely využití PC.
- Zatraktivnit platformy Intel pro vývojáře takových aplikací dalším urychlením OpenCV pomocí Intel® Performance Libraries (Nyní zahrnuje IPP (nízkoúrovňové knihovny pro zpracování signálu, zpracování obrazu a mediální kodeky) a MKL (speciální verze LAPACK a FFTPack )). OpenCV dokáže automaticky detekovat přítomnost IPP a MKL a využít je k urychlení zpracování.
Podporované platformy a nástroje
Samotné knihovny:
- Microsoft Windows : kompilátory Microsoft Visual C++ (6.0, .NET 2003), Intel Compiler, Borland C++, Mingw ( GCC 3.x).
- Windows RT : Portováno na ARM společností Itseez [7] .
- Linux : GCC (2.9x, 3.x), kompilátor Intel: "./configure-make-make install", RPM (včetně souboru specifikací).
- Mac OS X : GCC (3.x, 4.x).
- android .
- iOS .
- Používá se C a "lehký" C++. Pragmata a podmíněná kompilace se používají velmi omezeně.
Nástroje GUI , nahrávání videa:
Dokumentace: Statické HTML , PDF .
Hlavní moduly
Ve verzi 2.2 byla knihovna reorganizována. Místo univerzálních modulů cxcore, cvaux, highGUI a dalších vzniklo několik kompaktních modulů s užší specializací:
- opencv_core - základní funkce. Zahrnuje základní struktury, výpočty (matematické funkce, generátory náhodných čísel) a lineární algebru, DFT , DCT , I/O pro XML a YAML atd.
- opencv_imgproc - zpracování obrazu (filtrování, geometrické transformace, konverze barevného prostoru atd.).
- opencv_highgui - jednoduché uživatelské rozhraní, obraz a video vstup/výstup.
- opencv_ml - Modely strojového učení (SVM, rozhodovací stromy, stimulované učení atd.).
- opencv_features2d - rozpoznání a popis plochých primitiv ( SURF, FAST a další, včetně specializovaného rámce).
- opencv_video - analýza pohybu a sledování objektů ( optický tok , vzory pohybu, eliminace pozadí).
- opencv_objdetect - detekce objektů v obraze (detekce obličeje pomocí algoritmu Viola-Jones , rozpoznávání lidí HOG atd.).
- opencv_calib3d - Kalibrace kamery, vyhledávání stereo shody a prvky 3D zpracování dat.
- opencv_flann - rychlá knihovna nejbližších sousedů (FLANN 1.5) a obal OpenCV.
- opencv_contrib - doprovodný kód, ještě není připraven k použití.
- opencv_legacy je starší kód, uchovávaný pro zpětnou kompatibilitu.
- opencv_gpu - zrychlení některých funkcí OpenCV díky CUDA , vytvořené s podporou NVidia .
Programovací jazyk
OpenCV je napsán v C++ jako jeho hlavní rozhraní , ale s částečným využitím rozhraní C. Všechny novinky a algoritmy se objevují v rozhraní C++. Podporovány jsou Python , Java a MATLAB /OCTAVE (např. metody OpenCV cv.line [8] , OpenCV cv2.cvtcolor [9] , OpenCV cv2.circle [10] ). API pro tato rozhraní lze nalézt v online dokumentaci [11] .
Poznámky
- ↑ Vydání . Získáno 20. září 2019. Archivováno z originálu 29. srpna 2019. (neurčitý)
- ↑ Bradsky G., Kaehler A. Learning OpenCV Archived 28. prosince 2008 na Wayback Machine - O'Reilly, 2008. - C. 1 - ISBN 978-0-596-51613-0
- ↑ Protokoly změn OpenCV: http://code.opencv.org/projects/opencv/wiki/ChangeLog Archivováno z originálu 15. ledna 2013.
- ↑ OpenCV Developer Site: http://code.opencv.org Archivováno 13. ledna 2013.
- ↑ Intel získává počítačové vidění pro IOT, automobilový průmysl ? . Intel Newsroom . Staženo: 19. srpna 2022. (neurčitý)
- ↑ Digitální zprávy Východ-Západ. Intel získává ruskou společnost pro počítačové vidění Itseez ? (31. května 2016). Staženo: 19. srpna 2022. (neurčitý)
- ↑ Blog Itseez Jak jsme přenesli OpenCV do WindowsRT Archivováno 8. února 2014.
- ↑ OpenCV cv.line (11. října 2021). Získáno 12. října 2021. Archivováno z originálu dne 27. října 2021. (neurčitý)
- ↑ OpenCV cv2.cvtcolor (11. října 2021). Získáno 12. října 2021. Archivováno z originálu dne 27. října 2021. (neurčitý)
- ↑ OpenCV cv2.circle (11. října 2021). Získáno 12. října 2021. Archivováno z originálu dne 27. října 2021. (neurčitý)
- ↑ Moduly OpenCV (11. října 2021). Získáno 12. října 2021. Archivováno z originálu dne 19. října 2021. (neurčitý)
Literatura
- Kaler A., Bradsky G. Learning OpenCV 3 = Learning OpenCV 3. - M. : DMK-Press, 2017. - 826 s. - ISBN 978-5-97060-471-7 .
- Bueno, Suarez, Espinosa. Image Processing with OpenCV = Learning Image Processing with OpenCV. - M. : DMK-Press, 2016. - 210 s. - ISBN 978-5-97060-387-1 .
- Prokhorenok N. OpenCV a Java. Zpracování obrazu a počítačové vidění. - Petrohrad. : BHV-Petersburg , 2018. - 320 s. — ISBN 978-5-9775-3955-5 .
Odkazy