OpenCV - OpenCV

OpenCV
Logo OpenCV s textem svg version.svg
Původní autořiIntel Corporation, Willow Garage, Itseez
První vydáníČerven 2000; před 20 roky (2000-06)
Stabilní uvolnění
4.5.0 / 12. října 2020; Před 55 dny (2020-10-12)
Úložiště Upravte to na Wikidata
NapsánoC /C ++
Operační systémCross-platform
Velikost~ 200 MB
TypKnihovna
LicenceLicence Apache
webová stránkaopencv.org

OpenCV (Otevřená knihovna počítačového vidění) je knihovna programovacích funkcí zaměřeno hlavně na real-time počítačové vidění.[1] Původně vyvinutý společností Intel, to bylo později podporováno Willow Garage poté Itseez (který později získal Intel[2]). Knihovna je napříč platformami a zdarma pro použití pod open-source Licence Apache 2. Počínaje rokem 2011 obsahuje OpenCV akceleraci GPU pro operace v reálném čase[3].

Dějiny

Oficiálně zahájen v roce 1999 byl projekt OpenCV původně Intel Research iniciativa k pokroku procesor -intenzivní aplikace, součást řady projektů včetně reálný čas sledování paprsku a 3D zobrazení stěny.[4] Mezi hlavní přispěvatele do projektu patřila řada odborníků na optimalizaci v Intel Rusko a tým Intel Performance Library. V počátcích OpenCV byly popsány cíle projektu[5] tak jako:

  • Pokročilý výzkum vize tím, že poskytuje nejen otevřené, ale také optimalizovaný kód pro základní infrastrukturu vidění. Už ne Objevit Ameriku.
  • Šířte znalosti vize poskytnutím společné infrastruktury, na které by vývojáři mohli stavět, aby byl kód snadněji čitelný a přenosný.
  • Pokročilé komerční aplikace založené na vizi vytvářením přenosný, výkonově optimalizovaný kód k dispozici zdarma - s licencí, která nevyžaduje, aby byl kód otevřen nebo sám uvolněn.

První alfa verze OpenCV byla zveřejněna na internetu Konference IEEE o počítačovém vidění a rozpoznávání vzorů v roce 2000 a v letech 2001 až 2005 bylo vydáno pět beta verzí. První verze 1.0 byla vydána v roce 2006. Verze 1.1 „před vydáním“ byla vydána v říjnu 2008.

Druhé hlavní vydání OpenCV bylo v říjnu 2009. OpenCV 2 zahrnuje zásadní změny C ++ rozhraní, zaměřené na jednodušší, typově bezpečnější vzory, nové funkce a lepší implementace stávajících z hlediska výkonu (zejména na vícejádrových systémech). Oficiální verze se nyní objevují každých šest měsíců[6] a vývoj nyní provádí nezávislý ruský tým podporovaný komerčními korporacemi.

V srpnu 2012 převzala podporu OpenCV nezisková nadace OpenCV.org, která udržuje vývojáře[7] a uživatelský web.[8]

V květnu 2016 Intel podepsal dohodu o koupi Itseez,[9] přední vývojář OpenCV.[10]

V červenci 2020 OpenCV oznámila a zahájila kampaň Kickstarter pro OpenCV AI Kit, řada hardwarových modulů a doplňky k OpenCV podporující Spatial AI.

Aplikace

openFrameworks spuštění příkladu doplňku OpenCV

Aplikační oblasti OpenCV zahrnují:

Pro podporu některých z výše uvedených oblastí obsahuje OpenCV statistiku strojové učení knihovna, která obsahuje:

Programovací jazyk

OpenCV je napsán v C ++ a jeho primární rozhraní je v C ++, ale stále si zachovává méně komplexní, i když rozsáhlejší starší Rozhraní C.. Veškerý nový vývoj a algoritmy se objevují v rozhraní C ++. Jsou tam vazby Krajta, Jáva a MATLAB /OKTÁVA. API pro tato rozhraní najdete v online dokumentaci.[12] Obálky v několika programovacích jazycích byly vyvinuty, aby podpořily přijetí širším publikem. Ve verzi 3.4, JavaScript vazby pro vybranou podmnožinu funkcí OpenCV byly vydány jako OpenCV.js, které se používají pro webové platformy.[13]

Hardwarová akcelerace

Pokud knihovna najde Intel Integrované výkonnostní primitivy v systému použije tyto proprietární optimalizované rutiny k vlastní akceleraci.

A CUDA -na základě GPU rozhraní probíhá od září 2010.[14]

An OpenCL -na základě GPU rozhraní probíhá od října 2012,[15] dokumentaci k verzi 2.4.13.3 najdete na docs.opencv.org.[16]

Podpora OS

OpenCV běží na následujících desktopových operačních systémech: Okna, Linux, Operační Systém Mac, FreeBSD, NetBSD, OpenBSD. OpenCV běží na následujících mobilních operačních systémech: Android, iOS, Maemo,[17] BlackBerry 10.[18] Uživatel může získat oficiální vydání od SourceForge nebo si vezměte nejnovější zdroje z GitHub.[19] OpenCV používá CMake.

Viz také

Reference

  1. ^ Pulli, Kari; Baksheev, Anatoly; Kornyakov, Kirill; Eruhimov, Victor (1. dubna 2012). „Počítačové vidění v reálném čase s OpenCV“. Fronta. 10 (4): 40:40–40:56. doi:10.1145/2181796.2206309.
  2. ^ Intel získává Itseez: https://opencv.org/intel-acquires-itseez.html
  3. ^ "CUDA". opencv.org. Citováno 2020-10-15.
  4. ^ Adrian Kaehler; Gary Bradski (14. prosince 2016). Učení OpenCV 3: Počítačové vidění v C ++ s knihovnou OpenCV. O'Reilly Media. 26 s. ISBN  978-1-4919-3800-3.
  5. ^ Bradski, Gary; Kaehler, Adrian (2008). Učení OpenCV: Počítačové vidění s knihovnou OpenCV. O'Reilly Media, Inc. str. 6.
  6. ^ Protokoly změn OpenCV: http://code.opencv.org/projects/opencv/wiki/ChangeLog Archivováno 2013-01-15 na Wayback Machine
  7. ^ Web vývojáře OpenCV: http://code.opencv.org Archivováno 2013-01-13 v Archiv. Dnes
  8. ^ Stránka uživatele OpenCV: http://opencv.org/
  9. ^ „Intel získává počítačové vidění pro IOT, automobilový průmysl | Intel Newsroom“. Intel Newsroom. Citováno 2018-11-26.
  10. ^ „Intel získává ruskou společnost pro počítačové vidění Itseez“. Digitální zprávy východ-západ. 2016-05-31. Citováno 2018-11-26.
  11. ^ OpenCV: http://opencv.org/opencv-3-3.html
  12. ^ Rozhraní OpenCV C: http://docs.opencv.org
  13. ^ Úvod do OpenCV.js a výukových programů
  14. ^ Port Cuda GPU: http://opencv.org/platforms/cuda.html Archivováno 2016-05-21 na Wayback Machine
  15. ^ Oznámení OpenCL: http://opencv.org/opencv-v2-4-3rc-is-under-way.html
  16. ^ Reference rozhraní API pro počítačové vidění s akcelerací OpenCL: http://docs.opencv.org/modules/ocl/doc/ocl.html
  17. ^ Port Maemo: https://garage.maemo.org/projects/opencv
  18. ^ BlackBerry 10 (částečný port): https://github.com/blackberry/OpenCV
  19. ^ „GitHub - opencv / Opencv: Open Source Computer Vision Library“. 21. května 2020.