Open Source Computer Vision (OpenCV) yra atvirojo kodo kompiuterių programavimo biblioteka, sukurta palaikyti programas, kurios naudoja kompiuterinę viziją. Jis suteikia šimtus funkcijų, skirtų vaizdiniams duomenims fiksuoti, analizuoti ir manipuliuoti, ir gali pašalinti tam tikrus programuotojams kylančius rūpesčius kuriant programas, kurios remiasi kompiuterine vizija. Kai kuriose bibliotekos dalyse taip pat yra vartotojo sąsajos ir modelio atpažinimo funkcijos. OpenCV buvo naudojamas tiek praktinėse, tiek kūrybinėse srityse, įskaitant savarankiškas transporto priemones ir naujas skaitmeninio meno formas.
Programavimo bibliotekos teikia bendras funkcijas arba sudėtingas galimybes, kurias kūrėjai gali naudoti savo programose. OpenCV bibliotekoje yra šimtai funkcijų, kurios palaiko vaizdo kamerų, vaizdo failų ar kitų tipų įrenginių į kompiuterį tiekiamos vaizdinės informacijos fiksavimą, analizę ir manipuliavimą. Linijai ar kitai formai ekrane piešti gali būti naudojamos paprastos funkcijos, o sudėtingesnėse bibliotekos dalyse yra veidų aptikimo, judesio stebėjimo ir formų analizės algoritmai. Daugelis šios bibliotekos algoritmų yra susiję su specifiniu kompiuterinio matymo panaudojimu, įskaitant gaminio patikrinimą, medicininį vaizdą, robotiką, veido ir gestų atpažinimą bei žmogaus ir kompiuterio sąveiką (HCI). Kaip atvirojo kodo programavimo biblioteka, OpenCV gali būti naudojama su labai mažais apribojimais tiek komerciniuose, tiek mėgėjų projektuose.
Naudodamas OpenCV kūrėjas gali pašalinti sudėtingą ir nuobodų darbą, kurio reikia, kad kompiuterinis regėjimas veiktų patikimai, ir sutelkti dėmesį į programos kūrimą. Užuot kūręs veidų atpažinimo ir panašius algoritmus, programuotojas gali pridėti tik kelias kodo eilutes, kad programa galėtų pasiekti atitinkamą bibliotekos funkciją. Tai taip pat reiškia, kad programuotojui nereikia įvaldyti visų kompiuterinės vizijos aspektų, kad sukurtų ją naudojančią programą.
Be pagrindinių vaizdo ir vaizdo apdorojimo funkcijų, OpenCV yra antrinių modulių, skirtų palaikyti kitas programos sritis. Vienas iš šių modulių apima mašininio mokymosi algoritmus, kurie gali analizuoti ir numatyti vaizdinius modelius. HighGUI modulis suteikia vartotojo sąsajos elementus, taip pat vaizdo ir vaizdo failų saugojimo ir prieigos funkcijas.
OpenCV biblioteką galima rasti kai kurių ambicingų projektų centre. Kartu su daugybe jutiklių, kompiuterių aparatinės įrangos ir specialiai pritaikytos programinės įrangos jis varė stipriai modifikuotą sportinę transporto priemonę, kuri be žmogaus įsikišimo nuvažiavo 132 mylių (212 km) dykumos lenktynių trasą. Tačiau ne visi projektai, kurie remiasi bibliotekos ištekliais, yra tokie praktiški. Kai kurie kūrybinio kodavimo judėjimo nariai, laisva žmonių, kurie programavimą laiko išraiškos forma, nariai, naudojo biblioteką kurdami naujas skaitmeninio meno formas. Kiti įsilaužė į esamus įrenginius su kameromis ir atvėrė naujų žaidimų, interaktyviųjų kompiuterių ir net nuotolinio buvimo galimybių.