Mis on OpenCV?

Open Source Computer Vision (OpenCV) on avatud lähtekoodiga arvutiprogrammide raamatukogu, mis on välja töötatud arvutinägemust kasutavate rakenduste toetamiseks. See pakub sadu funktsioone visuaalsete andmete jäädvustamiseks, analüüsimiseks ja manipuleerimiseks ning võib kõrvaldada osa programmeerijate probleemidest, millega arvutinägemisel põhinevate rakenduste arendamisel kokku puutuvad. Osa raamatukogust pakuvad ka kasutajaliidest ja mustrituvastusfunktsioone. OpenCV-d on kasutatud nii praktilistes kui ka loomingulistes rakendustes, sealhulgas isejuhtivates sõidukites ja uutes digitaalse kunsti vormides.

Programmeerimisteegid pakuvad ühiseid funktsioone või keerulisi võimalusi, mida arendajad saavad oma programmides kasutada. OpenCV teek sisaldab sadu funktsioone, mis toetavad veebikaamerate, videofailide või muud tüüpi seadmete abil arvutisse söödetud visuaalse teabe hõivamist, analüüsi ja manipuleerimist. Lihtsaid funktsioone võib kasutada ekraanile joone või muu kujundi joonistamiseks, samas kui teegi täpsemad osad sisaldavad algoritme nägude tuvastamiseks, liikumise jälgimiseks ja kujundite analüüsimiseks. Paljud selle raamatukogu algoritmid on seotud arvutinägemise konkreetsete kasutusviisidega, sealhulgas tootekontrolli, meditsiinilise pildistamise, robootika, näo- ja žestide tuvastamise ning inimese ja arvuti interaktsiooniga (HCI). Avatud lähtekoodiga programmeerimisraamatukoguna saab OpenCV-d väga väheste piirangutega kasutada nii ärilistes kui ka hobiprojektides.

OpenCV abil saab arendaja kõrvaldada osa keerulisest ja tüütust tööst, mis läheb arvutinägemise töökindlaks muutmiseks ja rakenduse loomisele keskendumiseks. Selle asemel, et luua näotuvastuse jms algoritme, saab programmeerija lisada vaid mõne koodirea, et programm pääseks juurde vastavale raamatukogu funktsioonile. See tähendab ka seda, et programmeerija ei pea seda kasutava programmi koostamiseks valdama kõiki arvutinägemise aspekte.

Lisaks põhilistele video- ja pilditöötlusfunktsioonidele sisaldab OpenCV sekundaarseid mooduleid, mis on mõeldud rakenduse muude valdkondade toetamiseks. Üks neist moodulitest sisaldab masinõppe algoritme, mis suudavad visuaalseid mustreid analüüsida ja ennustada. HighGUI moodul pakub nii kasutajaliidese elemente kui ka funktsioone video- ja pildifailide salvestamiseks ja juurdepääsuks.

OpenCV raamatukogu võib leida mõne erineva ambitsioonika projekti keskmes. Koos hulga andurite, arvutiriistvara ja kohandatud tarkvaraga andis see jõuallikaks tugevalt modifitseeritud sportsõiduk, mis navigeeris 132-miilisel (212 km) pikkusel kõrbes võidusõidurajal ilma inimese sekkumiseta. Kuid mitte kõik raamatukogu ressurssidele tuginevad projektid pole nii praktilised. Mõned loomingulise kodeerimisliikumise liikmed, mis on programmeerimist väljendusvormina nägevate inimeste konföderatsioon, on kasutanud raamatukogu uute digitaalse kunsti vormide loomiseks. Teised on häkkinud olemasolevaid kaameraid sisaldavaid seadmeid ja avanud uusi võimalusi mängimiseks, interaktiivseks andmetöötluseks ja isegi telekohalolekuks.