OqPoWah.com

Sodoben računalniški vid. Naloge in tehnologije računalniškega vida. Programiranje računalniške vizije v Pythonu

Kako naučiti računalnik, da bi razumel, kaj je na sliki ali fotografiji? Zdi se enostavno za nas, toda za računalnik je le matrika, sestavljena iz ničel in tistih, iz katerih je treba pridobiti pomembne informacije.

računalniški vid

Kaj je računalniška vizija? To je sposobnost računalnika, da "vidi"

Vizija je pomemben vir informacij za osebo, s pomočjo katere po različnih virih dobimo od 70 do 90% vseh informacij. In seveda, če želimo ustvariti pametni računalnik, moramo v računalniku izvajati enake veščine.

Naloga računalniškega vida je lahko precej nejasna. Kaj je »videti«? Razumeti je, kje se nahaja, samo videti. To je razlika med računalniškim vidom in človeškim vidom. Vizija za nas je vir znanja o svetu, pa tudi vir metričnih informacij - to je sposobnost razumevanja razdalj in dimenzij.

Semantično jedro slike

Če pogledamo sliko, jo lahko označimo na več načinov, tako rekoč, za pridobivanje semantičnih informacij.

računalniški vid Python

Na primer, gledamo na to fotografijo, lahko rečemo, da je to zunaj sobe. Kaj je to mesto, cestni promet. Tukaj so avtomobili. S konfiguracijo stavbe in s hieroglifi lahko uganemo, da je to Jugovzhodna Azija. Portret Mao Zedong razumeti, da je to v Pekingu, in če je kdo videl video v živo ali sam je bil tam, bi bilo uganiti, da je ta slavni na Trgu nebeškega miru.

Kaj lahko rečemo o sliki, če upoštevamo to? Izberemo lahko predmete na sliki, recimo, tam so ljudje, bližje je ograja. Tu so dežniki, tukaj je stavba, tukaj so plakati. To so primeri razredov zelo pomembnih predmetov, ki jih trenutno iščemo.

Prav tako lahko izvlečemo nekaj atributov ali atributov predmetov. Na primer, tukaj lahko ugotovimo, da to ni portret nekaterih navadnih kitajskih, in sicer Mao Zedonga.

Z avtomobilom lahko ugotovite, da gre za premikajoči se predmet in je togo, to pomeni, da se med gibanjem ne deformira. Glede oznak lahko rečemo, da gre za predmete, se premikajo, vendar niso tog, trajno deformirani. In tudi vetra v prizoru, jo lahko določi razvijajoča se zastava, in celo smer vetra je mogoče določiti, na primer, piha od leve proti desni.

Vrednost razdalj in dolžin v računalniškem vidu

Zelo pomembno je, da so v znanosti metrične informacije o računalniškem vidu. To so vse razdalje. Na primer, za roverja je to še posebej pomembno, ker ukazi z Zemlje segajo približno 20 minut in odgovor je enak. Skladno s tem povezava tam in nazaj - 40 minut. In če pripravimo načrt za gibanje zemeljskih ukazov, moramo to upoštevati.

računalniška vizija pdf

Na srečo so računalniške vizije vključene v video igre. Glede na video, se lahko gradijo tridimenzionalne modele predmetov, ljudi in fotografij na uporabnika lahko obnovite tridimenzionalne modele mest. In potem pojdi na njih.

Računalniška vizija je dokaj široka. Tesno je prepletena z drugimi znanostmi. Delno računalniška vizija zajame območje za obdelavo slike in včasih identificira področje računalniškega vida.

Analiza, prepoznavanje vzorcev - način ustvarjanja višjih možganov

Te koncepte bomo analizirali ločeno.

metode računalniškega vida

Obdelava slik je področje algoritmov, v katerih sta vhod in izhod slika, in s tem že delamo nekaj.

Analiza slike je področje računalniške vizije, ki se osredotoča na delo z dvodimenzionalno podobo in iz tega sklepa sklepe.

Prepoznavanje slike je abstraktna matematična disciplina, ki prepozna podatke v obliki vektorjev. To pomeni, da je vnos vektor in s tem moramo storiti nekaj. Od kod tega vektorja ni tako pomembno, da bi vedeli.

Računalniška vizija - prvotno je bila obnovitev strukture dvodimenzionalnih slik. Zdaj je to območje postalo obsežnejše in ga je mogoče obravnavati na splošno kot odločanje o fizičnih objektih, ki temelji na sliki. To je to je naloga umetna inteligenca.

Vzporedno z računalniškim vidom na popolnoma drugem področju se je v geodeziji razvila fotogrametrija - to je merjenje razdalj med objekti na dvodimenzionalnih slikah.

Roboti lahko "vidijo"

In zadnja stvar je strojni vid. Z računalniškim vidom je mišljen pogled robotov. To je rešitev nekaterih proizvodnih problemov. To računalniško vizijo lahko rečemo - to je ena velika znanost. Nekatere druge znanosti deloma združuje. In ko računalniška vizija prejme posebno aplikacijo, se spremeni v računalniški vid.

naloge za sisteme računalniškega vida

Področje računalniškega vida ima veliko praktičnih aplikacij. Povezan je z avtomatizacijo proizvodnje. Pri podjetjih postane učinkovitejša zamenjava ročnega dela s stroji. Stroj se ne utrudi, ne spi, ima nereguliran urnik dela, pripravljen je delati 365 dni na leto. Torej, z uporabo strojnega dela lahko dobimo zajamčeno vrednost v določenem času, kar je precej zanimivo. Vse naloge za sisteme računalniškega vida imajo vizualno aplikacijo. In ni nič boljšega kot videti rezultat takoj iz slike, le na stopnji izračuna.

Na pragu umetne inteligence

Plus območje - to je zapleteno! Pomemben del možganov je odgovoren za vizijo in verjame se, da če učite računalnik "videti", to je, da v celoti izkoristite računalniško vizijo, potem je to ena od polnih nalog umetne inteligence. Če bomo problem rešili na človeški ravni, bomo hkrati rešili problem AI. Kar je zelo dobro! Ali ne zelo dobro, če pogledaš na "Terminator 2".

Zakaj je vid težek? Ker se slika istih predmetov močno razlikuje glede na zunanje dejavnike. Glede na točke opazovanja objekti izgledajo drugače.

Na primer, ena in enaka slika, vzeta iz različnih zornih kotov. In kar je najbolj zanimivo, ima lahko številka eno oko, dve očesi ali eno in pol. In glede na kontekst (če je ta podoba človeka v srajco z naslikanimi očmi), oko je lahko več kot dva.

Računalnik še ne razume, vendar že "vidi"

Še en dejavnik, ki ustvarja kompleksnost, je razsvetljava. Isti prizori z različno razsvetljavo bodo videti drugačni. Velikost predmetov se lahko spreminja. In predmeti vseh razredov. No, kako lahko rečeš o človeku, da je njegova višina 2 metra? Ni šanse. Višina osebe je lahko 2,3 m in 80 cm. Kot predmeti drugih vrst so kljub temu objekti istega razreda.

primeri računalniškega vida

Še posebej živi predmeti opravijo različne deformacije. Lasje ljudi, športniki, živali. Poglej slike tekočih konjev, je nemogoče ugotoviti, kaj se zgodi z njihovo grivo in repom. Prekrivanje predmetov na sliki? Če na računalniku slišite takšno sliko, bo tudi najmočnejši stroj težko najti pravo rešitev.

program računalniške vizije

Naslednja vrsta je prikrita. Nekateri predmeti, živali so prikriti pod okoljem in dovolj spretno. In madeži so enake in barve. Kljub temu pa jih vidimo, čeprav ne vedno od daleč.




Druga težava je gibanje. Objekti v gibanju so nepredstavljive deformacije.

Veliko predmetov je zelo spremenljivo. Na primer, na dveh fotografijah spodaj so predmeti, kot je "fotelj".

programiranje računalniške vizije v pythonu

In na to lahko sediš. Ampak naučiti stroj, da so take različne stvari v obliki, barvi, materiali so vsi predmeti "stol" - zelo težko. To je naloga. Vključevanje metod računalniške vizije je naučiti stroj za razumevanje, analizo in uganjanje.

razlike v računalniškem vidu in človeški viziji

Vključevanje računalniške vizije v različne platforme

V množicah je računalniški vid začel prodreti leta 2001, ko so bili ustvarjeni prvi detektorji obraza. Ali sta dva avtorja: Viola, Jones. To je bil prvi hiter in dovolj zanesljiv algoritem, ki je pokazal moč metod strojnega učenja.

Računalniška vizija ima zdaj precej novo praktično uporabo - prepoznavanje osebe po obrazu.

računalniško vidno polje

Vendar je nemogoče prepoznati osebo, kot je prikazano v filmih - v samovoljnih kotih, pri različnih pogojih osvetlitve. Toda, da bi rešili težavo, lahko to osebo ali drugačno osebo z drugačno razsvetljavo ali v različnih položajih, podobno kot fotografije v potnem listu, lahko z visoko stopnjo zaupanja.

Zahteve za fotografije potnega lista so v veliki meri posledica posebnosti algoritmov prepoznavanja obrazov.

Na primer, če imate biometrični potni list, lahko na nekaterih sodobnih letališčih uporabite samodejni nadzorni sistem potnih listov.

Nerešena težava Računalniška vizija je sposobnost prepoznavanja samovoljnega besedila

Morda je nekdo uporabil sistem prepoznavanja besedila. Eden od teh je Fine Reader, zelo priljubljen sistem v Runetu. Obstaja veliko oblik, kjer morate zapolniti podatke, jih je popolnoma optično prebrati, informacije pa sistem dobro prepozna. Toda s samovoljnim besedilom na sliki so stvari še slabše. Ta naloga ostaja nerešena.

Igre, ki vključujejo računalniški vid, zajemanje giba

Posebno veliko območje je ustvarjanje tridimenzionalnih modelov in zajetja gibanja (kar se zelo uspešno izvaja v računalniških igrah). Prvi program, ki uporablja računalniško vizijo, je sistem interakcije z računalnikom s pomočjo kretenj. Ko je bil ustvarjen, je bilo veliko, kar je bilo odprto.

Algoritem je precej preprost, vendar ga je treba konfigurirati, zato je bilo treba ustvariti generator umetnih podob ljudi, da bi dobili milijon slik. Superračunalnik je s svojo pomočjo izbral parametre algoritma, po katerem zdaj najbolje deluje.

Tako je milijon slik in teden računalniškega superračunalnika omogočil ustvariti algoritem, ki porabi 12% moči enega procesorja in vam omogoča, da v realnem času zaznavate osebo. To je sistem Microsoft Kinect (2010).

računalniški program za vizijo

Iskanje slik z vsebino, vam omogoča nalaganje fotografij v sistemu, in rezultati to bo dala vse slike z enako vsebino in iz istega zornega kota.

Primeri računalniškega vida: z njim se zdaj izvajajo tridimenzionalne in dvodimenzionalne karte. Zemljevidi za avtomobilske navigatorje se redno posodabljajo glede na podatke iz DVR-jev.

Obstaja baza z milijardami fotografij z geometrijo. Prenos posnetka v to bazo podatkov lahko določite, kje je bil ustvarjen, in tudi s katere perspektive. Seveda, pod pogojem, da je kraj precej priljubljen, da so nekoč bili turisti in naredili vrsto fotografij območja.

Roboti so povsod

Robotika je zdaj povsod, brez njega sploh. Zdaj pa so vozila, ki imajo posebne kamere, ki prepoznajo pešce in prometne znake, da posredujejo ukaze voznika (to na način, računalniški program za ogled, pomaga motorist). In popolnoma avtomatizirani roboti-avtomobili, vendar se ne morejo zanesti izključno na sistem kamer brez uporabe veliko dodatnih informacij.

Moderna kamera je analogna kamera obscura

Govorimo o digitalni sliki. Sodobni digitalni fotoaparati so zgrajeni po načelu kamere obscura. Le namesto luknjo, skozi katero svetloba vstopa v žarek in projicira na zadnji steni komore predmeta vezja, imamo poseben optični sistem, imenovan objektiv. Njen cilj je zbrati velik svetlobni snop in ga spremeniti tako, da se vsi žarki skozi virtualno točko, da bi dobili projekcije in tvori sliko na filmu ali matrici.

računalniški vid

Sodobni digitalni fotoaparati (matrika) so sestavljeni iz ločenih elementov - pikslov. Vsaka piksla vam omogoča, da izmerite energijo svetlobe, ki skupaj pade na to sliko in prikaže eno številko. Zato v digitalnem fotoaparatu namesto slike dobimo nabor meritev svetlosti svetlobe, ki pada v posamezni pikslov - računalnik vidno polje. Zato, ko je slika vidimo ne teče linije in jasne obrise, in mrežo barvnih kvadratov v različnih barvah - pikslov.

Spodaj si lahko ogledate prvo digitalno podobo na svetu.

računalniški vid

Toda kaj manjka na tej sliki? Barva. In kaj je barva?

Psihološko zaznavanje barve

Barva je tisto, kar vidimo. Barva predmeta, isti objekt za moškega in mačko bo drugačen. Ker imamo (pri ljudeh) in živali optični sistem - vid, je drugačen. Zato je barva psihološka lastnost naše vizije, ki izhaja iz opazovanja predmetov in svetlobe. In ne fizična lastnost predmeta in svetlobe. Barva je rezultat interakcije komponent svetlobe, scene in našega vizualnega sistema.

tehnologija računalniškega vida

Programiranje računalniškega vida v Pythonu z uporabo knjižnic

Če ste se odločili za resno sodelovanje v študiji računalniškega vida, je treba takoj pripraviti na številne težave, ta znanost ni najlažja in skriva številne pasti. Toda "Programiranje računalniške vizije v Pythonu" v avtorstvu Jan Erika Solema je knjiga, v kateri je vse narejeno v najpreprostejšem možnem jeziku. Tukaj se boste spoznali z metodami prepoznavanja različnih predmetov v 3D, učenju, kako delati s stereo slikami, virtualno realnostjo in številnimi drugimi aplikacijami računalniškega vida. V knjigi v Pythonu je dovolj primerov. Ampak pojasnila so predstavljena, tako rekoč, na splošno, da ne preobremenijo preveč znanstvenih in težkih informacij. Delo ustreza študentom, samo ljubiteljem in navdušencem. To knjigo in druge podatke o računalniški viziji (pdf formatu) lahko prenesete na spletu.

Trenutno je odprta knjižnica algoritmov za računalniški vid, obdelava slik in numerični algoritmi za OpenCV. To se izvaja v večini sodobnih programskih jezikov, ima odprtokodno kodo. Če govorimo o računalniški viziji, jo Python uporablja kot programski jezik, ima tudi podporo te knjižnice, poleg tega pa se nenehno razvija in ima veliko skupnost.

Microsoft ponuja svoje Api-storitve, ki lahko usposabljajo nevronske mreže za delo s slikami posameznikov. Obstaja tudi možnost uporabe računalniškega vida, ki Python uporablja kot programski jezik.

Zdieľať na sociálnych sieťach:

Príbuzný