Open Source Computer Vision Library je puni naziv za OpenCV, knjižnicu programskih funkcija i open source alata za korištenje na više platformi u obradi slike računalnog vida u stvarnom vremenu i praćenju OpenCV-a. Razvijen na prijelazu u 21. stoljeće, u početku je bio namijenjen za trodimenzionalne (3-D) zidove i praćenje zraka. Koristeći kreativno kodiranje, OpenCV može ponuditi okvir razvojnim programerima koda koji se temelji na viziji optimiziran za performanse u C ili C++ sučelju u početku, iako je dostupan na nekoliko jezika, te je prilagodljiv za daljinsku upotrebu na ručnim uređajima. Sposoban je za snimanje video datoteka u stvarnom vremenu, osnovne video konfiguracije, detekciju objekata te praćenje kretanja i boja, među ostalim funkcijama. OpenCV je sposoban za kalibracije kamere jer može pronaći i pratiti kalibracije kamere i postaviti stereo korespondenciju na video kamere.
Funkcija CalcGlobalOrientation za praćenje OpenCV izračunava orijentaciju kretanja određene regije u kombinaciji s drugom naredbom CalcMotionGradient i stvara povijest kretanja i vremensku oznaku za praćenje smjera kretanja, vraćajući rezultate u stupnjevima i bilježeći naknadne pomake. Konačni rezultat bio bi zbroj izvorne orijentacije i kutova pomaka. Čitanje i pisanje slikovnih datoteka i njihovo forsiranje u trokanalnu sliku u boji, datoteke se mogu mijenjati, izravno i neizravno im se može pristupiti i pretvoriti u slike u sivim tonovima ili u boji bajtova slike.
Optički tok slika može se usmjeravati pomoću praćenja podudaranja blokova, a svaki piksel se izračunava i daje upute u toku. Moguća je dodjela i puštanje slika za jednokanalne bajt slike ili trokanalne plutajuće slike za postavljanje regije od interesa ili kloniranje slike. OpenCV omogućuje hvatanje slika okvira iz video sekvence iz datoteke s nekoliko kamera istovremeno hvatanjem jedne slike sa svake i zatim dohvaćanjem od svih, za stvaranje i uređivanje novih video tokova.
Praćenje lica OpenCV vrši se pomoću njegovih Camshift funkcija. Ova funkcija implementira algoritam za praćenje objekta, pronalazi središte objekta, stvara histogram boja, izračunava vjerojatnost lica, zatim pomiče lokaciju pravokutnika lica u svakom video kadru i vrši prilagodbe izračunavanjem veličine i kuta. Koncentrira najsvjetlije piksele preko centriranog lica i koristi skalu za prilagođavanje manjim licima u sljedećim kadrovima ako se slika povlači.
Mogućnosti praćenja OpenCV koriste se u mnogim aplikacijama. Od prepoznavanja lica do prepoznavanja gesta, mobilne robotike, programa interakcije čovjeka i računala i stereopse, koja stvara stereo percepciju dubine vida pomoću dvije kamere, koristeći praćenje objekata, boja i pokreta. OpenCV također ima knjižnice statističkog strojnog učenja koje sadrže module za učenje stabla odluka, algoritme za praćenje maksimiziranja očekivanja, stabla za povećanje gradijenta i funkcionalne module umjetnih neuronskih mreža.