Zadaci računarskog vida obuhvataju metode za sticanje, obradu, analizu i razumevanje digitalnih slika, i ekstrakciju visokodimenzionalnih podataka iz stvarnog sveta kako bi se proizvele numeričke ili simboličke informacije, npr. u formi odluka.[1][2][3][4] Razumevanje u ovom kontekstu znači transformaciju vizuelnih slika u opise koji imaju smisla za misaone procese i mogu da izazovu odgovarajuću akciju. Ovo razumevanje slike može se posmatrati kao razdvajanje simboličkih informacija od podataka slike korišćenjem modela konstruisanih uz pomoć geometrije, fizike, statistike i teorije učenja.

Naučna disciplina računarskog vida bavi se teorijom koja stoji iza veštačkih sistema koji izvlače informacije iz slika. Podaci o slici mogu imati različite oblike, kao što su video sekvence, prikazi sa više kamera, višedimenzionalni podaci sa 3D skenera, 3D skupovi tačaka sa LiDaR senzora ili medicinski uređaji za skeniranje. Tehnološka disciplina računarskog vida nastoji da primeni svoje teorije i modele na konstrukciju sistema računarskog vida.

Pod-domeni računarskog vida uključuju rekonstrukciju scena, detekciju objekata, detekciju događaja, prepoznavanje aktivnosti, video praćenje, prepoznavanje objekata, 3D procenu položaja, učenje, indeksiranje, procenu pokreta, 3D modeliranje scene i restauraciju slike.

Usvajanje tehnologije računarskog vida može biti mukotrpno za organizacije jer za to ne postoji jedinstveno rešenje. Postoji vrlo malo kompanija koje obezbeđuju jedinstvenu i distribuiranu platformu ili operativni sistem gde se aplikacije računarskog vida mogu lako primeniti.

Definicija uredi

Računarski vid je interdisciplinarno polje koje se bavi načinom na koji se računari mogu napraviti da steknu razumevanje na visokom nivou iz digitalnih slika ili video zapisa. Iz perspektive inženjerstva, on nastoji da automatizuje zadatke koje ljudsko čulo vida može da uradi.[5][6][7] "Računarski vid se bavi automatskim izdvajanjem, analizom i razumevanjem korisnih informacija iz jedne slike ili niza slika. To uključuje razvoj teorijske i algoritamske osnove za postizanje automatskog vizuelnog razumevanja."[8] Kao naučna disciplina, računarski vid se bavi teorijom koja stoji iza veštačkih sistema koji izvlače informacije iz slika. Podaci o slici mogu imati različite oblike, kao što su video sekvence, prikazi sa više kamera ili višedimenzionalni podaci sa medicinskih skenera.[9] Kao tehnološka disciplina, računarski vid nastoji da primeni svoje teorije i modele za konstrukciju sistema računarskog vida. Mašinski vid se odnosi na disciplinu sistemskog inženjeringa, posebno u kontekstu automatizacije fabrika. U novije vreme termini računarski vid i mašinski vid su se u većoj meri približili.[10]

Istorija uredi

Kasnih 1960-ih, računarski vid je počeo na univerzitetima koji su bili pioniri u veštačkoj inteligenciji. Trebalo je da oponaša ljudsko čulo vida, kao odskočna daska za kreiranje robota sa inteligentnim ponašanjem.[11] Godine 1966. verovalo se da se to može postići kroz letnji projekat diplomskih studija[12] tako što bi se kamera priključila na računar i dala mu da „opiše šta je videla“.[13]

Ono što je računarski vid razlikovalo od preovlađujuće oblasti digitalne obrade slika u to vreme bila je želja da se iz slika izdvoji trodimenzionalna struktura sa ciljem postizanja potpunog razumevanja scene. Studije iz 1970-ih formirale su ranu osnovu za mnoge algoritme računarskog vida koji postoje danas, uključujući izdvajanje ivica iz slika, označavanje linija, nepoliedarsko i poliedarsko modeliranje, predstavljanje objekata kao međuveze manjih struktura, optički tok i procena kretanja.[11]

Sledeće decenije bile su studije zasnovane na rigoroznijoj matematičkoj analizi i kvantitativnim aspektima računarskog vida. To uključuje koncept skaliranog prostora, zaključivanje oblika iz različitih znakova kao što su senčenje, tekstura i fokus, i konturni modeli poznati kao zmije. Istraživači su takođe shvatili da se mnogi od ovih matematičkih koncepata mogu tretirati unutar istog okvira optimizacije kao regularizacija i Markovljeva nasumična polja.[14] Do 1990-ih, neke od prethodnih istraživačkih tema postale su aktivnije od drugih. Istraživanje projektivnih 3D rekonstrukcija dovelo je do boljeg razumevanja kalibracije kamere. Sa pojavom metoda optimizacije za kalibraciju kamere, uvidelo se da su mnoge ideje već istražene u teoriji podešavanja paketa iz oblasti fotogrametrije. Ovo je dovelo do metoda za retke 3D rekonstrukcije scena sa više slika. Napredak je postignut u problemu guste stereo korespondencije i daljim stereo tehnikama sa više prikaza. Istovremeno, varijacije rezanja grafikona su korišćene za rešavanje segmentacije slike. Ova decenija je takođe označila prvi put da su tehnike statističkog učenja korišćene u praksi za prepoznavanje lica na slikama. Krajem 1990-ih došlo je do značajne promene sa povećanom interakcijom između polja računarske grafike i računarskog vida. Ovo je uključivalo renderovanje zasnovano na slici, preoblikovanje slike, interpolaciju prikaza, spajanje panoramskih slika i rano prikazivanje svetlosnog polja.[11]

Nedavni rad je doživeo ponovnu pojavu metoda zasnovanih na karakteristikama, koje se koriste zajedno sa tehnikama mašinskog učenja i složenim okvirima za optimizaciju.[15][16] Napredak tehnika dubokog učenja doneo je dalji život polju računarskog vida. Tačnost algoritama dubokog učenja na nekoliko referentnih skupova podataka računarskog vida za zadatke koji se kreću od klasifikacije,[17] segmentacije i optičkog toka nadmašila je prethodne metode.[18]

Povezane oblasti uredi

Fizika čvrstog stanja uredi

Fizika čvrstog stanja je još jedna oblast koja je usko povezana sa računarskim vidom. Većina sistema računarskog vida oslanja se na senzore slike, koji detektuju elektromagnetno zračenje, koje je obično u obliku vidljive ili infracrvene svetlosti. Senzori su dizajnirani pomoću kvantne fizike. Proces kojim svetlost stupa u interakciju sa površinama objašnjava se pomoću fizike. Fizika objašnjava ponašanje optike koja je suštinski deo većine sistema za snimanje. Sofisticirani senzori slike zahtevaju čak i kvantnu mehaniku da bi pružili potpuno razumevanje procesa formiranja slike.[11] Takođe, različiti problemi merenja u fizici mogu se rešiti korišćenjem računarskog vida, na primer, kretanje u tečnostima.

Neurobiologija uredi

Neurobiologija je u velikoj meri uticala na razvoj algoritama računarskog vida. Tokom prošlog veka, bilo je opsežno proučavanje očiju, neurona i moždanih struktura posvećenih obradi vizuelnih stimulansa i kod ljudi i kod raznih životinja. Ovo je dovelo do grubog, ali zamršenog opisa kako prirodno čulo vida funkcioniše u cilju rešavanja određenih zadataka u vezi sa vidom. Ovi rezultati su doveli do pod-oblasti u računarskom vidu gde su veštački sistemi dizajnirani da oponašaju obradu i ponašanje bioloških sistema na različitim nivoima složenosti. Takođe, neke od metoda zasnovanih na učenju razvijene u okviru računarskog vida (npr. neuronska mreža i analiza i klasifikacija slika i karakteristika zasnovanih na dubokom učenju) imaju svoju pozadinu u neurobiologiji. Neokognitron, neuronska mreža koju je 1970-ih razvio Kunihiko Fukušima, rani je primer računarskog vida koji uzima direktnu inspiraciju iz neurobiologije, posebno primarnog vizuelnog korteksa.

Neki pravci istraživanja računarskog vida su usko povezani sa proučavanjem biološkog vida – zaista, kao što su mnogi pravci istraživanja veštačke inteligencije usko povezani sa istraživanjem ljudske inteligencije i upotrebom uskladištenog znanja za tumačenje, integraciju i korišćenje vizuelnih informacija. Oblast biološkog vida proučava i modelira fiziološke procese iza vizuelne percepcije kod ljudi i drugih životinja. Računarski vid, s druge strane, razvija i opisuje algoritme implementirane u softver i hardver iza sistema veštačkog vida. Interdisciplinarna razmena između biološke i kompjuterske vizije pokazala se plodnom za obe oblasti.[19]

Obrada signala uredi

Još jedno polje vezano za računarski vid je obrada signala. Mnoge metode za obradu signala sa jednom promenljivom, tipično vremenskih signala, mogu se na prirodan način proširiti na obradu signala sa dve promenljive ili signala sa više varijabli u kompjuterskom vidu. Međutim, zbog specifične prirode slika, postoji mnogo metoda razvijenih u računarskom vidu koje nemaju pandan u obradi signala sa jednom promenljivom. Zajedno sa višedimenzionalnošću signala, ovo definiše pod-oblast u obradi signala kao deo računarskog vida.

Robotska navigacija uredi

Robotska navigacija se ponekad bavi autonomnim planiranjem putanje ili promišljanjem robotskih sistema za navigaciju kroz okruženje.[20] Za navigaciju kroz njih potrebno je detaljno razumevanje ovih okruženja. Informacije o životnoj sredini može da obezbedi računarski sistem za vid, koji deluje kao senzor vida i pruža informacije visokog nivoa o okruženju i robotu.

Ostale oblasti uredi

Pored gore navedenih stavova o računarskom vidu, mnoge od srodnih istraživačkih tema mogu se proučavati i sa čisto matematičke tačke gledišta. Na primer, mnoge metode u računarskom vidu su zasnovane na statistici, optimizaciji ili geometriji. Konačno, značajan deo oblasti posvećen je aspektu implementacije računarskog vida; kako se postojeće metode mogu realizovati u različitim kombinacijama softvera i hardvera, ili kako se ove metode mogu modifikovati da bi se dobila brzina obrade bez previše gubitka performansi. Računarski vid se takođe koristi u modnoj e-trgovini, upravljanju zalihama, pretraživanju patenata, nameštaju i industriji lepote.

Razlike uredi

Oblasti koje su najbliže računarskom vidu su obrada slike, analiza slike i mašinski vid. Postoji značajno preklapanje u rasponu tehnika i aplikacija koje ove oblasti pokrivaju. To implicira da su osnovne tehnike koje se koriste i razvijaju u ovim oblastima slične, što se može protumačiti da postoji samo jedno polje sa različitim nazivima. S druge strane, čini se da je neophodno da se istraživačke grupe, naučni časopisi, konferencije i kompanije predstave ili plasiraju kao osobe koje pripadaju jednoj od ovih oblasti i, stoga, imaju različite karakterizacije koje razlikuju svaku od oblasti od ostalih. predstavljeno. U obradi slike, ulaz je slika, a izlaz je takođe slika, dok se u računarskom vidu slika ili video uzimaju kao ulaz i izlaz može biti poboljšana slika, razumevanje sadržaja slike ili čak ponašanje računarskog sistema zasnovanog na takvom razumevanju.

Računarska grafika proizvodi slikovne podatke iz 3D modela, a kompjuterski vid često proizvodi 3D modele iz podataka slike.[21] Takođe postoji trend ka kombinaciji ove dve discipline, na primer, kako se istražuje u proširenoj stvarnosti.

Čini se da su sledeće karakteristike relevantne, ali ih ne treba uzimati kao univerzalno prihvaćene:

  • Obrada slike i analiza slike imaju tendenciju da se fokusiraju na 2D slike, kako da transformišu jednu sliku u drugu, na primer, operacijama u pikselima kao što je poboljšanje kontrasta, lokalnim operacijama kao što je ekstrakcija ivica ili uklanjanje šuma, ili geometrijske transformacije kao što je rotiranje slike. Ova karakterizacija implicira da obrada/analiza slike ne zahteva pretpostavke niti proizvodi interpretacije sadržaja slike.
  • Računarski vid uključuje 3D analizu iz 2D slika. Ovo analizira 3D scenu projektovanu na jednu ili više slika, na primer, kako rekonstruisati strukturu ili druge informacije o 3D sceni sa jedne ili više slika. Računarski vid se često oslanja na manje ili više složene pretpostavke o sceni prikazanoj na slici.
  • Mašinski vid je proces primene niza tehnologija i metoda za obezbeđivanje automatske inspekcije zasnovane na slici, kontrolu procesa i navođenje robota[22] u industrijskim primenama.[19] Mašinski vid ima tendenciju da se fokusira na aplikacije, uglavnom u proizvodnji, na primer, robote zasnovane na viziji i sisteme za inspekciju, merenje ili biranje na osnovu vida (kao što je biranje smeća[23]). Ovo implicira da su tehnologije senzora slike i teorija upravljanja često integrisane sa obradom podataka slike za kontrolu robota i da je obrada u realnom vremenu naglašena putem efikasnih implementacija u hardveru i softveru. To takođe podrazumeva da spoljni uslovi kao što je osvetljenje mogu biti i često su više kontrolisani u mašinskom vidu nego u opštem računarskom vidu, što može omogućiti korišćenje različitih algoritama.
  • Postoji i oblast koja se zove oslikavanje koja se prvenstveno fokusira na proces proizvodnje slika, ali se ponekad bavi i obradom i analizom slika. Na primer, medicinsko snimanje uključuje značajan rad na analizi slikovnih podataka u medicinskim aplikacijama.
  • Konačno, prepoznavanje obrazaca je polje koje koristi različite metode za izdvajanje informacija iz signala uopšte, uglavnom zasnovano na statističkim pristupima i veštačkim neuronskim mrežama.[24] Značajan deo ove oblasti posvećen je primeni ovih metoda na slikovne podatke.

Fotogrametrija se takođe preklapa sa računarskim vidom, na primer, stereofotogrametrija naspram računarskog stereo vida.

Primena uredi

Primene se kreću od zadataka kao što su industrijski sistemi mašinskog vida koji, recimo, pregledaju boce koje prolaze na proizvodnoj liniji, do istraživanja veštačke inteligencije i računara ili robota koji mogu da razumeju svet oko sebe. Polja računarskog i mašinskog vida se značajno preklapaju. Računarski vid pokriva osnovnu tehnologiju automatske analize slike koja se koristi u mnogim oblastima. Mašinski vid se obično odnosi na proces kombinovanja automatizovane analize slike sa drugim metodama i tehnologijama kako bi se obezbedila automatska kontrola i navođenje robota u industrijskim aplikacijama. U mnogim aplikacijama računarskog vida, računari su unapred programirani da reše određeni zadatak, ali metode zasnovane na učenju sada postaju sve češće. Primeri primene računarskog vida uključuju sisteme za:

  • Automatska inspekcija, na primer, u proizvodnim aplikacijama;
  • Pomaganje ljudima u zadacima identifikacije, npr. sistem identifikacije vrsta;[25]
  • Kontrolisanje procesa, na primer, industrijski roboti;
  • Otkrivanje događaja, na primer, za vizuelni nadzor ili brojanje ljudi, na primer, u restoranskoj industriji;
  • Interakcija, na primer, kao ulaz za uređaj za interakciju računar-čovek;
  • Modeliranje objekata ili okruženja, na primer, analiza medicinske slike ili topografsko modeliranje;
  • Navigacija, na primer, autonomnim vozilom ili mobilnim robotom;
  • Organizovanje informacija, na primer, za indeksiranje baza podataka slika i sekvenci slika.
  • Praćenje površina ili ravni u 3D koordinatama za omogućavanje doživljaja proširene stvarnosti.

Medicina uredi

Jedno od najistaknutijih oblasti primene je medicinski računarski vid, ili obrada medicinske slike, koju karakteriše ekstrakcija informacija iz podataka slike radi dijagnostikovanja pacijenta. Primer za to je otkrivanje tumora, arterioskleroze ili drugih malignih promena i raznih zubnih patologija; merenja dimenzija organa, protoka krvi itd. Takođe podržava medicinska istraživanja pružanjem novih informacija: na primer, o strukturi mozga ili kvalitetu medicinskih tretmana. Primene kompjuterskog vida u medicinskoj oblasti takođe uključuju poboljšanje slika koje tumače ljudi – ultrazvučne slike ili rendgenske slike, na primer – da bi se smanjio uticaj buke.

Mašinski vid uredi

Druga oblast primene računarskog vida je u industriji, koja se ponekad naziva mašinski vid, gde se informacije izdvajaju u svrhu podrške proizvodnom procesu. Jedan primer je kontrola kvaliteta gde se detalji ili finalni proizvodi automatski proveravaju kako bi se pronašli nedostaci. Jedno od najzastupljenijih polja za takvu inspekciju je industrija vafera u kojoj se svaka pojedinačna pločica meri i proverava u pogledu netačnosti ili defekata kako bi se sprečilo da računarski čip dođe na tržište na neupotrebljiv način. Drugi primer je merenje položaja i orijentacije detalja koje treba da pokupi robotska ruka. Mašinski vid se takođe u velikoj meri koristi u poljoprivrednim procesima za uklanjanje nepoželjnih namirnica iz rasutih materijala, proces koji se naziva optičko sortiranje.[26]

Vojska uredi

Vojne primene su verovatno jedna od najvećih oblasti računarskog vida. Očigledni primeri su otkrivanje neprijateljskih vojnika ili vozila i navođenje projektila. Napredniji sistemi za navođenje projektila šalju projektil na područje, a ne na određenu metu, a izbor cilja se vrši kada projektil stigne do područja na osnovu lokalno dobijenih podataka o slici. Savremeni vojni koncepti, kao što je „svesnost na bojnom polju“, podrazumevaju da različiti senzori, uključujući senzore slike, pružaju bogat skup informacija o sceni borbe koje se mogu koristiti za podršku strateškim odlukama. U ovom slučaju, automatska obrada podataka se koristi za smanjenje složenosti i za spajanje informacija sa više senzora radi povećanja pouzdanosti.

Autonomna vozila uredi

Jedna od novijih oblasti primene su autonomna vozila, koja uključuju podmornice, kopnena vozila (mali roboti sa točkovima, automobili ili kamioni), letelice i bespilotne letelice (UAV). Nivo autonomije se kreće od potpuno autonomnih (bespilotnih) vozila do vozila u kojima sistemi zasnovani na kompjuterskom vidu podržavaju vozača ili pilota u različitim situacijama. Potpuno autonomna vozila obično koriste računarski vid za navigaciju, na primer, da znaju gde se nalaze ili da mapiraju svoje okruženje (SLAM), za otkrivanje prepreka. Takođe se može koristiti za otkrivanje određenih događaja specifičnih za zadatak, na primer, bespilotna letelica koja traži šumske požare. Primeri pratećih sistema su sistemi upozorenja na prepreke u automobilima, kamere i LiDAR senzori u vozilima i sistemi za autonomno sletanje aviona. Nekoliko proizvođača automobila demonstriralo je sisteme za autonomnu vožnju automobila. Postoji veliki broj primera vojnih autonomnih vozila u rasponu od naprednih projektila do bespilotnih letelica za izviđačke misije ili navođenje projektila. Istraživanja svemira se već vrše sa autonomnim vozilima koja koriste računarski vid, na primer, NASA-in Kjuriositi i CNSA-in Jutu-2 rover.

Taktilne povratne informacije uredi

Materijali kao što su guma i silicijum se koriste za kreiranje senzora koji omogućavaju primene kao što su otkrivanje mikro talasa i kalibracija robotskih ruku. Guma se može koristiti da bi se napravio kalup koji se može staviti preko prsta, unutar ovog kalupa bi bilo više merača naprezanja. Kalup za prste i senzori mogu se zatim postaviti na mali list gume koji sadrži niz gumenih iglica. Korisnik tada može nositi kalup za prste i pratiti površinu. Računar tada može da pročita podatke sa merača naprezanja i izmeri da li se jedan ili više iglica gura nagore. Ako se igla gura nagore, računar to može prepoznati kao nesavršenost površine. Ova vrsta tehnologije je korisna za dobijanje tačnih podataka o nesavršenostima na veoma velikoj površini.[27] Još jedna varijacija ovog senzora za prste su senzori koji sadrže kameru okačenu u silicijum. Silicijum formira kupolu oko spoljašnje strane kamere i ugrađeni u silicijum su tačkasti markeri koji su podjednako raspoređeni. Ove kamere se zatim mogu postaviti na uređaje kao što su robotske ruke kako bi se omogućilo računaru da prima visoko precizne taktilne podatke.[28]

Ostale oblasti primene uključuju:

  • Podrška kreiranju vizuelnih efekata za bioskop i emitovanje, na primer, praćenje kamere.
  • Nadzor.
  • Otkrivanje pospanosti vozača[29][30][31]
  • Praćenje i brojanje organizama u biološkim naukama[32]

Tipični zadaci uredi

Svaka od gore opisanih oblasti primene koristi niz zadataka računarskog vida; manje ili više dobro definisani problemi merenja ili problemi obrade, koji se mogu rešiti korišćenjem raznih metoda. Neki primeri tipičnih zadataka računarskog vida su predstavljeni u nastavku.

Zadaci računarskog vida obuhvataju metode za sticanje, obradu, analizu i razumevanje digitalnih slika, i ekstrakciju visokodimenzionalnih podataka iz stvarnog sveta kako bi se proizvele numeričke ili simboličke informacije, na primer, u obliku odluka.[1][2][3][4] Razumevanje u ovom kontekstu znači transformaciju vizuelnih slika u opise sveta koji se mogu povezati sa drugim misaonim procesima i izazvati odgovarajuću akciju. Ovo razumevanje slike može se posmatrati kao razdvajanje simboličkih informacija od podataka slike korišćenjem modela konstruisanih uz pomoć geometrije, fizike, statistike i teorije učenja.[33]

Prepoznavanje uredi

Klasičan problem u kompjuterskom vidu, obradi slike i mašinskom vidu je određivanje da li podaci o slici sadrže neki specifičan objekat, karakteristiku ili aktivnost. U literaturi su opisane različite vrste problema prepoznavanja.[34]

  • Prepoznavanje objekata (naziva se i klasifikacija objekata) – može se prepoznati jedan ili nekoliko unapred specificiranih ili naučenih objekata ili klasa objekata, obično zajedno sa njihovim 2D pozicijama na slici ili 3D pozama u sceni. Blipar, Gugl naočare i LajkDet pružaju samostalne programe koji ilustruju ovu funkcionalnost.
  • Identifikacija – prepoznaje se pojedinačna instanca objekta. Primeri uključuju identifikaciju lica ili otiska prsta određene osobe, identifikaciju rukom ispisanih cifara ili identifikaciju određenog vozila.
  • Detekcija – podaci o slici se skeniraju za određene objekte zajedno sa njihovom lokacijom. Primeri uključuju otkrivanje prepreke u vidnom polju automobila i moguće abnormalne ćelije ili tkiva na medicinskim slikama ili detekciju vozila u automatskom sistemu naplate putarine. Detekcija zasnovana na relativno jednostavnim i brzim proračunima se ponekad koristi za pronalaženje manjih oblasti zanimljivih podataka slike koji se mogu dalje analizirati računarski zahtevnijim tehnikama da bi se proizvela ispravna interpretacija.

Trenutno su najbolji algoritmi za takve zadatke zasnovani na konvolucionim neuronskim mrežama. Ilustraciju njihovih mogućnosti daje ImidžNet; ovo je merilo za klasifikaciju i detekciju objekata, sa milionima slika i 1000 klasa objekata korišćenih u takmičenju.[35] Performanse konvolucionih neuronskih mreža na ImidžNet testovima su sada bliske onima koje imaju ljudi.[35] Najbolji algoritmi se i dalje bore sa objektima koji su mali ili tanki, kao što je mali mrav na stabljici cveta ili osoba koja drži pero u ruci. Takođe imaju problema sa slikama koje su izobličene filterima (sve češći fenomen kod modernih digitalnih fotoaparata). Nasuprot tome, takve slike retko smetaju ljudima. Ljudi, međutim, imaju tendenciju da imaju problema sa drugim problemima. Na primer, oni nisu dobri u klasifikovanju objekata u specifičnije klase, kao što je određena rasa pasa ili vrsta ptica, dok konvolucione neuronske mreže to s lakoćom rešavaju.

Postoji nekoliko specijalizovanih zadataka zasnovanih na prepoznavanju, kao što su:

  • Preuzimanje slika zasnovano na sadržaju – pronalaženje svih slika u većem skupu slika koje imaju specifičan sadržaj. Sadržaj se može specificirati na različite načine, na primer u smislu sličnosti u odnosu na ciljnu sliku (daj mi sve slike slične slici A) korišćenjem tehnika pretrage obrnutih slika, ili u smislu kriterijuma za pretragu visokog nivoa datih kao unos teksta (dajte mi sve slike koje sadrže mnogo kuća, snimljene su tokom zime i u njima nema automobila).
  • Procena poze – procena položaja ili orijentacije određenog objekta u odnosu na kameru. Primer aplikacije za ovu tehniku bi bio pomoć robotskoj ruci u preuzimanju predmeta sa pokretne trake u situaciji na montažnoj liniji ili biranju delova iz kante.
  • Optičko prepoznavanje znakova (OCR) – identifikacija znakova na slikama štampanog ili rukom pisanog teksta, obično sa ciljem da se tekst kodira u formatu koji je pogodniji za uređivanje ili indeksiranje (npr. ASCII). Srodni zadatak je čitanje 2D kodova kao što su matrica podataka i KR kodovi.
  • Prepoznavanje lica – tehnologija koja omogućava uparivanje lica u digitalnim slikama ili video okvirima sa bazom podataka lica, koja se sada široko koristi za zaključavanje lica na mobilnom telefonu, pametno zaključavanje vrata, itd.[36]
  • Prepoznavanje emocija – podskup prepoznavanja lica, prepoznavanje emocija se odnosi na proces klasifikacije ljudskih emocija. Psiholozi ipak upozoravaju da se unutrašnje emocije ne mogu pouzdano otkriti sa lica.[37]
  • Tehnologija prepoznavanja oblika (SRT) u sistemima koji razlikuju ljudska bića (obrasci glave i ramena) od objekata.
  • Prepoznavanje ljudske aktivnosti – bavi se prepoznavanjem aktivnosti iz serije video kadrova, na primer, ako osoba uzima predmet ili hoda.

Analiza pokreta uredi

Nekoliko zadataka se odnosi na procenu pokreta gde se sekvenca slike obrađuje da bi se proizvela procena brzine bilo u svakoj tački na slici ili u 3D sceni ili čak kamere koja proizvodi slike. Primeri takvih zadataka su:

  • Egomocija – određivanje 3D krutog kretanja (rotacije i translacije) kamere iz sekvence slike koju proizvodi kamera.
  • Praćenje – praćenje kretanja (obično) manjeg skupa interesnih tačaka ili objekata (npr. vozila, objekata, ljudi ili drugih organizama[32]) u sekvenci slike. Ovo ima široku industrijsku primenu jer se većina mašina sa visokim pogonom može nadgledati na ovaj način.
  • Optički tok – da se odredi, za svaku tačku na slici, kako se ta tačka kreće u odnosu na ravan slike, odnosno njeno prividno kretanje. Ovo kretanje je rezultat kako se odgovarajuća 3D tačka kreće u sceni i kako se kamera kreće u odnosu na scenu.

Rekonstrukcija scena uredi

Uz jednu ili (obično) više slika scene, ili video snimka, rekonstrukcija scene ima za cilj izračunavanje 3D modela scene. U najjednostavnijem slučaju, model može biti skup 3D tačaka. Sofisticiranije metode proizvode kompletan 3D model površine. Pojava 3D slika koje ne zahtevaju kretanje ili skeniranje i srodnih algoritama obrade omogućavaju brz napredak u ovoj oblasti. 3D osećaj zasnovan na mreži može se koristiti za dobijanje 3D slika iz više uglova. Algoritmi su sada dostupni za spajanje više 3D slika u skupove tačaka i 3D modele.[21]

Restauracija slika uredi

Restauracija slike se koristi u slučajevima kada je originalna slika degradirana ili oštećena zbog nekih spoljnih faktora kao što su pogrešno pozicioniranje sočiva, smetnje u prenosu, slabo osvetljenje ili zamućenje pokreta itd. što se naziva šumom. Kada se slike degradiraju ili oštete, informacije koje treba izvući iz njih se takođe oštećuju. Zbog toga moramo da povratimo ili vratimo sliku kako je trebalo da bude. Cilj restauracije slike je uklanjanje šuma (šum senzora, zamućenje pokreta, itd.) sa slika. Najjednostavniji mogući pristup za uklanjanje buke su različiti tipovi filtera kao što su niskopropusni filteri ili srednji filteri. Sofisticiranije metode pretpostavljaju model na osnovu lokalne strukture slike, da bi se razlikovale od šuma. Prvo analiziranjem podataka o slici u smislu lokalnih struktura slike, kao što su linije ili ivice, a zatim kontrolisanjem filtriranja na osnovu lokalnih informacija iz koraka analize, obično se postiže bolji nivo uklanjanja šuma u ​​poređenju sa jednostavnijim pristupima.

Sistemske metode uredi

Organizacija sistema računarskog vida u velikoj meri zavisi od primene. Neki sistemi su samostalne aplikacije koje rešavaju konkretan problem merenja ili detekcije, dok drugi čine podsistem većeg dizajna koji, na primer, sadrži i podsisteme za upravljanje mehaničkim aktuatorima, planiranje, informacione baze podataka, mašinski interfejsi itd. Specifična implementacija sistema računarskog vida zavisi i od toga da li je njegova funkcionalnost unapred određena ili se neki deo može naučiti ili modifikovati tokom rada. Mnoge funkcije su jedinstvene za aplikaciju. Međutim, postoje tipične funkcije koje se nalaze u mnogim sistemima računarskog vida.

  • Akvizicija slike – Digitalnu sliku proizvodi jedan ili više senzora slike, koji, pored različitih tipova kamera osetljivih na svetlost, uključuju senzore dometa, uređaje za tomografiju, radare, ultrazvučne kamere, itd. U zavisnosti od tipa senzora, rezultirajući slikovni podaci su obična 2D slika, 3D volumen ili sekvenca slike. Vrednosti piksela obično odgovaraju intenzitetu svetlosti u jednom ili nekoliko spektralnih opsega (sive slike ili slike u boji), ali takođe mogu biti povezane sa različitim fizičkim merama, kao što su dubina, apsorpcija ili refleksija zvučnih ili elektromagnetnih talasa, ili nuklearna magnetna rezonanca. [26]
  • Predprocesiranje – Pre nego što se metoda računarskog vida može primeniti na slikovne podatke kako bi se izdvojila neka specifična informacija, obično je potrebno obraditi podatke kako bi se uverilo da zadovoljavaju određene pretpostavke koje metoda podrazumeva. Primeri su:
    • Ponovno uzorkovanje da bi se uverilo da je koordinatni sistem slike ispravan.
    • Smanjenje buke kako bi se osiguralo da šum senzora ne donosi lažne informacije.
    • Poboljšanje kontrasta kako bi se osiguralo da se relevantne informacije mogu otkriti.
    • Skaliranje prikaza prostora da bi se poboljšale strukture slike u lokalno odgovarajućim razmerama.
  • Ekstrakcija karakteristika – Karakteristike slike na različitim nivoima složenosti se izdvajaju iz podataka slike.[26] Tipični primeri takvih karakteristika su:
    • Linije, ivice i grebeni.
    • Lokalizovane interesne tačke kao što su uglovi, mrlje ili tačke.
    • Složenije karakteristike mogu biti povezane sa teksturom, oblikom ili kretanjem.
  • Detekcija/segmentacija – U nekom trenutku obrade se donosi odluka o tome koje tačke ili regioni slike su relevantni za dalju obradu.[26] Primeri su:
    • Izbor određenog skupa interesnih tačaka.
    • Segmentacija jednog ili više regiona slike koji sadrže određeni objekat od interesa.
    • Segmentacija slike u arhitekturu ugnežđene scene koja se sastoji od prednjeg plana, grupa objekata, pojedinačnih objekata ili istaknutih delova objekata[38] (koji se takođe nazivaju hijerarhijom prostorno-taksonske scene),[39] dok se vizuelni značaj često implementira kao prostorna i vremenska pažnja.
    • Segmentacija ili ko-segmentacija jednog ili više video snimaka u seriju maski prednjeg plana po kadru, uz zadržavanje vremenskog semantičkog kontinuiteta.[40][41]
  • Obrada visokog nivoa – U ovom koraku ulaz je tipično mali skup podataka, na primer skup tačaka ili region slike za koji se pretpostavlja da sadrži određeni objekat.[26] Preostala obrada se bavi, na primer:
    • Provera da podaci zadovoljavaju pretpostavke zasnovane na modelu i pretpostavke specifične za aplikaciju.
    • Procena parametara specifičnih za aplikaciju, kao što su poza objekta ili veličina objekta.
    • Prepoznavanje slike – klasifikovanje otkrivenog objekta u različite kategorije.
    • Registracija slike – upoređivanje i kombinovanje dva različita pogleda na isti objekat.
  • Donošenje odluka - Donošenje konačne odluke potrebne za prijavu,[26] na primer:
    • Položio/ne prošao u aplikacijama za automatsku inspekciju.
    • Podudaranje/nepodudaranje u aplikacijama za prepoznavanje.
    • Oznake za dalji ljudski pregled u medicinskim, vojnim, bezbednosnim aplikacijama i aplikacijama za prepoznavanje.

Sistemi za razumevanje slika uredi

Sistemi za razumevanje slike (IUS) uključuju tri nivoa apstrakcije, kako sledi: niski nivo uključuje primitive slike kao što su ivice, elementi teksture ili regioni; srednji nivo obuhvata granice, površine i zapremine; a visoki nivo uključuje objekte, scene ili događaje. Mnogi od ovih zahteva su u potpunosti teme za dalja istraživanja.

Reprezentativni zahtevi u projektovanju IUS-a za ove nivoe su: predstavljanje prototipskih koncepata, organizacija koncepta, prostorno znanje, vremensko znanje, skaliranje i opis poređenjem i diferencijacijom.

Dok se zaključivanje odnosi na proces izvođenja novih, ne eksplicitno predstavljenih činjenica iz trenutno poznatih činjenica, kontrola se odnosi na proces koji bira koja od mnogih tehnika zaključivanja, pretraživanja i podudaranja treba da se primeni u određenoj fazi obrade. Zahtjevi zaključivanja i kontrole za IUS su: pretraživanje i aktivacija hipoteza, podudaranje i testiranje hipoteza, generiranje i korištenje očekivanja, promjena i fokus pažnje, sigurnost i snaga vjerovanja, zaključak i zadovoljstvo ciljem.[42]

Hardver uredi

Postoji mnogo vrsta sistema računarskog vida; međutim, svi oni sadrže ove osnovne elemente: izvor napajanja, najmanje jedan uređaj za akviziciju slike, procesor i kontrolne i komunikacione kablove ili neku vrstu mehanizma za bežično povezivanje. Pored toga, praktičan sistem vizije sadrži softver, kao i displej za praćenje sistema. Sistemi za pregled unutrašnjih prostora, kao i većina industrijskih, sadrže sistem osvetljenja i mogu se postaviti u kontrolisano okruženje. Štaviše, kompletan sistem uključuje mnogo dodataka kao što su nosači za kamere, kablovi i konektori.

Većina sistema računarskog vida koristi kamere sa vidljivim svetlom koje pasivno posmatraju scenu brzinom od najviše 60 kadrova u sekundi (obično mnogo sporije).

Nekoliko sistema računarskog vida koristi hardver za prikupljanje slika sa aktivnim osvetljenjem ili nečim drugim osim vidljive svetlosti ili oboje, kao što su 3D skeneri sa strukturiranim svetlom, termografske kamere, hiperspektralni snimači, radarsko snimanje, lidarski skeneri, slike magnetne rezonance, sonar za bočno skeniranje , sonar sa sintetičkim otvorom, itd. Takav hardver snima „slike“ koje se zatim često obrađuju korišćenjem istih algoritama računarskog vida koji se koriste za obradu slika vidljivog svetla.

Dok tradicionalni sistemi za emitovanje i video sistemi za potrošače rade brzinom od 30 frejmova u sekundi, napredak u digitalnoj obradi signala i grafičkom hardveru za potrošače omogućio je brzu akviziciju, obradu i prikaz slike za sisteme u realnom vremenu od nekoliko stotina do hiljade kadrova u sekundi. Za aplikacije u robotici, brzi video sistemi u realnom vremenu su kritično važni i često mogu da pojednostave obradu potrebnu za određene algoritme. Kada se kombinuje sa projektorom velike brzine, brzo prikupljanje slike omogućava realizaciju 3D merenja i praćenja karakteristika.[43]

Egocentrični sistemi vida se sastoje od nosive kamere koja automatski snima slike iz perspektive prvog lica.

Od 2016. jedinice za obradu vizije pojavljuju se kao nova klasa procesora, kako bi dopunile CPU i grafičke procesorske jedinice (GPU) u ovoj ulozi.[44]

Reference uredi

  1. ^ a b Klette, Reinhard (2014). Concise computer vision: an introduction into theory and algorithms. Undergraduate topics in computer science. London: Springer. ISBN 978-1-4471-6320-6. 
  2. ^ a b Shapiro, Linda G.; Stockman, George C. (2001). Computer vision. Upper Saddle River, NJ: Prentice Hall. ISBN 978-0-13-030796-5. 
  3. ^ a b Morris, Tim (2004). Computer vision and image processing. Cornerstones of computing. Basingstoke: Palgrave Macmillan. ISBN 978-0-333-99451-1. 
  4. ^ a b Forsyth, David; Ponce, Jean; Forsyth, David A. (2003). Computer vision: a modern approach. Prentice Hall series in artificial intelligence (Reprinted with corr izd.). Upper Saddle River, NJ: Prentice Hall. ISBN 978-0-13-085198-7. 
  5. ^ Ballard, Dana H.; Ballard, Dana Harry; Brown, Christopher Marlin; Brown, Christopher M. (1982). Computer vision. Englewood Cliffs, N.J: Prentice-Hall. ISBN 978-0-13-165316-0. 
  6. ^ Vandoni, Carlo E., ur. (1996). Proceedings / 1996 CERN School of Computing: Egmont aan Zee, The Netherlands, 8 September - 21 September 1996. CERN. Geneva: CERN. ISBN 978-92-9083-095-5. 
  7. ^ Sonka, Milan; Hlaváč, Václav; Boyle, Roger (2008). Image processing, analysis, and machine vision (3. ed izd.). Toronto: Thompson Learning. ISBN 978-0-495-08252-1. 
  8. ^ „What is computer vision?”. web.archive.org. 2017-02-16. Arhivirano iz originala 16. 02. 2017. g. Pristupljeno 2023-12-29. 
  9. ^ „Star Trek’s “tricorder” medical scanner just got closer to becoming a reality”. Quartz (na jeziku: engleski). 2017-04-13. Pristupljeno 2023-12-29. 
  10. ^ Davies, E. R. (2018). Computer vision: principles, algorithms, applications, learning (Fifth edition izd.). London San Diego, CA: Academic Press, an imprint of Elsevier. ISBN 978-0-12-809284-2. 
  11. ^ a b v g Szeliski, Richard; Szeliski, Richard (2011). Computer vision: algorithms and applications. Texts in computer science. New York London: Springer. ISBN 978-1-84882-935-0. 
  12. ^ Sejnowski, Terrence J. (2018). The deep learning revolution. Cambridge, Massachusetts London, England: The MIT Press. ISBN 978-0-262-03803-4. 
  13. ^ Boden, Margaret A. (2006). Mind as machine: a history of cognitive science. Oxford: Clarendon Press. ISBN 978-0-19-954316-8. 
  14. ^ Kanade, Takeo (2012-12-06). Three-Dimensional Machine Vision (na jeziku: engleski). Springer Science & Business Media. ISBN 978-1-4613-1981-8. 
  15. ^ Sebe, Nicu, ur. (2005). Machine learning in computer vision. Computational imaging and vision. Dordrecht Berlin Heidelberg: Springer. ISBN 978-1-4020-3274-5. 
  16. ^ Freeman, William; Perona, Pietro; Schölkopf, Bernhard (2008). „Guest Editorial”. International Journal of Computer Vision (na jeziku: engleski). 77 (1-3): 1—1. ISSN 0920-5691. doi:10.1007/s11263-008-0127-7. 
  17. ^ LeCun, Yann; Bengio, Yoshua; Hinton, Geoffrey (2015-05-28). „Deep learning”. Nature (na jeziku: engleski). 521 (7553): 436—444. ISSN 0028-0836. doi:10.1038/nature14539. 
  18. ^ Jiao, Licheng; Zhang, Fan; Liu, Fang; Yang, Shuyuan; Li, Lingling; Feng, Zhixi; Qu, Rong (2019). „A Survey of Deep Learning-Based Object Detection”. IEEE Access. 7: 128837—128868. ISSN 2169-3536. doi:10.1109/ACCESS.2019.2939201. 
  19. ^ a b Steger, Carsten; Ulrich, Markus; Wiedemann, Christian, ur. (2018). Machine vision algorithms and applications (2nd, completely revised and enlarged edition izd.). Weinheim: Wiley-VCH. ISBN 978-3-527-41365-2. 
  20. ^ „Wayback Machine”. web.archive.org. 2020-10-31. Arhivirano iz originala 31. 10. 2020. g. Pristupljeno 2023-12-29. 
  21. ^ a b Soltani, Amir Arsalan; Huang, Haibin; Wu, Jiajun; Kulkarni, Tejas D.; Tenenbaum, Joshua B. (2017). „Synthesizing 3D Shapes via Modeling Multi-view Depth Maps and Silhouettes with Deep Generative Networks”. IEEE: 2511—2519. ISBN 978-1-5386-0457-1. doi:10.1109/CVPR.2017.269. 
  22. ^ Turek, Fred (June 2011). "Machine Vision Fundamentals, How to Make Robots See". NASA Tech Briefs Magazine.
  23. ^ „The Future of Automated Random Bin Picking”. web.archive.org. 2018-01-11. Arhivirano iz originala 11. 01. 2018. g. Pristupljeno 2023-12-29. 
  24. ^ Chervyakov, N.I.; Lyakhov, P.A.; Deryabin, M.A.; Nagornov, N.N.; Valueva, M.V.; Valuev, G.V. (2020). „Residue Number System-Based Solution for Reducing the Hardware Cost of a Convolutional Neural Network”. Neurocomputing (na jeziku: engleski). 407: 439—453. doi:10.1016/j.neucom.2020.04.018. 
  25. ^ Wäldchen, Jana; Mäder, Patrick (2018). „Plant Species Identification Using Computer Vision Techniques: A Systematic Literature Review”. Archives of Computational Methods in Engineering (na jeziku: engleski). 25 (2): 507—543. ISSN 1134-3060. PMC 6003396 . PMID 29962832. doi:10.1007/s11831-016-9206-z. 
  26. ^ a b v g d đ Davies, E. Roy (2005). Machine vision: theory, algorithms, practicalities (3rd ed izd.). Amsterdam Boston: Elsevier. ISBN 978-0-12-206093-9. 
  27. ^ Ando, Mitsuhito; Takei, Toshinobu; Mochiyama, Hiromi (2020). „Rubber artificial skin layer with flexible structure for shape estimation of micro-undulation surfaces”. ROBOMECH Journal (na jeziku: engleski). 7 (1). ISSN 2197-4225. doi:10.1186/s40648-020-00159-0. 
  28. ^ Choi, Seung-hyun; Tahara, Kenji (2020). „Dexterous object manipulation by a multi-fingered robotic hand with visual-tactile fingertip sensors”. ROBOMECH Journal (na jeziku: engleski). 7 (1). ISSN 2197-4225. doi:10.1186/s40648-020-00162-5. 
  29. ^ Garg, Hitendra (2020). „Drowsiness Detection of a Driver using Conventional Computer Vision Application”. IEEE: 50—53. ISBN 978-1-7281-6575-2. doi:10.1109/PARC49193.2020.236556. 
  30. ^ Hasan, Fudail; Kashevnik, Alexey (2021-05-12). „State-of-the-Art Analysis of Modern Drowsiness Detection Algorithms Based on Computer Vision”. IEEE: 141—149. ISBN 978-952-69244-5-8. doi:10.23919/FRUCT52173.2021.9435480. 
  31. ^ Balasundaram, A; Ashokkumar, S; Kothandaraman, D; kora, SeenaNaik; Sudarshan, E; Harshaverdhan, A (2020-12-01). „Computer vision based fatigue detection using facial parameters”. IOP Conference Series: Materials Science and Engineering. 981 (2): 022005. ISSN 1757-8981. doi:10.1088/1757-899X/981/2/022005. 
  32. ^ a b Bruijning, Marjolein; Visser, Marco D.; Hallmann, Caspar A.; Jongejans, Eelke (2018). Golding, Nick, ur. „trackdem : Automated particle tracking to obtain population counts and size distributions from videos in r”. Methods in Ecology and Evolution (na jeziku: engleski). 9 (4): 965—973. ISSN 2041-210X. doi:10.1111/2041-210X.12975. 
  33. ^ Forsyth, David; Ponce, Jean; Forsyth, David A. (2003). Computer vision: a modern approach. Prentice Hall series in artificial intelligence (Reprinted with corr izd.). Upper Saddle River, NJ: Prentice Hall. ISBN 978-0-13-085198-7. 
  34. ^ Forsyth, David; Ponce, Jean (2012). Computer vision: a modern approach. Pearson.
  35. ^ a b Russakovsky, Olga; Deng, Jia; Su, Hao; Krause, Jonathan; Satheesh, Sanjeev; Ma, Sean; Huang, Zhiheng; Karpathy, Andrej; Khosla, Aditya (2015). „ImageNet Large Scale Visual Recognition Challenge”. International Journal of Computer Vision (na jeziku: engleski). 115 (3): 211—252. ISSN 0920-5691. doi:10.1007/s11263-015-0816-y. 
  36. ^ „AI Image Recognition: Inevitable Trending of Modern Lifestyle”. web.archive.org. 2022-12-02. Arhivirano iz originala 02. 12. 2022. g. Pristupljeno 2023-12-29. 
  37. ^ Barrett, Lisa Feldman; Adolphs, Ralph; Marsella, Stacy; Martinez, Aleix M.; Pollak, Seth D. (2019). „Emotional Expressions Reconsidered: Challenges to Inferring Emotion From Human Facial Movements”. Psychological Science in the Public Interest (na jeziku: engleski). 20 (1): 1—68. ISSN 1529-1006. PMC 6640856 . PMID 31313636. doi:10.1177/1529100619832930. 
  38. ^ „Computer Science”. arxiv.org. Pristupljeno 2023-12-29. 
  39. ^ „Wayback Machine” (PDF). web.archive.org. Arhivirano iz originala 14. 11. 2018. g. Pristupljeno 2023-12-29. 
  40. ^ Liu, Ziyi; Wang, Le; Hua, Gang; Zhang, Qilin; Niu, Zhenxing; Wu, Ying; Zheng, Nanning (2018). „Joint Video Object Discovery and Segmentation by Coupled Dynamic Markov Networks”. IEEE Transactions on Image Processing. 27 (12): 5840—5853. ISSN 1057-7149. doi:10.1109/TIP.2018.2859622. 
  41. ^ Wang, Le; Duan, Xuhuan; Zhang, Qilin; Niu, Zhenxing; Hua, Gang; Zheng, Nanning (2018-05-22). „Segment-Tube: Spatio-Temporal Action Localization in Untrimmed Videos with Per-Frame Segmentation”. Sensors (na jeziku: engleski). 18 (5): 1657. ISSN 1424-8220. PMC 5982167 . PMID 29789447. doi:10.3390/s18051657. 
  42. ^ Encyclopedia of artificial intelligence. 2: M - Z (2. ed izd.). New York, NY: Wiley. 1992. ISBN 978-0-471-50306-4. 
  43. ^ „High-speed vision systems and projectors for real-time perception of the world | IEEE Conference Publication | IEEE Xplore”. ieeexplore.ieee.org. doi:10.1109/cvprw.2010.5543776. Pristupljeno 2023-12-29. 
  44. ^ „A Third Type Of Processor For VR/AR: Movidius' Myriad 2 VPU | Tom's Hardware”. web.archive.org. 2023-03-15. Arhivirano iz originala 15. 03. 2023. g. Pristupljeno 2023-12-29. 

Greška kod citiranja: <ref> tag sa imenom „Ballard-Brown-1982” definisan u <references> nije upotrebljen u prethodnom tekstu.
Greška kod citiranja: <ref> tag sa imenom „Huang-1996” definisan u <references> nije upotrebljen u prethodnom tekstu.
Greška kod citiranja: <ref> tag sa imenom „Sonka-Hlavac-Boyle-2008” definisan u <references> nije upotrebljen u prethodnom tekstu.

Greška kod citiranja: <ref> tag sa imenom „Forsyth-Ponce-2003” definisan u <references> nije upotrebljen u prethodnom tekstu.