Kako naučiti računalo da razumije što je prikazano na slici ili slici? Čini nam se jednostavnim, ali za računalo to je samo matrica sastavljena od nula i jedinica iz kojih treba dobiti važne informacije.
Što je računalni vid? To je sposobnost računala da "vidi"
Zadatak računalnog vida može se formulirati prilično neodređeno. Što je "vidjeti"? Podrazumijeva se da gdje se nalazi, samo gleda. To je zaključak o razlikama u računalnom vidu i ljudskom vidu. Vizija za nas je izvor znanja o svijetu, kao i izvor metričkih informacija - to jest, sposobnost razumijevanja udaljenosti i veličine.
Semantička jezgra slike
Još uvijek možemo izdvojiti neke značajke ili atribute objekata. Na primjer, ovdje možemo utvrditi da to nije portret nekih običnih kineskih, naime Mao Zedonga. Automobilom se može odrediti da se radi o pokretnom objektu, a to je kruto, tj. Tijekom kretanja se ne deformira. O zastave možemo reći da su ti objekti, oni se kreću, ali nisu kruti, stalno deformirani. A na sceni je i vjetar, može se odrediti zastavom u razvoju, pa čak i vi možete odrediti smjer vjetra, na primjer, puše s lijeva na desno.
Vrijednost udaljenosti i duljine u računalnom svemiru
Analiza, prepoznavanje slika - put do stvaranja više inteligencije
Radovi mogu "vidjeti"
Na pragu u svijet umjetne inteligencije
Računalo još uvijek ne razumije, ali već "vidi"
Integracija računalnog vida u različite platforme
Ali prepoznavanje osobe, kao što je prikazano u filmovima - u proizvoljnim kutovima, s različitim uvjetima osvjetljenja - nije moguće. No, da bi se riješio problem, jedan ili različiti ljudi s različitim osvjetljenjem ili u različitim pozama, slično, kao na fotografiji u putovnici, može s visokim stupnjem povjerenja. Zahtjevi za fotografije za putovnicu uglavnom su posljedica značajki algoritama za prepoznavanje lica. Primjerice, ako imate biometrijsku putovnicu, tada u nekim modernim zračnim lukama možete koristiti sustav automatske kontrole putovnica. Nerešeni problem računalnog vida je sposobnost prepoznavanja proizvoljnog teksta
Možda je netko koristio sustav za prepoznavanje teksta. Jedan od njih je Fine Reader, vrlo popularan Runet sustav. Postoje mnogi oblici u kojima morate ispuniti podatke, dobro su skenirani, sustav dobro prepoznaje informacije. Ali s proizvoljnim tekstom na slici, slučaj je mnogo gori. Ovaj zadatak ostaje neriješen.
Zasebno veliko područje - je stvaranje trodimenzionalnih modela i hvatanje gibanja (što je prilično uspješno implementirano u računalne igre). Prvi program, računalni vid koristi, - sustav interakcije s računalom pomoću gesta. Njegovim stvaranjem bilo je mnogo otvorenosti. Sam algoritam je uređen vrlo jednostavno, ali za njegovu instalaciju potrebno je stvoriti generator umjetnih slika ljudi koje treba dobitimilijuna slika. Superkompjuter je uz njihovu pomoć uočio parametre algoritma, po kojima sada najbolje radi. Evo milijun slika i tjedno računanja vremena superkompjutera omogućuju stvaranje algoritma koji troši 12% snage jednog procesora i omogućuje vam da percipirate pozu osobe u stvarnom vremenu. Ovo je Microsoft Kinect (2010).
Pronalaženje slika po sadržaju omogućuje vam slanje fotografije u sustav, a na temelju rezultata prikazat će se sve slike s istim sadržajem i izrađene iz istog kuta. Primjeri računalnog vida: sada se koriste trodimenzionalne i dvodimenzionalne karte. Karte za auto-navigatore redovito se ažuriraju prema videorekorderima. Postoji baza podataka s milijardama fotografija s geomodelima. Prenosom snimke u ovu bazu podataka možete odrediti gdje je napravljena pa čak i pod kojim kutom. Naravno, pod uvjetom da je mjesto vrlo popularno, da su u jednom trenutku turisti tamo posjetili i napravili neke fotografije tog područja.
Razgovarajmo o digitalnoj slici. Moderni digitalni fotoaparatiraspoređenih po principu kamera-zamagljivanje. Samo umjesto otvora kroz koji svjetlosni snop prodire i oblikuje konturu objekta na stražnjoj strani fotoaparata, imamo poseban optički sustav koji se naziva leća. Njegova je svrha skupiti veliku svjetlosnu zraku i pretvoriti je tako da svi snopovi prolaze kroz jednu virtualnu točku kako bi dobili projekciju i oblikovali slike na filmu ili matrici.
Moderni digitalni fotoaparati (matrice) sastoje se od odvojenih elemenata - piksela. Svaki piksel omogućuje mjerenje energije svjetlosti koja pada na ovaj piksel ukupno, i ispisuje jedan broj na izlazu. Stoga u digitalnoj kameri primamo umjesto niza mjerenja svjetlinu koja je pala u zasebna vidna polja piksela - računala. Stoga, pri povećanju slike, ne vidimo glatke crte i jasne konture, i mrežu naslikanih u različitim tonovima kvadrata - piksela. Ispod možete vidjeti prvu digitalnu sliku na svijetu.
Ali što nedostaje u ovoj slici? Boji. I koja je boja?
Boja je ono što vidimo. Boja objekta, jedan i isti objekt za čovjeka i mačku bit će različiti. Budući da mi (kod ljudi) i životinje imamo optički sustav - vid, on je drugačiji. Dakle, boja je psihološko svojstvo naše vizije koja nastaje promatranjem objekata i svjetla. I ne fizička svojstva objekta i svjetla. Boja je rezultat interakcije komponenti svjetla, scene i našeg vizualnog sustava.
Ako se ozbiljno bavite proučavanjem računalnog vida, trebali biste se odmah pripremiti za niz poteškoća, znanost nije najlakša i skriva brojne zamke. No, "Programiranje računalne vizije na Pythonu" u autorstvu Jana Erika Soleme je knjiga u kojoj se sve podučava na što jednostavnijem jeziku. Ovdje ćete se upoznati s metodama prepoznavanja različitih objekata u 3D, naučiti kako raditi sa stereo slikama, virtualnom stvarnošću i mnogim drugim programima računalnog vida. Knjiga ima mnogo primjera u Pythonu. No, objašnjenja su prikazana, da tako kažemo, uopćena, kako ne bi preopteretili previše znanstvenih i tvrdih informacija. Rad je pogodan za studente, samo za amatere i entuzijaste. Preuzmi ovu knjigu i drugi računalni vid (pdf-format) može biti online. Trenutno postoji otvorena knjižnica algoritama računalnog vida, kao i obrada slika i numerički algoritmi OpenCV-a. Implementiran je u većini suvremenih programskih jezika, s otvorenim izvornim kodom. Govoreći o računalnom vidu, Python koristi kao programski jezik, također ima podršku ove knjižnice, a osim toga, stalno se razvija i ima veliku zajednicu. Microsoft nudi Api-usluge koje mogu podučavati neuronske mreže za rad s slikama ljudi. Moguće je upotrijebiti Pythonov računalni vid kao programski jezik .