Nuosekliojo modelio atpažinimo metodai. „Adaptyvus sudėtingų sistemų valdymas, pagrįstas modelio atpažinimo teorija

Gyvos sistemos, įskaitant žmones, nuo pat jų atsiradimo nuolat susiduria su modelio atpažinimo problema. Visų pirma, informaciją, gaunamą iš pojūčių, apdoroja smegenys, kurios savo ruožtu rūšiuoja informaciją, užtikrina sprendimų priėmimą, o vėliau, naudodamos elektrocheminius impulsus, perduoda reikiamą signalą toliau, pavyzdžiui, į judėjimo organus, kurie įgyvendina būtini veiksmai. Tada aplinka pasikeičia, ir minėti reiškiniai vėl pasikartoja. O jei pasižiūri, kiekvieną etapą lydi pripažinimas.

Su vystymusi Kompiuterinė technologija Tapo įmanoma išspręsti daugybę gyvenimo procese kylančių problemų, palengvinti, pagreitinti, pagerinti rezultato kokybę. Pavyzdžiui, darbas įvairios sistemos gyvybės palaikymas, žmogaus ir kompiuterio sąveika, robotizuotų sistemų atsiradimas ir kt. Tačiau pastebime, kad šiuo metu neįmanoma pateikti patenkinamo rezultato atliekant kai kurias užduotis (greitai judančių panašių objektų atpažinimas, ranka rašytas tekstas).

Darbo tikslas: ištirti vaizdų atpažinimo sistemų istoriją.

Nurodykite kokybinius pokyčius kas atsitiko modelių atpažinimo srityje, tiek teorinis, tiek techninis, nurodant priežastis;

Aptarti skaičiavime taikomus metodus ir principus;

Pateikite artimiausioje ateityje laukiamų perspektyvų pavyzdžių.

1. Kas yra modelio atpažinimas?

Iš esmės sekė ankstyvieji skaičiavimo tyrimai klasikinė schema matematinis modeliavimas- matematinis modelis, algoritmas ir skaičiavimas. Tai buvo sprogimų metu vykstančių procesų modeliavimo užduotys atominės bombos, balistinių trajektorijų skaičiavimas, ekonominiai ir kiti pritaikymai. Tačiau, be klasikinių šios serijos idėjų, atsirado visiškai kitokio pobūdžio metodai, kurie, kaip parodė kai kurių uždavinių sprendimo praktika, dažnai duoda geresnių rezultatų nei sprendimai, pagrįsti pernelyg sudėtingais matematiniais modeliais. Jų idėja buvo atsisakyti noro sukurti visapusišką matematinis modelis tiriamo objekto (be to, dažnai buvo praktiškai neįmanoma sukurti adekvačių modelių), o tenkintis atsakymu tik į konkrečius mus dominančius klausimus ir ieškoti šių atsakymų iš svarstymų, bendrų daugeliui problemų. Tokio pobūdžio tyrimai apėmė vaizdinių vaizdų atpažinimą, pasėlių derliaus, upių lygio prognozavimą, užduotį pagal netiesioginius geofizinius duomenis atskirti naftą turinčius ir vandeninguosius sluoksnius ir kt. Šiose užduotyse buvo reikalingas konkretus atsakymas gana paprasta forma, pvz. , pavyzdžiui, ar objektas priklauso vienai iš iš anksto nustatytų klasių. Ir pradiniai šių užduočių duomenys, kaip taisyklė, buvo pateikiami fragmentiškos informacijos apie tiriamus objektus forma, pavyzdžiui, iš anksto klasifikuotų objektų rinkinio forma. SU matematinis taškasŽvelgiant iš perspektyvos, tai reiškia, kad modelio atpažinimas (ir taip mūsų šalyje buvo pavadinta ši problemų klasė) yra platus funkcijų ekstrapoliacijos idėjos apibendrinimas.

Tokio teiginio svarba technikos mokslams nekelia abejonių, ir tai jau savaime pateisina daugybę šios srities tyrimų. Tačiau modelių atpažinimo problema gamtos mokslui turi ir platesnį aspektą (tačiau būtų keista, jei kažkas tokio svarbaus dirbtinėms kibernetinėms sistemoms neturėtų reikšmės natūralioms). Į šio mokslo kontekstą taip pat organiškai įtraukiami senovės filosofų keliami klausimai apie mūsų žinių pobūdį, gebėjimą atpažinti vaizdinius, šablonus ir situacijas aplinkiniame pasaulyje. Tiesą sakant, beveik nekyla abejonių, kad paprasčiausių vaizdų, pavyzdžiui, artėjančio pavojingo plėšrūno ar maisto atvaizdų, atpažinimo mechanizmai susiformavo daug anksčiau nei atsirado elementari kalba ir formalus loginis aparatas. Ir neabejotina, kad tokie mechanizmai yra gana išvystyti aukštesniuosiuose gyvūnuose, kuriems taip pat jų gyvenimo veikloje skubiai reikia gebėjimo atskirti gana sudėtingą gamtos ženklų sistemą. Taigi gamtoje matome, kad mąstymo ir sąmonės fenomenas aiškiai remiasi gebėjimu atpažinti vaizdinius, o tolesnė intelekto mokslo pažanga yra tiesiogiai susijusi su pamatinių atpažinimo dėsnių suvokimo gilumu. Suprasdami faktą, kad aukščiau išvardyti klausimai yra daug daugiau standartinis apibrėžimas modelio atpažinimo (anglų kalba literatūroje labiau paplitęs terminas supervised learning), taip pat būtina suprasti, kad jie turi gilių sąsajų su šia gana siaura (bet dar toli gražu neišsemta) kryptimi.

Jau dabar modelio atpažinimas tvirtai įsitvirtino kasdienis gyvenimas ir yra viena iš svarbiausių šiuolaikinio inžinieriaus žinių. Medicinoje modelių atpažinimas padeda gydytojams nustatyti tikslesnes diagnozes gamyklose, jis naudojamas prekių partijų defektams prognozuoti. Biometrinės asmens identifikavimo sistemos, kaip jų algoritminis branduolys, taip pat yra pagrįstos šios disciplinos rezultatais. Tolimesnis vystymas dirbtinis intelektas, ypač penktos kartos kompiuterių, galinčių daugiau tiesioginis bendravimas su asmeniu žmonėms natūraliomis kalbomis ir kalba, neįsivaizduojami be atpažinimo. Robotika čia vos už kelių žingsnių, dirbtinės sistemos valdikliai, kuriuose atpažinimo sistemos yra gyvybiškai svarbios posistemės.

Būtent todėl modelių atpažinimo kūrimas nuo pat pradžių sulaukė didelio dėmesio iš įvairaus profilio specialistų – kibernetikos, neurofiziologų, psichologų, matematikų, ekonomistų ir kt. Iš esmės dėl šios priežasties šiuolaikinį modelio atpažinimą skatina šių disciplinų idėjos. Nepretenduodami į išsamumą (ir to neįmanoma tvirtinti trumpame rašinyje), apibūdinsime modelio atpažinimo istoriją, pagrindinės idėjos.

Apibrėžimai

Prieš pereidami prie pagrindinių modelio atpažinimo metodų, pateikiame keletą būtinų apibrėžimų.

Rašto atpažinimas (objektų, signalų, situacijų, reiškinių ar procesų) yra užduotis identifikuoti objektą arba nustatyti bet kokias jo savybes pagal jo vaizdą (optinis atpažinimas) arba garso įrašą (akustinis atpažinimas) ir kitas charakteristikas.

Viena iš pagrindinių yra aibės samprata, kuri neturi konkrečios formuluotės. Kompiuteryje aibė vaizduojama kaip to paties tipo nesikartojančių elementų rinkinys. Žodis „nepasikartojantis“ reiškia, kad tam tikras rinkinio elementas arba yra, arba jo nėra. Universalus rinkinys apima visus įmanomus sprendžiamos problemos elementus.

Vaizdas – tai klasifikacinė grupuotė klasifikavimo sistemoje, jungianti (išryškinanti) tam tikrą objektų grupę pagal tam tikrą kriterijų. Vaizdai turi būdingą savybę, kuri pasireiškia tuo, kad susipažinus su baigtiniu reiškinių skaičiumi iš to paties rinkinio, galima atpažinti tiek, kiek nori. didelis skaičius jos atstovai. Vaizdai turi būdingų objektyvių savybių ta prasme skirtingi žmonės, studijuoja skirtingos medžiagos pastebėjimai, didžiąja dalimi klasifikuoti tuos pačius objektus vienodai ir nepriklausomai vienas nuo kito. Klasikinėje atpažinimo problemos formuluotėje universalus rinkinys suskirstytas į vaizdo dalis. Kiekvienas objekto susiejimas su atpažinimo sistemos suvokimo organais, nepaisant jo padėties šių organų atžvilgiu, paprastai vadinamas objekto atvaizdu, o tokių vaizdų rinkiniai, kuriuos vienija kai kurios bendros savybės, yra vaizdai.

Elemento priskyrimo bet kuriam vaizdui metodas vadinamas lemiama taisyklė. Kitas svarbi koncepcija- metrika, atstumo tarp universalaus rinkinio elementų nustatymo metodas. Kuo šis atstumas mažesnis, tuo panašesni objektai (simboliai, garsai ir pan.) – tai, ką atpažįstame. Paprastai elementai nurodomi kaip skaičių rinkinys, o metrika nurodoma kaip funkcija. Programos efektyvumas priklauso nuo vaizdo vaizdavimo pasirinkimo ir metrikos įgyvendinimo vieno atpažinimo algoritmo su skirtinga metrika padarys klaidų su skirtingais dažniais.

Mokymu paprastai vadinamas procesas, kai tam tikroje sistemoje susidaro vienokia ar kitokia reakcija į išorinių vienodų signalų grupes, pakartotinai veikiant išorinių koregavimo sistemą. Tokie išoriniai treniruočių koregavimai paprastai vadinami „atlygiais“ ir „bausmėmis“. Šio koregavimo generavimo mechanizmas beveik visiškai lemia mokymosi algoritmą. Savarankiškas mokymasis nuo mokymo skiriasi tuo, kad čia nepateikiama papildomos informacijos apie reakcijos į sistemą teisingumą.

Adaptacija – tai sistemos parametrų ir struktūros, o galbūt ir valdymo veiksmų keitimo procesas, paremtas esama informacija, siekiant pasiekti tam tikrą sistemos būseną esant pradinei neapibrėžčiai ir kintant darbo sąlygoms.

Mokymasis yra procesas, kurio metu sistema palaipsniui įgyja gebėjimą reaguoti reikalingos reakcijos tam tikroms populiacijoms išorinių poveikių, o adaptacija – tai sistemos parametrų ir struktūros koregavimas, siekiant reikiamos kontrolės kokybės nuolatinių išorinių sąlygų kaitos sąlygomis.

Šablonų atpažinimo užduočių pavyzdžiai: - Raidžių atpažinimas;

Sekmadienis, 2015 m. kovo 29 d

Šiuo metu yra daug užduočių, kurias atliekant būtina priimti kokį nors sprendimą, atsižvelgiant į objekto buvimą vaizde arba jį klasifikuoti. Gebėjimas „atpažinti“ laikomas pagrindine savybe biologinės būtybės, kol kompiuterių sistemos visiškai nevaldo šio turto.

Pasvarstykime bendri elementai klasifikavimo modeliai.

Klasė- objektų rinkinys, turintis bendrosios savybės. Tos pačios klasės objektams daroma prielaida, kad yra „panašumas“. Atpažinimo užduočiai gali būti nustatytas bet koks klasių skaičius, didesnis nei 1. Klasių skaičius žymimas skaičiumi S. Kiekviena klasė turi savo identifikavimo klasės etiketę.

klasifikacija- klasių etikečių priskyrimo objektams procesas, remiantis tam tikru šių objektų savybių aprašymu. Klasifikatorius yra įrenginys, kuris gauna objekto atributų rinkinį kaip įvesties duomenis ir dėl to sukuria klasės etiketę.

Patikrinimas- objekto egzemplioriaus susiejimo su vienu objekto modeliu arba klasės aprašymu procesas.

Pagal būdu mes suprasime vietovės pavadinimą objektų erdvėje, kurioje rodoma daug objektų ar reiškinių materialus pasaulis. Pasirašyti - kiekybinis aprašymas viena ar kita tiriamo objekto ar reiškinio savybė.

Funkcijų erdvė Tai N matmenų erdvė, apibrėžtas tam tikrai atpažinimo užduočiai, kur N yra fiksuotas bet kokių objektų išmatuotų savybių skaičius. Vektorius iš objektų erdvės x, atitinkantis atpažinimo užduoties objektą, yra N matmenų vektorius su komponentais (x_1,x_2,…,x_N), kurie yra šio objekto ypatybių reikšmės.

Kitaip tariant, modelio atpažinimas gali būti apibrėžtas kaip šaltinio duomenų priskyrimas konkrečiai klasei naudojant pasirinkimą esmines savybes arba šiuos duomenis apibūdinančios savybės, iš bendros masės nesvarbios detalės.

Klasifikavimo problemų pavyzdžiai:

  • simbolių atpažinimas;
  • kalbos atpažinimas;
  • medicininės diagnozės nustatymas;
  • orų prognozė;
  • veido atpažinimas
  • dokumentų įslaptinimas ir kt.

Dažniausiai pirminė medžiaga yra vaizdas, gautas iš fotoaparato. Problema gali būti suformuluota kaip kiekvienos nagrinėjamo vaizdo ypatybių vektorių gavimas. Procesas gali būti vertinamas kaip kodavimo procesas, kurio metu kiekvienai ypatybei priskiriama vertė iš kiekvienos klasės funkcijų erdvės.

Jei laikytume 2 objektų klases: suaugusiųjų ir vaikų. Galite pasirinkti ūgį ir svorį kaip ženklus. Kaip matyti iš paveikslo, šios dvi klasės sudaro dvi atskiras aibes, kurias galima paaiškinti pasirinktomis savybėmis. Tačiau ne visada įmanoma pasirinkti tinkamus išmatuotus parametrus kaip klasės ypatybes. Pavyzdžiui, pasirinkti parametrai netinka sukurti atskiras futbolininkų ir krepšininkų klases.

Antroji atpažinimo užduotis – atrinkti būdingi bruožai arba ypatybes iš šaltinio vaizdų. Ši užduotis gali būti klasifikuojama kaip išankstinis apdorojimas. Jei atsižvelgsime į kalbos atpažinimo užduotį, galime išskirti tokius bruožus kaip balsiai ir priebalsiai. Atributas turi būti būdinga tam tikros klasės savybė ir tuo pat metu bendra šiai klasei. Savybės, apibūdinančios skirtumus tarp - tarpklasinės savybės. Visoms klasėms būdingų savybių nėra Naudinga informacija ir nėra laikomi atpažinimo užduoties požymiais. Funkcijos pasirinkimas yra viena iš svarbių užduočių, susijusių su atpažinimo sistemos kūrimu.

Nustačius požymius, turi būti nustatyta optimali klasifikavimo sprendimo procedūra. Panagrinėkime modelio atpažinimo sistemą, skirtą atpažinti skirtingas M klases, pažymėtas kaip m_1,m_2,…,m 3. Tada galime daryti prielaidą, kad vaizdo erdvę sudaro M regionai, kurių kiekvienoje yra taškai, atitinkantys vaizdą iš vienos klasės. Tada atpažinimo problema gali būti laikoma ribų, skiriančių M klases, konstravimas remiantis priimtais matavimo vektoriais.

Vaizdo išankstinio apdorojimo, savybių išskyrimo ir optimalaus sprendimo gavimo bei klasifikavimo problemos sprendimas dažniausiai siejamas su poreikiu įvertinti daugybę parametrų. Tai veda prie parametrų įvertinimo problemos. Be to, akivaizdu, kad funkcijų ištraukimas gali būti naudojamas Papildoma informacija remiantis klasių pobūdžiu.

Objektai gali būti lyginami remiantis jų vaizdavimu kaip matavimo vektoriais. Matavimo duomenis patogu vaizduoti realiųjų skaičių forma. Tada dviejų objektų požymių vektorių panašumą galima apibūdinti naudojant Euklido atstumą.

čia d yra požymio vektoriaus matmuo.

Yra 3 modelių atpažinimo metodų grupės:

  • Palyginimas su pavyzdžiu. Ši grupė apima klasifikaciją pagal artimiausią vidurkį, klasifikaciją pagal atstumą iki artimiausio kaimyno. Struktūrinio atpažinimo metodai taip pat gali būti įtraukti į palyginimo su imtimi grupę.
  • Statistiniai metodai. Kaip rodo pavadinimas, statistiniai metodai naudoja kai kuriuos statistinė informacija sprendžiant atpažinimo problemą. Metodas nustato, ar objektas priklauso konkrečiai klasei, remiantis tikimybe. Kai kuriais atvejais tai reiškia, kad nustatoma užpakalinė tikimybė, kad objektas priklausys konkrečiai klasei, su sąlyga, kad šio objekto charakteristikos turi atitinkamas reikšmes. Pavyzdys yra metodas, pagrįstas Bajeso sprendimo taisykle.
  • Neuroniniai tinklai. Atskira atpažinimo metodų klasė. Išskirtinis bruožas iš kitų yra gebėjimas mokytis.

Klasifikacija pagal artimiausią vidurkį

Taikant klasikinį modelio atpažinimo metodą, kai nežinomas objektas klasifikavimui vaizduojamas kaip elementarių savybių vektorius. Galima sukurti savybėmis paremtą atpažinimo sistemą Skirtingi keliai. Šiuos vektorius sistema gali žinoti iš anksto treniruojant arba numatyti realiu laiku, remiantis kai kuriais modeliais.

Paprastas klasifikavimo algoritmas yra sugrupuoti klasės atskaitos duomenis naudojant klasės lūkesčių vektorių (vidurkį).

kur x(i,j)- j-oji nuoroda i klasės požymis, n_j yra i klasės atskaitos vektorių skaičius.

Tada nežinomas objektas priklausys i klasei, jei jis yra žymiai artimesnis i klasės matematinių lūkesčių vektoriui nei kitų klasių matematinių lūkesčių vektoriams. Šis metodas tinka problemoms, kuriose kiekvienos klasės taškai yra kompaktiškai ir toli nuo kitų klasių taškų.

Jei klasėse bus šiek tiek daugiau, kils sunkumų sudėtinga struktūra, pavyzdžiui, kaip parodyta paveikslėlyje. IN tokiu atveju 2 klasė yra padalinta į dvi atskiras dalis, kurios blogai apibūdinamos viena vidutine verte. Taip pat 3 klasė yra per pailgi, 3 klasės pavyzdžiai su didelės vertės koordinatės x_2 yra arčiau 1 klasės vidutinės reikšmės nei 3.

Aprašytą problemą kai kuriais atvejais galima išspręsti pakeitus atstumo skaičiavimą.

Atsižvelgsime į klasės verčių „sklaidos“ charakteristikas - σ_i, išilgai kiekvienos koordinatės krypties i. Standartinis nuokrypis yra lygus dispersijos kvadratinei šakniai. Euklidinis atstumas tarp vektoriaus x ir lūkesčių vektoriaus x_c yra

Ši atstumo formulė sumažins klasifikavimo klaidų skaičių, tačiau iš tikrųjų daugumos problemų negalima pavaizduoti tokia paprasta klase.

Klasifikavimas pagal atstumą iki artimiausio kaimyno

Kitas klasifikavimo būdas yra priskirti nežinomą ypatybių vektorių x tai klasei, į kurią šis vektorius yra labiausiai panašus. Ši taisyklė vadinama artimiausio kaimyno taisykle. Artimiausio kaimyno klasifikacija gali būti efektyvesnė net tada, kai klasės turi sudėtingą struktūrą arba kai klasės persidengia.

Šis metodas nereikalauja prielaidų apie požymių vektorių pasiskirstymo erdvėje modelius. Algoritmas naudoja tik informaciją apie žinomus etaloninius pavyzdžius. Sprendimo metodas pagrįstas atstumo x apskaičiavimu iki kiekvieno duomenų bazės pavyzdžio ir minimalaus atstumo suradimu. Šio metodo pranašumai yra akivaizdūs:

  • bet kada galite įtraukti naujus pavyzdžius į duomenų bazę;
  • medžio ir tinklelio duomenų struktūros sumažina apskaičiuotų atstumų skaičių.

Be to, sprendimas bus geresnis, jei duomenų bazėje ieškosime ne vieno artimiausio kaimyno, o k. Tada, kai k > 1, jis pateikia geriausią vektorių pasiskirstymo d-mačio erdvėje atranką. Tačiau efektyvus naudojimas k reikšmės priklauso nuo to, ar yra pakankamas kiekis kiekviename erdvės regione. Jei yra daugiau nei dvi klasės, priimkite teisingas sprendimas pasirodo sunkiau.

Literatūra

  • M. Castrillon, . O. Denizas,. D. Hernández ir J. Lorenzo, „Veido ir veido bruožų detektorių palyginimas pagal Viola-Jones bendrą objektų aptikimo sistemą“, International Journal of Computer Vision, Nr. 22, p. 481-494, 2011 m.
  • Y.-Q. Wang, „Viola-Jones veido aptikimo algoritmo analizė“, IPOL žurnalas, 2013 m.
  • L. Shapiro ir D. Stockman, Computer Vision, Binom. Žinių laboratorija, 2006 m.
  • Z. N. G., Atpažinimo metodai ir jų taikymas, Sovietų radijas, 1972 m.
  • J. Tu, R. Gonzalez, Matematiniai modelio atpažinimo principai, Maskva: „Mir“ Maskva, 1974 m.
  • Khan, H. Abdullah ir M. Shamian Bin Zainal, „Efektyvus akių ir burnos aptikimo algoritmas, naudojant viola jones ir odos spalvos pikselių aptikimo derinį“, International Journal of Engineering and Applied Sciences, Nr. 3 Nr.4 2013 m.
  • V. Gaede ir O. Gunther, "Multidimensional Access Methods", ACM Computing Surveys, p. 170-231, 1998.

Ir tt objektai, kuriems būdingas baigtinis tam tikrų savybių ir charakteristikų rinkinys. Tokios problemos gana dažnai išsprendžiamos, pavyzdžiui, kertant ar pravažiuojant gatvę pagal šviesoforą. Atpažinti degančio šviesoforo spalvą ir išmanyti taisykles eismo leidžia priimti teisingas sprendimas apie tai, ar galite pereiti gatvę, ar negalite.

Tokio pripažinimo poreikis iškyla labiausiai skirtingos sritys– nuo ​​karinių reikalų ir saugumo sistemų iki analoginių signalų skaitmeninimo.

Vaizdo atpažinimo problema įgijo išskirtinę reikšmę informacijos pertekliaus sąlygomis, kai žmogus negali susidoroti su linijiniu nuosekliu jam ateinančių pranešimų supratimu, dėl kurio jo smegenys persijungia į vienalaikio suvokimo ir mąstymo režimą, kuri būdinga tokiam atpažinimui.

Todėl neatsitiktinai vaizdo atpažinimo problema atsidūrė šioje srityje tarpdisciplininiai tyrimai- įskaitant darbą kuriant dirbtinį intelektą ir kuriant technines sistemas vaizdo atpažinimas sulaukia vis daugiau dėmesio.

Enciklopedinis „YouTube“.

    1 / 4

    Įvadas į modelio atpažinimą

    R.V. Šaminas. Paskaita Nr. 6 Hopfieldo ir Hamingo tinklai modelių atpažinimo problemose

    [DDSh-2016]: Neuroniniai tinklai ir šiuolaikinė kompiuterinė vizija

    9 paskaita. Eksponentinis išlyginimas. Rašto atpažinimas: k-artimiausio kaimyno metodas

    Subtitrai

Nurodymai modelio atpažinimui

Galima išskirti dvi pagrindines kryptis:

  • Gyvų daiktų turimų atpažinimo gebėjimų tyrimas, jų paaiškinimas ir modeliavimas;
  • Įrenginių, skirtų individualioms taikomosios paskirties problemoms spręsti, konstravimo teorijos ir metodų sukūrimas.

Oficialus problemos pareiškimas

Modelių atpažinimas – tai šaltinio duomenų priskyrimas tam tikrai klasei, identifikuojant reikšmingus požymius, apibūdinančius šiuos duomenis iš bendros nesvarbių duomenų masės.

Nustatydami atpažinimo problemas, jie bando naudoti matematinė kalba, siekiantis – priešingai dirbtinių neuroninių tinklų teorijoje, kurios pagrindas yra rezultato gavimas eksperimento būdu – eksperimentą pakeisti loginiu samprotavimu ir matematiniai įrodymai.

Klasikinė modelio atpažinimo problemos formuluotė: pateikta objektų rinkinys. Reikia atlikti jų klasifikaciją. Aibę vaizduoja poaibiai, vadinami klasėmis. Pateikiama: informacija apie klases, viso rinkinio aprašymas ir informacijos apie objektą, kurio priklausymas konkrečiai klasei nežinomas, aprašymas. Remiantis turima informacija apie objekto klases ir aprašymą, reikia nustatyti, kuriai klasei šis objektas priklauso.

Vienspalviai vaizdai dažniausiai atsižvelgiama į modelio atpažinimo problemas, todėl vaizdą galima laikyti funkcija plokštumoje. Jei laikysime tašką, nustatytą plokštumoje T (\displaystyle T), kur funkcija išreiškia savo charakteristikas kiekviename vaizdo taške – ryškumą, skaidrumą, optinis tankis, tada tokia funkcija yra formalus vaizdo įrašymas.

Visų galimų funkcijų rinkinys f (x, y) (\displaystyle f(x,y)) ant paviršiaus T (\displaystyle T)- yra visų vaizdų rinkinio modelis X (\displaystyle X). Pristatome koncepciją panašumų tarp vaizdų galite atlikti atpažinimo užduotį. Konkretus tokio pareiškimo tipas labai priklauso nuo tolesnių pripažinimo etapų pagal tam tikrą metodą.

Kai kurie grafinio modelio atpažinimo būdai

Optiniam rašto atpažinimui galite naudoti paieškos per objekto vaizdą skirtingais kampais, mastelius, poslinkius ir tt metodą. Raidėms reikia rūšiuoti pagal šriftą, šrifto savybes ir kt.

Antrasis būdas yra rasti objekto kontūrą ir ištirti jo savybes (jungiamumą, kampų buvimą ir kt.).

Kitas būdas yra naudoti dirbtinius neuroninius tinklus. Šis metodas reikalauja arba didelis kiekis atpažinimo užduoties pavyzdžiai (su teisingais atsakymais), arba speciali struktūra neuroninis tinklas, atsižvelgiant į šios užduoties specifiką.

Perceptronas kaip modelio atpažinimo metodas

F. Rosenblatt, supažindindamas su smegenų modelio koncepcija, kurios užduotis – parodyti, kaip kai kuriose fizinę sistemą, kurių struktūra ir funkcinės savybės yra žinomos, gali atsirasti psichologiniai reiškiniai, aprašė paprasčiausius diskriminacijos eksperimentus. Šie eksperimentai yra visiškai susiję su modelio atpažinimo metodais, tačiau skiriasi tuo, kad sprendimo algoritmas nėra deterministinis.

Paprasčiausias eksperimentas, kurio pagrindu galite gauti psichologinį prasminga informacija apie kokią nors sistemą, susiveda į tai, kad modelis pateikiamas su dviem skirtingais dirgikliais ir turi į juos reaguoti skirtingais būdais. Tokio eksperimento tikslas gali būti ištirti galimybę spontaniškai juos diskriminuoti sistema, kai eksperimentuotojas nesikiša, arba, atvirkščiai, ištirti priverstinę diskriminaciją, kai eksperimentuotojas siekia išmokyti sistemą atlikti reikiamą klasifikaciją.

Eksperimente su perceptronų mokymu dažniausiai pateikiama tam tikra vaizdų seka, į kurią įtraukiami kiekvienos išskirtinos klasės atstovai. Pagal tam tikrą atminties modifikavimo taisyklę sustiprinamas teisingas atsako pasirinkimas. Tada perceptronui pateikiamas valdymo dirgiklis ir tikimybė gauti teisinga reakcija už paskatinimus šios klasės. Priklausomai nuo to, ar pasirinktas valdymo stimulas sutampa, ar nesutampa su vienu iš vaizdų, kurie buvo naudojami treniruočių sekoje, gaunami skirtingi rezultatai:

  1. Jei kontrolinis dirgiklis nesutampa nei su vienu treniruočių dirgikliu, tai eksperimentas siejamas ne tik su gryna diskriminacija, bet apima ir elementus apibendrinimai.
  2. Jei kontrolinis dirgiklis sužadina tam tikrą jutimo elementų rinkinį, visiškai kitokį nei tie elementai, kurie buvo aktyvuoti anksčiau pateiktų tos pačios klasės dirgiklių įtakoje, tada eksperimentas yra tyrimas. grynas apibendrinimas.

Perceptronai neturi gryno apibendrinimo gebėjimo, tačiau jie gana patenkinamai veikia diskriminacijos eksperimentuose, ypač jei valdymo stimulas pakankamai artimas vienam iš vaizdų, su kuriais perceptronas jau yra sukaupęs tam tikrą patirtį.

Modelių atpažinimo problemų pavyzdžiai

  • Brūkšninio kodo atpažinimas
  • Valstybinio numerio atpažinimas
  • Vaizdo atpažinimas
  • Vietos atpažinimas Žemės pluta, kuriame yra telkiniai

Ir ženklai. Tokios problemos gana dažnai išsprendžiamos, pavyzdžiui, kertant ar pravažiuojant gatvę pagal šviesoforą. Šviečiančio šviesoforo spalvos atpažinimas ir kelių eismo taisyklių žinojimas leidžia priimti teisingą sprendimą, ar šiuo metu galite ar negalite pereiti gatvę.

Biologinės evoliucijos procese daugelis gyvūnų sprendė problemas savo regos ir klausos aparato pagalba. modelio atpažinimas pakankamai gerai. Dirbtinių sistemų kūrimas modelio atpažinimas išlieka sudėtinga teorinė ir techninė problema. Tokio pripažinimo poreikis iškyla įvairiose srityse – nuo ​​karinių reikalų ir saugumo sistemų iki visų rūšių analoginių signalų skaitmeninimo.

Tradiciškai modelio atpažinimo užduotys įtraukiamos į dirbtinio intelekto užduočių spektrą.

Nurodymai modelio atpažinimui

Galima išskirti dvi pagrindines kryptis:

  • Gyvų būtybių turimų atpažinimo gebėjimų tyrimas, jų aiškinimas ir modeliavimas;
  • Įrenginių, skirtų individualioms taikomųjų programų problemoms spręsti, konstravimo teorijos ir metodų sukūrimas.

Oficialus problemos pareiškimas

Modelių atpažinimas – tai šaltinio duomenų priskyrimas tam tikrai klasei, identifikuojant reikšmingus požymius, apibūdinančius šiuos duomenis iš bendros nesvarbių duomenų masės.

Nustatydami atpažinimo problemas, jie bando naudoti matematinę kalbą, bandydami, kitaip nei dirbtinių neuroninių tinklų teorijoje, kurios pagrindas yra rezultato gavimas eksperimento būdu, eksperimentą pakeisti loginiu samprotavimu ir matematiniu įrodymu.

Vienspalviai vaizdai dažniausiai atsižvelgiama į modelio atpažinimo problemas, todėl vaizdą galima laikyti funkcija plokštumoje. Jei laikysime tašką, nustatytą plokštumoje T, kur funkcija x(x,y) kiekviename vaizdo taške išreiškia savo charakteristikas – ryškumą, skaidrumą, optinį tankį, tuomet tokia funkcija yra formalus vaizdo įrašymas.

Visų galimų funkcijų rinkinys x(x,y) ant paviršiaus T- yra visų vaizdų rinkinio modelis X. Pristatome koncepciją panašumų tarp vaizdų galite atlikti atpažinimo užduotį. Konkretus tokio teiginio tipas labai priklauso nuo vėlesnių atpažinimo etapų pagal vieną ar kitą požiūrį.

Rašto atpažinimo metodai

Optiniam rašto atpažinimui galite naudoti paieškos per objekto vaizdą skirtingais kampais, mastelius, poslinkius ir tt metodą. Raidėms reikia rūšiuoti pagal šriftą, šrifto savybes ir kt.

Antrasis būdas yra rasti objekto kontūrą ir ištirti jo savybes (jungiamumą, kampų buvimą ir kt.).

Kitas būdas yra naudoti dirbtinius neuroninius tinklus. Šis metodas reikalauja arba daug atpažinimo užduoties pavyzdžių (su teisingais atsakymais), arba specialios neuroninio tinklo struktūros, kuri atsižvelgia į šios užduoties specifiką.

Perceptronas kaip modelio atpažinimo metodas

F. Rosenblatt, pristatydamas smegenų modelio koncepciją, kurio užduotis yra parodyti, kaip kokioje nors fizinėje sistemoje, kurios struktūra ir funkcinės savybės yra žinomos, gali atsirasti psichologiniai reiškiniai, – jis apibūdino paprasčiausius. diskriminacijos eksperimentai. Šie eksperimentai yra visiškai susiję su modelio atpažinimo metodais, tačiau skiriasi tuo, kad sprendimo algoritmas nėra deterministinis.

Paprasčiausias eksperimentas, iš kurio galima gauti psichologiškai reikšmingos informacijos apie tam tikrą sistemą, susiveda į tai, kad modelis pateikiamas su dviem skirtingais dirgikliais ir turi į juos reaguoti skirtingai. Tokio eksperimento tikslas gali būti ištirti galimybę spontaniškai juos diskriminuoti sistema, kai eksperimentuotojas nesikiša, arba, atvirkščiai, ištirti priverstinę diskriminaciją, kai eksperimentuotojas siekia išmokyti sistemą atlikti reikiamą klasifikaciją.

Eksperimente su perceptronų mokymu dažniausiai pateikiama tam tikra vaizdų seka, į kurią įtraukiami kiekvienos išskirtinos klasės atstovai. Pagal tam tikrą atminties modifikavimo taisyklę sustiprinamas teisingas atsako pasirinkimas. Tada perceptronui pateikiamas kontrolinis dirgiklis ir nustatoma tikimybė gauti teisingą atsaką į tam tikros klasės dirgiklius. Priklausomai nuo to, ar pasirinktas valdymo stimulas sutampa, ar nesutampa su vienu iš vaizdų, kurie buvo naudojami treniruočių sekoje, gaunami skirtingi rezultatai:

  • 1. Jeigu kontrolinis dirgiklis nesutampa nei su vienu iš treniruočių dirgikliu, tai eksperimentas siejamas ne tik su gryna diskriminacija, bet apima ir elementus apibendrinimai.
  • 2. Jei kontrolinis dirgiklis sužadina tam tikrą jutimo elementų rinkinį, visiškai kitokį nei tie elementai, kurie buvo aktyvuoti anksčiau pateiktų tos pačios klasės dirgiklių įtakoje, tada eksperimentas yra tyrimas. grynas apibendrinimas .

Perceptronai neturi gryno apibendrinimo gebėjimo, tačiau jie gana patenkinamai veikia diskriminacijos eksperimentuose, ypač jei valdymo stimulas pakankamai artimas vienam iš vaizdų, su kuriais perceptronas jau yra sukaupęs tam tikrą patirtį.

Modelių atpažinimo problemų pavyzdžiai

  • Laiškų atpažinimas.
  • Brūkšninio kodo atpažinimas.
  • Valstybinio numerio atpažinimas.
  • Veido atpažinimas.
  • Kalbos atpažinimas.
  • Vaizdo atpažinimas.
  • Vietinių žemės plutos sričių, kuriose yra naudingųjų iškasenų telkiniai, atpažinimas.

Raštų atpažinimo programos

taip pat žr

Pastabos

Nuorodos

  • Jurijus Lifshitsas. Kursas „Šiuolaikinės teorinės informatikos problemos“ – paskaitos apie statistiniais metodais vaizdo atpažinimas, veido atpažinimas, teksto klasifikavimas
  • Modelių atpažinimo tyrimų žurnalas

Literatūra

  • David A. Forsythe, Jean Pons Kompiuterinis matymas. Šiuolaikinis požiūris= Kompiuterinė vizija: modernus požiūris. - M.: "Williams", 2004. - P. 928. - ISBN 0-13-085198-1
  • George'as Stockmanas, Linda Shapiro Kompiuterinė vizija = Computer Vision. - M.: Binomas. Žinių laboratorija, 2006. - P. 752. - ISBN 5947743841

Wikimedia fondas. 2010 m.

- moksliškai technologijų srityje techninę kryptį susijęs su metodų kūrimu ir sistemų (įskaitant kompiuterines) konstravimu, siekiant nustatyti tam tikro objekto (objekto, proceso, reiškinio, situacijos, signalo) priklausymą vienam iš pažangių... ... Didysis enciklopedinis žodynas

Vienas iš naujų regionų kibernetika. R. o teorijos turinys. yra kelioms klasėms priklausančių objektų (vaizdų) savybių ekstrapoliacija į objektus, kurie tam tikra prasme yra artimi jiems. Paprastai mokant automatą R. o. galima...... Geologijos enciklopedija

Anglų atpažinimas, vaizdas; vokiečių kalba Gestalt alterkennung. Matematinės kibernetikos šaka, kurianti principus ir metodus, kaip klasifikuoti ir identifikuoti objektus, aprašytus baigtiniu juos apibūdinančių požymių rinkiniu. Antinazi. Enciklopedija...... Sociologijos enciklopedija

Šablonų atpažinimas- sudėtingų objektų tyrimo kompiuteriu metodas; susideda iš funkcijų parinkimo ir algoritmų bei programų, leidžiančių kompiuteriams automatiškai klasifikuoti objektus pagal šias savybes, kūrimą. Pavyzdžiui, nustatykite, kuris ... ... Ekonomikos ir matematikos žodynas

- (techninė), mokslinė ir techninė kryptis, susijusi su metodų kūrimu ir sistemų (įskaitant kompiuterines) konstravimu, siekiant nustatyti tam tikro objekto (objekto, proceso, reiškinio, situacijos, signalo) priklausymą vienam iš pažangos. ... ... enciklopedinis žodynas

RAŠTO ATPAŽINIMAS- matematinės kibernetikos skyrius, kuriame plėtojami klasifikavimo metodai, taip pat objektų, reiškinių, procesų, signalų, situacijų identifikavimas visų tų objektų, kuriuos galima apibūdinti baigtiniu tam tikrų ženklų ar savybių rinkiniu,... ... Rusijos sociologinė enciklopedija

modelio atpažinimas- 160 modelių atpažinimas: vaizdų ir konfigūracijų formų identifikavimas naudojant automatines priemones

  • Pamoka

Jau seniai norėjau parašyti bendrą straipsnį, kuriame būtų patys vaizdo atpažinimo pagrindai, savotiškas pagrindinių metodų vadovas, nurodantis, kada juos naudoti, kokias problemas jie išsprendžia, ką galima padaryti vakare atsiklaupus ir kas yra geriau negalvoti apie tai, kad neturite 20 žmonių komandos.

Kai kuriuos straipsnius apie optinį atpažinimą rašau jau seniai, todėl žmonės man rašo porą kartų per mėnesį įvairių žmonių su klausimais šia tema. Kartais apima jausmas, kad gyveni su jais skirtingi pasauliai. Viena vertus, jūs suprantate, kad asmuo greičiausiai yra susijusios temos profesionalas, tačiau labai mažai žino apie optinio atpažinimo metodus. O labiausiai erzina tai, kad jis bando pritaikyti metodą iš šalia esančios žinių srities, kuris yra logiškas, bet ne iki galo veikia Vaizdo atpažinimo sistemoje, tačiau to nesupranta ir labai įsižeidžia, jei pradedi jam ką nors pasakoti iš. pačius pagrindus. O turint galvoje, kad pasakojimas nuo pagrindų atima daug laiko, kurio dažnai nėra, darosi dar liūdniau.

Šis straipsnis skirtas tam, kad vaizdų atpažinimo metodais niekada nedirbęs žmogus per 10-15 minučių savo galvoje susikurtų tam tikrą pagrindinį temą atitinkantį pasaulio vaizdą ir suprastų, kuria kryptimi reikia kapstytis. Daugelis čia aprašytų metodų yra taikomi radarui ir garso apdorojimui.
Pradėsiu nuo kelių principų, kuriuos visada pradedame pasakyti potencialiam klientui arba asmeniui, norinčiam pradėti optinio atpažinimo funkciją:

  • Spręsdami problemą visada eikite nuo paprasčiausio. Žmogui uždėti žymą yra daug lengviau oranžinė spalva nei sekti žmogų, išryškinant jį kaskadomis. Daug lengviau paimti fotoaparatą su didesne raiška, nei sukurti super raiškos algoritmą.
  • Griežta problemos formuluotė optinio atpažinimo metoduose yra daug svarbesnė nei uždaviniuose sistemos programavimas: vienas perteklinis žodis gali pridėti 50% darbo prie techninių specifikacijų.
  • Universalių atpažinimo problemų sprendimų nėra. Negalite sukurti algoritmo, kuris tiesiog „atpažins bet kokį užrašą“. Ženklas gatvėje ir teksto lapas yra esminiai dalykai skirtingi objektai. Tikriausiai tai galima padaryti bendrasis algoritmas(geras pavyzdys iš „Google“), tačiau tai pareikalaus daug didelės komandos darbo ir susideda iš dešimčių skirtingų paprogramių.
  • OpenCV yra Biblija, kuri turi daug metodų ir gali išspręsti 50% beveik bet kokios problemos, tačiau OpenCV yra tik maža dalis to, ką iš tikrųjų galima padaryti. Viename tyrime buvo parašytos išvados: „Problemos negalima išspręsti naudojant OpenCV metodus, todėl ji yra neišsprendžiama“. Stenkitės to išvengti, netingėkite ir kiekvieną kartą blaiviai įvertinkite esamą užduotį nuo nulio, nenaudodami OpenCV šablonų.
Labai sunku duoti kokį nors universalų patarimą ar pasakyti, kaip sukurti kažkokią struktūrą, aplink kurią būtų galima sukurti savavališkų kompiuterinio regėjimo problemų sprendimą. Šio straipsnio tikslas – susisteminti, ką galima naudoti. Pabandysiu jį sulaužyti esamus metodusį tris grupes. Pirmoji grupė yra išankstinis filtravimas ir vaizdo paruošimas. Antroji grupė yra loginis filtravimo rezultatų apdorojimas. Trečioji grupė – sprendimų priėmimo algoritmai, pagrįsti loginiu apdorojimu. Ribos tarp grupių yra labai savavališkos. Norint išspręsti problemą, ne visada reikia naudoti visų grupių metodus, kartais pakanka dviejų, o kartais net vieno.

Čia pateiktas metodų sąrašas nėra išsamus. Siūlau papildyti komentaruose kritiniais metodais, kurio nerašiau ir kiekvienam priskiriu po 2-3 lydinčius žodžius.

1 dalis. Filtravimas

Šioje grupėje įdėjau metodus, kurie leidžia pasirinkti vaizdų dominančias sritis jų neanalizuojant. Dauguma iš šių metodų visuose vaizdo taškuose taiko tam tikrą pavienę transformaciją. Filtravimo lygiu vaizdo analizė neatliekama, tačiau taškai, kurie filtruojami, gali būti laikomi sritimis su ypatingos savybės.
Binarizavimas pagal slenkstį, histogramos srities pasirinkimas
Paprasčiausias transformavimas yra vaizdo binarinimas pagal slenkstį. RGB ir pilkos spalvos vaizdams slenkstis yra spalvos reikšmė. Susitikti idealios problemos, kurioje pakanka tokios transformacijos. Tarkime, kad norite automatiškai pasirinkti objektus baltame popieriaus lape:




Slenksčio, prie kurio įvyksta binarizacija, pasirinkimas daugiausia lemia patį binarizacijos procesą. Šiuo atveju vaizdas buvo dvejetainis pagal vidutinę spalvą. Paprastai dvejetainis nustatymas atliekamas naudojant algoritmą, kuris adaptyviai parenka slenkstį. Toks algoritmas gali būti lūkesčių arba režimo pasirinkimas. Arba galite pasirinkti didžiausią histogramos smailę.

Binarizacija gali suteikti labai įdomių rezultatų dirbant su histogramomis, įskaitant situaciją, kai vaizdą laikome ne RGB, o HSV formatu. Pavyzdžiui, segmentuokite dominančias spalvas. Šiuo principu galite sukurti ir žymų detektorių, ir žmogaus odos detektorių.
Klasikinis filtravimas: Furjė, žemųjų dažnių filtras, aukšto dažnio filtras
Klasikiniai radaro filtravimo ir signalų apdorojimo metodai gali būti sėkmingai taikomi atliekant įvairias šablono atpažinimo užduotis. Tradicinis metodas radare, kuris vaizduose beveik niekada nenaudojamas gryna forma, yra Furjė transformacija (konkrečiau, FFT). Viena iš nedaugelio išimčių, kai naudojama vienmatė Furjė transformacija, yra vaizdo glaudinimas. Vaizdo analizei vienmatės transformacijos paprastai neužtenka, reikia naudoti daug daugiau išteklių reikalaujančią dvimatę transformaciją.

Nedaug žmonių iš tikrųjų tai apskaičiuoja, paprastai daug greičiau ir lengviau naudoti dominančios srities konvoliuciją su paruoštu filtru, suderintu aukštiems (HPF) arba žemiems (LPF) dažniams. Šis metodas, žinoma, neleidžia atlikti spektro analizės, bet konkreti užduotis Vaizdo apdorojimui dažniausiai reikia ne analizės, o rezultatų.


Labiausiai paprasti pavyzdžiai filtrai, pabrėžiantys žemus dažnius (Gauso filtras) ir aukšti dažniai(Gaboro filtras).
Kiekvienam vaizdo taškui parenkamas langas ir padauginamas su tokio pat dydžio filtru. Tokios konvoliucijos rezultatas yra nauja taško reikšmė. Diegiant žemų dažnių filtrus ir aukšto dažnio filtrus gaunami tokio tipo vaizdai:



Bangelės
Bet ką daryti, jei signalo konvoliucijai naudosime kokią nors savavališką charakteristikos funkciją? Tada jis vadinsis „Wavelet transform“. Šis bangelių apibrėžimas nėra teisingas, tačiau tradiciškai daugelyje komandų bangelių analizė yra savavališko modelio paieška vaizde naudojant konvoliuciją su šio modelio modeliu. Yra klasikinių funkcijų rinkinys, naudojamas bangelių analizėje. Tai apima Haar bangelę, Morlet bangelę, Meksikos skrybėlių bangelę ir kt. Haar primityvai, apie kuriuos buvo keli mano ankstesni straipsniai (,), yra susiję su tokiomis dvimatės erdvės funkcijomis.


Aukščiau yra 4 klasikinių bangelių pavyzdžiai. 3 dimensijos Haar bangelės, 2 dimensijos Meyer bangelės, Meksikos kepurės bangelės, Daubechies bangelės. Geras pavyzdys Naudojant išplėstinį bangelių aiškinimą, kyla problemų, kaip rasti akinimo akyje, kai bangelė yra pats akinimas:

Klasikinės bangelės paprastai naudojamos jų klasifikavimui arba klasifikavimui (bus aprašyta toliau).
Koreliacija
Po tokios laisvos bangelių interpretacijos iš mano pusės verta paminėti tikrąją koreliaciją, kuri yra jų pagrindas. Tai nepakeičiamas įrankis filtruojant vaizdus. Klasikinė programa- vaizdo srauto koreliacija, siekiant rasti poslinkius arba optinius srautus. Paprasčiausias poslinkio detektorius tam tikra prasme taip pat yra skirtumo koreliatorius. Ten, kur vaizdai nesiderino, buvo judėjimas.

Filtravimo funkcijos
Įdomi filtrų klasė yra funkcijų filtravimas. Tai yra grynai matematiniai filtrai, leidžiantys aptikti paprastus matematinė funkcija ant atvaizdo (tiesi linija, parabolė, apskritimas). Konstruojamas kaupiamasis vaizdas, kuriame kiekvienam taškui originalus vaizdas nubraižoma daug jį generuojančių funkcijų. Klasikiškiausia transformacija yra Hough transformacija linijoms. Šioje transformacijoje kiekvienam taškui (x;y) nubrėžiama tiesės y=ax+b taškų (a;b), kurių lygybė yra teisinga, rinkinys. Gaunate gražių nuotraukų:


(pirmas pliusas yra tam, kuris pirmas randa laimikį paveikslėlyje ir šį apibrėžimą ir paaiškina, antrasis pliusas yra tam, kuris pirmas pasako, kas čia parodyta)
Hough transformacija leidžia rasti bet kokias parametrizuojamas funkcijas. Pavyzdžiui, ratai. Yra modifikuota transformacija, leidžianti ieškoti bet kokios . Matematikai siaubingai mėgsta šią transformaciją. Bet apdorojant vaizdus, ​​deja, tai ne visada veikia. Labai lėtas veikimo greitis, labai didelis jautrumas binarizacijos kokybei. Net ir idealiose situacijose man labiau patiko tenkinti kitus metodus.
Tiesių linijų Hough transformacijos analogas yra Radono transformacija. Jis apskaičiuojamas naudojant FFT, kuris suteikia našumo padidėjimą situacijoje, kai yra daug taškų. Be to, jį galima pritaikyti nebinarizuotam vaizdui.
Kontūrų filtravimas
Atskira filtrų klasė yra kraštinių ir kontūrų filtravimas. Kontūrai yra labai naudingi, kai norime pereiti nuo darbo su vaizdu prie darbo su tame vaizde esančiais objektais. Kai objektas yra gana sudėtingas, bet gerai išsiskiriantis, tada dažnai vienintelis kelias dirbant su juo reikia paryškinti jo kontūrus. Yra keletas algoritmų, kurie išsprendžia kontūrų filtravimo problemą:

Dažniausiai naudojamas Canny, kuris veikia gerai ir kurio įdiegimas yra OpenCV (yra ir Sobel, bet prasčiau ieško kontūrų).



Kiti filtrai
Aukščiau yra filtrai, kurių modifikacijos padeda išspręsti 80-90% problemų. Tačiau be jų yra naudojami retesni filtrai vietines užduotis. Tokių filtrų yra dešimtys, visų neišvardinsiu. Įdomūs yra iteraciniai filtrai (pavyzdžiui), taip pat keteros ir kreivės transformacijos, kurios yra klasikinio bangelių filtravimo ir analizės radono transformacijos lauke sintezė. Beamlet transformacija puikiai veikia bangletės transformacijos ribose ir loginė analizė, leidžiantis pasirinkti kontūrus:

Tačiau šios transformacijos yra labai specifinės ir pritaikytos retoms užduotims.

2 dalis. Loginis filtravimo rezultatų apdorojimas

Filtruojant gaunamas duomenų rinkinys, tinkamas apdoroti. Tačiau dažnai negalite tiesiog paimti ir naudoti šių duomenų jų neapdoroję. Šioje dalyje bus keletas klasikiniai metodai, leidžiantis nuo vaizdo pereiti prie objektų savybių arba prie pačių objektų.
Morfologija
Perėjimas nuo filtravimo prie logikos, mano nuomone, yra metodai matematinė morfologija( , ). Iš esmės tai yra paprasčiausios dvejetainių vaizdų auginimo ir ardymo operacijos. Šie metodai leidžia pašalinti triukšmą iš dvejetainio vaizdo padidinant arba sumažinant esamus elementus. Yra kontūravimo algoritmai, pagrįsti matematine morfologija, tačiau dažniausiai naudojami tam tikri hibridiniai algoritmai arba algoritmų derinys.
Kontūrų analizė
Filtravimo skyriuje jau buvo paminėti ribų gavimo algoritmai. Gautos ribos gana paprastai paverčiamos kontūrais. Naudojant „Canny“ algoritmą, tai vyksta automatiškai; Galite gauti dvejetainio algoritmo kontūrą, pavyzdžiui, naudodami vabalo algoritmą.
Kontūras yra unikali objekto savybė. Tai dažnai leidžia atpažinti objektą pagal jo kontūrą. Yra galingas matematinis aparatas, leidžiantis tai padaryti. Prietaisas vadinamas kontūrų analize (,).

Tiesą sakant, aš niekada negalėjau pritaikyti kontūrų analizės tikros problemos. Reikalingos pernelyg idealios sąlygos. Arba nėra ribos, arba per daug triukšmo. Bet jei jums reikia ką nors atpažinti idealiomis sąlygomis, kontūrų analizė yra puikus pasirinkimas. Veikia labai greitai, graži matematika ir aiški logika.
Ypatingi taškai
Vienetiniai taškai yra unikalios objekto savybės, leidžiančios objektą palyginti su pačiu savimi arba su panašiomis objektų klasėmis. Yra kelios dešimtys tokių taškų nustatymo būdų. Kai kurie metodai pabrėžia vienetiniai taškai gretimuose kadruose, kai kurie per didelis tarpas laiko ir pasikeitus apšvietimui, kai kurie leidžia rasti specialių taškų, kurie tokie išlieka net ir sukant objektą. Pradėkime nuo metodų, leidžiančių rasti specialius taškus, kurie nėra tokie stabilūs, bet greitai apskaičiuojami, o tada eisime vis sudėtingiau:
Pirma klasė. Specialūs taškai, kurie yra stabilūs per kelias sekundes. Tokie taškai naudojami nukreipti objektą tarp gretimų vaizdo kadrų arba sujungti vaizdus iš gretimų kamerų. Tokie taškai apima vietinius vaizdo maksimumus, vaizdo kampus (geriausias detektorius galbūt yra Chariso detektorius), taškus, kuriuose pasiekiama didžiausia sklaida, tam tikrus gradientus ir kt.
Antra klasė. Specialūs taškai, kurie yra stabilūs keičiantis apšvietimui ir nedideliems objekto judesiams. Tokie taškai pirmiausia skirti mokymui ir vėlesniam objektų tipų klasifikavimui. Pavyzdžiui, pėsčiųjų klasifikatorius arba veido klasifikatorius yra sistemos, sukurtos būtent ant tokių taškų, produktas. Kai kurios iš anksčiau paminėtų bangelių gali būti tokių taškų pagrindas. Pavyzdžiui, Haar primityvai, ieškokite svarbiausių elementų, ieškokite kitų specifinių funkcijų. Šie taškai apima tuos, kurie rasti kryptinių gradientų histogramos (HOG) metodu.
Trečia klasė. Stabilūs taškai.Žinau tik apie du visišką stabilumą užtikrinančius metodus ir apie jų modifikacijas. Šis ir . Jie leidžia rasti specialius taškus net sukant vaizdą. Tokių taškų skaičiavimas užtrunka ilgiau, lyginant su kitais metodais, tačiau to pakanka ribotas laikas. Deja, šie metodai yra patentuoti. Nors Rusijoje neįmanoma patentuoti algoritmų, todėl naudokite jį vidaus rinkai.

3 dalis. Mokymai

Trečioji pasakojimo dalis bus skirta metodams, kurie tiesiogiai neveikia su įvaizdžiu, bet leidžia priimti sprendimus. Daugiausia įvairių metodų mašininis mokymasis ir sprendimų priėmimas. Neseniai Yandyx paskelbė Habr šia tema, tai labai geras pasirinkimas. Čia jis yra tekstinėje versijoje. Norint rimtai studijuoti temą, labai rekomenduoju juos pažiūrėti. Čia pabandysiu apibūdinti kelis pagrindinius metodus, naudojamus konkrečiai modelio atpažinimui.
80% situacijų mokymosi atpažinimo užduotyje esmė yra tokia:
Yra bandomasis pavyzdys, kuriame yra keletas objektų klasių. Tebūnie tai žmogaus buvimas/nebuvimas nuotraukoje. Kiekvienam vaizdui yra aibė funkcijų, kurias paryškino kuri nors funkcija, ar tai būtų Haar, HOG, SURF ar kokia nors banga. Mokymosi algoritmas turi sukurti modelį, pagal kurį jis galės analizuoti naują vaizdą ir nuspręsti, kuris objektas yra vaizde.
Kaip tai daroma? Kiekvienas bandomasis vaizdas yra taškas funkcijų erdvėje. Jo koordinatės yra kiekvienos vaizdo ypatybės svoris. Tebūnie mūsų ženklai: „Akių buvimas“, „Nosies buvimas“, „Dviejų rankų buvimas“, „Ausų buvimas“ ir tt... Visus šiuos ženklus išryškinsime naudodami turimus detektorius, kurie yra išmokyti. kūno dalys, panašios į žmogaus Žmogui tokioje erdvėje teisingas taškas būtų . Beždžionei – taškas arkliui. Klasifikatorius mokomas naudojant pavyzdžių pavyzdį. Tačiau ne visose nuotraukose buvo matyti rankos, kitose nebuvo akių, o trečioje beždžionė dėl klasifikatoriaus klaidos turėjo žmogaus nosį. Išmokytas žmogaus klasifikatorius automatiškai padalina objektų erdvę taip, kad sakytų: jei pirmoji savybė yra diapazone 0,5 Iš esmės klasifikatoriaus tikslas yra požymių erdvėje nubrėžti sritis, būdingas klasifikavimo objektams. Taip atrodys vieno iš klasifikatorių (AdaBoost) nuoseklus atsakymo priartinimas dvimatėje erdvėje:


Yra daug klasifikatorių. Kiekvienas iš jų geriau atlieka tam tikrą užduotį. Klasifikatoriaus parinkimas konkrečiai užduočiai iš esmės yra menas. Štai keletas gražių nuotraukų šia tema.
Paprastas dėklas, vienmatis atskyrimas
Pažiūrėkime į paprasčiausio klasifikavimo atvejo pavyzdį, kai požymio erdvė yra vienmatė ir reikia atskirti 2 klases. Situacija pasitaiko dažniau, nei manote: pavyzdžiui, kai reikia atskirti du signalus arba palyginti modelį su pavyzdžiu. Pateikiame mokymo pavyzdį. Taip sukuriamas vaizdas, kuriame X ašis yra panašumo matas, o Y ašis – įvykių su tokiu matu skaičius. Kai norimas objektas yra panašus į save, gaunamas kairysis Gausas. Kai neatrodo, tai yra teisinga. X=0,4 reikšmė atskiria imtį taip, kad neteisingas sprendimas sumažintų tikimybę, kad bus priimtas neteisingas sprendimas. Tokio separatoriaus paieška yra klasifikavimo užduotis.


Maža pastaba. Kriterijus, kuris sumažina klaidą, ne visada bus optimalus. Šis grafikas yra tikrosios rainelės atpažinimo sistemos grafikas. Tokiai sistemai kriterijus pasirenkamas siekiant sumažinti tikimybę, kad neįgaliotas asmuo klaidingai pateks į objektą. Ši tikimybė vadinama „I tipo klaida“, „klaidingo pavojaus tikimybe“, „klaidingai teigiama“. Literatūroje anglų kalba „False Access Rate“.
) AdaBusta yra vienas iš labiausiai paplitusių klasifikatorių. Pavyzdžiui, ant jo pastatyta Haar kaskada. Paprastai naudojamas, kai reikalinga dvejetainė klasifikacija, tačiau niekas netrukdo treniruotis didesniam klasių skaičiui.
SVM ( , , , ) Vienas iš galingiausių klasifikatorių, turintis daugybę įgyvendinimų. Iš esmės, atliekant mokymosi užduotis, su kuriomis susidūriau, jis veikė panašiai kaip Adabusta. Manoma, kad jis yra gana greitas, tačiau jo mokymas yra sunkesnis nei Adabusta ir reikalauja pasirinkti tinkamą branduolį.

Taip pat yra neuroniniai tinklai ir regresija. Tačiau norint juos trumpai klasifikuoti ir parodyti, kuo jie skiriasi, mums reikia daug ilgesnio straipsnio.
________________________________________________
Tikiuosi, kad man pavyko greitai apžvelgti naudojamus metodus, nesigilindamas į matematiką ir aprašymą. Gal kam nors tai padės. Nors, žinoma, straipsnis yra neišsamus ir nėra nė žodžio apie darbą su stereo vaizdais, nei apie LSM su Kalman filtru, nei apie adaptyvų Bayes požiūrį.
Jei jums patinka straipsnis, pabandysiu padaryti antrą dalį su pavyzdžiais, kaip sprendžiamos esamos ImageRecognition problemos.

Ir, galiausiai

Ką skaityti?
1) Man kažkada labai patiko B. Yane knyga „Skaitmeninis vaizdo apdorojimas“, kuri parašyta paprastai ir aiškiai, bet tuo pat metu pateikta beveik visa matematika. Tinka susipažinti su esamais metodais.
2) Žanro klasika – R. Gonzalez, R. Woods „Skaitmeninis vaizdo apdorojimas“. Kažkodėl man buvo sunkiau nei pirmasis. Daug mažiau matematikos, bet daugiau metodų ir paveikslėlių.
3) „Vaizdo apdorojimas ir analizė kompiuterinio regėjimo problemomis“ – parašyta pagal kursą, dėstomą vienoje iš Fizikos ir technologijų katedrų. Metodų ir jų detalių aprašymų yra labai daug. Tačiau, mano nuomone, knyga turi du didelius minusus: knygoje labai daug dėmesio skiriama programiniam paketui, kuris knygoje pateikiamas, per dažnai paprasto metodo aprašymas virsta matematinėmis džiunglėmis, iš kurių sunku išeiti; išvesti metodo struktūrinę schemą. Tačiau autoriai sukūrė patogią svetainę, kurioje pateikiamas beveik visas turinys - wiki.technicalvision.ru Pridėti žymų

Ar jums patiko straipsnis? Pasidalinkite su draugais!