OpenCV (OpenCV) on avoimen lähdekoodin tietokoneohjelmointikirjasto, joka on kehitetty tukemaan tietokonenäköä käyttäviä sovelluksia. Se tarjoaa satoja toimintoja visuaalisen datan sieppaamiseen, analysointiin ja käsittelyyn, ja se voi poistaa osan ohjelmoijien ongelmista, kun he kehittävät tietokonevisioon perustuvia sovelluksia. Osa kirjastosta tarjoaa myös käyttöliittymän ja kuvion tunnistustoiminnot. OpenCV: tä on käytetty sekä käytännön että luovissa sovelluksissa, mukaan lukien itseohjautuvat ajoneuvot ja uudet digitaalisen taiteen muodot.
Ohjelmointikirjastot tarjoavat yhteisiä toimintoja tai monimutkaisia ominaisuuksia, joita kehittäjät voivat käyttää ohjelmissaan. OpenCV -kirjasto sisältää satoja toimintoja, jotka tukevat web -kameroiden, videotiedostojen tai muun tyyppisten laitteiden tietokoneeseen syöttämien visuaalisten tietojen sieppaamista, analysointia ja käsittelyä. Yksinkertaisia toimintoja voidaan käyttää piirtämään viiva tai muu muoto näytölle, kun taas kirjaston edistyneemmät osat sisältävät algoritmeja kasvojen havaitsemiseen, liikkeen seurantaan ja muotojen analysointiin. Monet tämän kirjaston algoritmeista liittyvät tietokonenäön tiettyihin käyttötarkoituksiin, mukaan lukien tuotetarkastus, lääketieteellinen kuvantaminen, robotiikka, kasvojen ja eleiden tunnistus sekä ihmisen ja tietokoneen vuorovaikutus (HCI). Avoimen lähdekoodin ohjelmointikirjastona OpenCV: tä voidaan käyttää hyvin vähäisin rajoituksin sekä kaupallisissa että harrastusprojekteissa.
OpenCV: n avulla kehittäjä voi poistaa osan monimutkaisesta ja työläästä työstä, joka liittyy tietokoneen visuaalisen toiminnan luotettavuuteen, ja keskittyä sovelluksen rakentamiseen. Sen sijaan, että luotaisiin algoritmeja kasvojentunnistukseen ja vastaaviin, ohjelmoija voi lisätä vain muutaman rivin koodia saadakseen ohjelman käyttää asianmukaista kirjastotoimintoa. Se tarkoittaa myös sitä, että ohjelmoijan ei tarvitse hallita kaikkia tietokonenäkökohtia rakentaakseen sitä käyttävän ohjelman.
Video- ja kuvankäsittelytoimintojen lisäksi OpenCV sisältää toissijaisia moduuleja, jotka on tarkoitettu tukemaan sovelluksen muita alueita. Yksi näistä moduuleista sisältää koneoppimisalgoritmit, jotka voivat analysoida ja ennustaa visuaalisia malleja. HighGUI -moduuli tarjoaa käyttöliittymäelementtejä sekä toimintoja video- ja kuvatiedostojen tallentamiseen ja käyttämiseen.
OpenCV -kirjasto on eräiden kunnianhimoisten hankkeiden ytimessä. Yhdessä valikoiman antureita, tietokonelaitteistoa ja räätälöityjä ohjelmistoja se käytti voimakkaasti muokattua hyötyajoneuvoa, joka kulki 132 km: n (212 mailin) aavikkokurssilla ilman ihmisen väliintuloa. Kaikki kirjaston resursseihin perustuvat hankkeet eivät kuitenkaan ole niin käytännöllisiä. Jotkut luovan koodausliikkeen jäsenistä, löyhästä ihmisten liitosta, jotka pitävät ohjelmointia ilmaisumuotona, ovat käyttäneet kirjastoa uusien digitaalisen taiteen muotojen luomiseen. Toiset ovat hakkeroineet olemassa olevia kameroita sisältäviä laitteita ja avanneet uusia mahdollisuuksia pelaamiseen, vuorovaikutteiseen tietojenkäsittelyyn ja jopa läsnäoloon.