Cele mai noi idei de recunoaștere a modelelor. Caz simplu, separare unidimensională

În general, se pot distinge trei metode de recunoaștere a modelelor: Metoda de enumerare. În acest caz, se face o comparație cu baza de date, unde pentru fiecare tip de obiect sunt prezentate toate modificările posibile ale afișajului. De exemplu, pentru recunoașterea optică a imaginii, puteți aplica metoda de enumerare a tipului unui obiect la diferite unghiuri, scări, deplasări, deformații etc. Pentru litere, trebuie să iterați peste font, proprietățile fontului etc. cazul recunoașterii imaginii sunetului, respectiv, o comparație cu unele modele cunoscute (de exemplu, un cuvânt rostit de mai multe persoane).

A doua abordare este o analiză mai profundă a caracteristicilor imaginii. În cazul recunoașterii optice, aceasta poate fi determinarea diferitelor caracteristici geometrice. Proba de sunet în acest caz este supusă analizei de frecvență, amplitudine etc.

Următoarea metodă este utilizarea rețelelor neuronale artificiale (ANN). Această metodă necesită fie un număr mare de exemple ale sarcinii de recunoaștere în timpul antrenamentului, fie o structură specială a rețelei neuronale care ține cont de specificul acestei sarcini. Cu toate acestea, se distinge prin eficiență și productivitate mai ridicate.

4. Istoricul recunoașterii modelelor

Să luăm în considerare pe scurt formalismul matematic al recunoașterii modelelor. Un obiect în recunoașterea modelelor este descris de un set de caracteristici de bază (trăsături, proprietăți). Principalele caracteristici pot fi de natură diferită: pot fi preluate dintr-o mulțime ordonată de tip linie reală, sau dintr-o mulțime discretă (care, însă, poate fi înzestrată și cu o structură). Această înțelegere a obiectului este în concordanță atât cu nevoia de aplicații practice ale recunoașterii modelelor, cât și cu înțelegerea noastră a mecanismului de percepție umană a unui obiect. Într-adevăr, credem că atunci când o persoană observă (măsoară) un obiect, informațiile despre acesta vin printr-un număr finit de senzori (canale analizate) către creier și fiecare senzor poate fi asociat cu caracteristica corespunzătoare a obiectului. Pe lângă caracteristicile care corespund măsurătorilor noastre ale obiectului, există și o caracteristică selectată, sau un grup de caracteristici, pe care le numim caracteristici de clasificare, iar aflarea valorilor acestora pentru un vector X dat este sarcina naturală. iar sistemele de recunoaștere artificială funcționează.

Este clar că, pentru a stabili valorile acestor caracteristici, este necesar să existe informații despre modul în care caracteristicile cunoscute sunt legate de cele clasificatoare. Informațiile despre această relație sunt date sub formă de precedente, adică un set de descrieri ale obiectelor cu valori cunoscute ale caracteristicilor de clasificare. Și conform acestor informații precedente, este necesară construirea unei reguli de decizie care să stabilească descrierea arbitrară a obiectului valorii caracteristicilor sale clasificatoare.

Această înțelegere a problemei recunoașterii modelelor a fost stabilită în știință încă din anii 50 ai secolului trecut. Și atunci s-a observat că o astfel de producție nu este deloc nouă. Metodele bine dovedite de analiză a datelor statistice, care au fost utilizate în mod activ pentru multe sarcini practice, cum ar fi, de exemplu, diagnosticarea tehnică, s-au confruntat cu o astfel de formulare și existau deja. Prin urmare, primii pași ai recunoașterii modelelor au trecut sub semnul abordării statistice, care a dictat problema principală.

Abordarea statistică se bazează pe ideea că spațiul inițial al obiectelor este un spațiu probabilistic, iar trăsăturile (caracteristicile) obiectelor sunt variabile aleatorii date pe acesta. Apoi, sarcina cercetătorului de date a fost să propună o ipoteză statistică despre distribuția caracteristicilor, sau mai degrabă despre dependența caracteristicilor de clasificare față de restul, din unele considerații. Ipoteza statistică, de regulă, a fost un set parametric de funcții de distribuție a caracteristicilor. O ipoteză statistică tipică și clasică este ipoteza normalității acestei distribuții (există o mare varietate de astfel de ipoteze în statistică). După formularea ipotezei, a rămas de testat această ipoteză pe date precedente. Această verificare a constat în alegerea unei distribuții din setul de distribuții dat inițial (parametrul ipotezei distribuției) și evaluarea fiabilității (intervalul de încredere) a acestei alegeri. De fapt, această funcție de distribuție a fost răspunsul la problemă, doar obiectul a fost clasificat nu în mod unic, ci cu unele probabilități de apartenență la clase. Statisticienii au dezvoltat, de asemenea, o justificare asimptotică pentru astfel de metode. Asemenea justificări s-au făcut după următoarea schemă: s-a stabilit o anumită calitate funcțională a alegerii distribuției (interval de încredere) și s-a demonstrat că odată cu creșterea numărului de precedente, alegerea noastră cu o probabilitate tinde spre 1 a devenit corectă în sensul acestui funcțional (interval de încredere tinde spre 0). Privind în perspectivă, putem spune că viziunea statistică a problemei recunoașterii s-a dovedit a fi foarte fructuoasă nu numai în ceea ce privește algoritmii dezvoltați (care includ metode de analiză cluster și discriminantă, regresie neparametrică etc.), dar și ulterior a condus Vapnik pentru a crea o teorie statistică profundă a recunoașterii .

Cu toate acestea, există un argument puternic în favoarea faptului că problemele de recunoaștere a modelelor nu se reduc la statistici. Orice astfel de problemă, în principiu, poate fi considerată din punct de vedere statistic, iar rezultatele rezolvării acesteia pot fi interpretate statistic. Pentru a face acest lucru, este necesar doar să presupunem că spațiul obiectelor problemei este probabilistic. Dar din punct de vedere al instrumentalismului, criteriul de succes al interpretării statistice a unei anumite metode de recunoaștere nu poate fi decât justificarea acestei metode în limbajul statisticii ca ramură a matematicii. Justificarea înseamnă aici dezvoltarea cerințelor de bază pentru problema care asigură succesul aplicării acestei metode. Cu toate acestea, în acest moment, pentru majoritatea metodelor de recunoaștere, inclusiv cele care au apărut direct în cadrul abordării statistice, astfel de justificări satisfăcătoare nu au fost găsite. În plus, algoritmii statistici cei mai des utilizați în acest moment, precum discriminantul liniar al lui Fisher, fereastra Parzen, algoritmul EM, cei mai apropiați vecini, ca să nu mai vorbim de rețelele de credințe bayesiene, au o natură euristică puternic pronunțată și pot avea interpretări diferite de cele statistice. Și, în sfârșit, la toate cele de mai sus, trebuie adăugat că, pe lângă comportamentul asimptotic al metodelor de recunoaștere, care este principala problemă a statisticii, practica recunoașterii ridică întrebări legate de complexitatea computațională și structurală a metodelor care depășesc cu mult. numai cadrul teoriei probabilităților.

În total, spre deosebire de aspirațiile statisticienilor de a considera recunoașterea tiparelor ca o secțiune a statisticii, idei complet diferite au intrat în practica și ideologia recunoașterii. Una dintre ele a fost cauzată de cercetări în domeniul recunoașterii modelelor vizuale și se bazează pe următoarea analogie.

După cum sa menționat deja, în viața de zi cu zi oamenii rezolvă în mod constant (adesea în mod inconștient) problemele de recunoaștere a diferitelor situații, imagini auditive și vizuale. O astfel de capacitate pentru computere este, în cel mai bun caz, o chestiune de viitor. Din aceasta, unii pionieri ai recunoașterii modelelor au ajuns la concluzia că rezolvarea acestor probleme pe computer ar trebui, în termeni generali, să simuleze procesele gândirii umane. Cea mai faimoasă încercare de a aborda problema din această parte a fost faimosul studiu al lui F. Rosenblatt asupra perceptronilor.

Pe la mijlocul anilor '50, se părea că neurofiziologii au înțeles principiile fizice ale creierului (în cartea „The New Mind of the King”, celebrul fizician teoretician britanic R. Penrose pune la îndoială interesant modelul rețelei neuronale a creierului, argumentând rolul esențial al efectelor mecanicii cuantice în funcționarea sa, deși, totuși, acest model a fost pus sub semnul întrebării încă de la început.Pe baza acestor descoperiri, F. Rosenblatt a dezvoltat un model pentru învățarea recunoașterii tiparelor vizuale, pe care l-a numit perceptronul lui Rosenblatt. este următoarea funcție (Fig. 1):

Fig 1. Schema Perceptronului

La intrare, perceptronul primește un vector obiect, care în lucrările lui Rosenblatt a fost un vector binar care arată care dintre pixelii ecranului este înnegrit de imagine și care nu. Mai mult, fiecare dintre semne este alimentat la intrarea neuronului, a cărui acțiune este o simplă multiplicare cu o anumită greutate a neuronului. Rezultatele sunt transmise ultimului neuron, care le adună și compară suma totală cu un anumit prag. În funcție de rezultatele comparației, obiectul de intrare X este recunoscut ca fiind necesar sau nu. Apoi, sarcina de a învăța recunoașterea modelelor a fost de a selecta greutățile neuronilor și valoarea pragului, astfel încât perceptronul să ofere răspunsuri corecte asupra imaginilor vizuale precedente. Rosenblatt credea că funcția rezultată ar fi bună la recunoașterea imaginii vizuale dorite chiar dacă obiectul de intrare nu se numără printre precedente. Din considerente bionice, a venit și cu o metodă de selectare a greutăților și a unui prag, asupra cărora nu ne vom opri. Să spunem doar că abordarea sa a avut succes într-o serie de probleme de recunoaștere și a dat naștere unei întregi linii de cercetare privind algoritmii de învățare bazați pe rețele neuronale, dintre care perceptronul este un caz special.

Mai mult, au fost inventate diverse generalizări ale perceptronului, funcția neuronilor a fost complicată: acum neuronii nu puteau doar să înmulțească numerele de intrare sau să le adauge și să compare rezultatul cu praguri, ci să le aplice funcții mai complexe. Figura 2 prezintă una dintre aceste complicații neuronale:

Orez. 2 Diagrama rețelei neuronale.

În plus, topologia rețelei neuronale ar putea fi mult mai complicată decât cea considerată de Rosenblatt, de exemplu, aceasta:

Orez. 3. Diagrama rețelei neuronale Rosenblatt.

Complicațiile au condus la o creștere a numărului de parametri ajustabili în timpul antrenamentului, dar, în același timp, au crescut capacitatea de a se adapta la tipare foarte complexe. Cercetările în acest domeniu se desfășoară acum în două domenii strâns legate - sunt studiate atât diverse topologii de rețea, cât și diferite metode de reglare.

Rețelele neuronale nu sunt în prezent doar un instrument pentru rezolvarea problemelor de recunoaștere a modelelor, ci au fost folosite în cercetările privind memoria asociativă și compresia imaginilor. Deși această linie de cercetare se suprapune puternic cu problemele de recunoaștere a modelelor, este o secțiune separată a ciberneticii. Pentru recunoaștere în acest moment, rețelele neuronale nu sunt altceva decât un set de mapări foarte specific, definit parametric, care în acest sens nu are avantaje semnificative față de multe alte modele de învățare similare care vor fi enumerate pe scurt mai jos.

În legătură cu această evaluare a rolului rețelelor neuronale pentru recunoașterea corectă (adică nu pentru bionică, pentru care sunt de o importanță capitală acum), aș dori să remarc următoarele: rețelele neuronale, fiind un obiect extrem de complex pentru matematică. analiza, cu utilizarea lor corectă, ne permit să găsim legi foarte netriviale în date. Dificultatea lor de analiză, în cazul general, se explică prin structura lor complexă și, ca urmare, posibilități practic inepuizabile de generalizare a unei game largi de regularități. Dar aceste avantaje, așa cum se întâmplă adesea, sunt o sursă de potențiale erori, posibilitatea de recalificare. După cum va fi discutat mai târziu, o astfel de viziune dublă a perspectivelor oricărui model de învățare este unul dintre principiile învățării automate.

O altă direcție populară în recunoaștere este regulile logice și arborii de decizie. În comparație cu metodele de recunoaștere menționate mai sus, aceste metode folosesc cel mai activ ideea de a ne exprima cunoștințele despre domeniul subiectului sub forma probabil cele mai naturale (la nivel conștient) structuri - reguli logice. O regulă logică elementară înseamnă o afirmație de genul „dacă caracteristicile neclasificate sunt în raportul X, atunci cele clasificate sunt în raportul Y”. Un exemplu de astfel de regulă în diagnosticul medical este următorul: dacă vârsta pacientului este de peste 60 de ani și a avut anterior un atac de cord, atunci nu efectuați operația - riscul unui rezultat negativ este mare.

Pentru a căuta reguli logice în date, sunt necesare 2 lucruri: pentru a determina măsura „informativității” regulii și spațiul regulilor. Iar sarcina de a găsi reguli după aceea se transformă într-o sarcină de enumerare completă sau parțială în spațiul regulilor pentru a găsi cele mai informative dintre ele. Definiția conținutului informațional poate fi introdusă într-o varietate de moduri și nu ne vom opri asupra acestui lucru, având în vedere că acesta este și un parametru al modelului. Spațiul de căutare este definit în mod standard.

După găsirea unor reguli suficient de informative, începe faza de „asamblare” a regulilor în clasificatorul final. Fără a discuta în profunzime problemele care apar aici (și există un număr considerabil de ele), enumeram 2 metode principale de „asamblare”. Primul tip este o listă liniară. Al doilea tip este votul ponderat, când fiecărei reguli i se atribuie o anumită pondere, iar obiectul este atribuit de către clasificator clasei pentru care a votat cel mai mare număr de reguli.

De fapt, faza de construire a regulilor și faza de „adunare” se desfășoară împreună și, atunci când se construiește un vot sau o listă ponderată, căutarea regulilor pe părți din datele cazului este apelată din nou și din nou pentru a asigura o mai bună potrivire între date și modelul.

Metoda iterației.În această metodă se face o comparație cu o anumită bază de date, unde pentru fiecare dintre obiecte există diferite opțiuni de modificare a afișajului. De exemplu, pentru recunoașterea optică a imaginii, puteți aplica metoda iterației la diferite unghiuri sau scări, decalaje, deformații etc. Pentru litere, puteți itera peste font sau proprietățile acestuia. În cazul recunoașterii modelelor de sunet, există o comparație cu unele modele cunoscute (un cuvânt rostit de multe persoane). În plus, se efectuează o analiză mai profundă a caracteristicilor imaginii. În cazul recunoașterii optice, aceasta poate fi definiția caracteristicilor geometrice. Proba de sunet în acest caz este supusă analizei de frecvență și amplitudine.

Următoarea metodă este utilizarea rețelelor neuronale artificiale(INS). Este nevoie fie de un număr mare de exemple ale sarcinii de recunoaștere, fie de o structură specială a rețelei neuronale care ține cont de specificul acestei sarcini. Dar, cu toate acestea, această metodă se caracterizează prin eficiență și productivitate ridicate.

Metode bazate pe estimări ale densităților de distribuție a valorilor caracteristicilor. Împrumutat din teoria clasică a deciziilor statistice, în care obiectele de studiu sunt considerate ca realizări ale unei variabile aleatoare multidimensionale distribuite în spațiul caracteristic după o anumită lege. Ele se bazează pe schema Bayesiană de luare a deciziilor, care face apel la probabilitățile inițiale ale obiectelor aparținând unei anumite clase și la densitățile de distribuție a caracteristicilor condiționate.

Grupul de metode bazat pe estimarea densităților de distribuție a valorilor caracteristicilor este direct legat de metodele de analiză discriminantă. Abordarea bayesiană a luării deciziilor este una dintre cele mai dezvoltate metode parametrice din statistica modernă, pentru care expresia analitică a legii distribuției (legea normală) este considerată cunoscută și doar un număr mic de parametri (vectori medii și matrice de covarianță). ) trebuie estimate. Principalele dificultăți în aplicarea acestei metode sunt considerate a fi necesitatea de a reține întregul set de antrenament pentru a calcula estimările de densitate și sensibilitatea ridicată la setul de antrenament.

Metode bazate pe ipoteze despre clasa funcțiilor de decizie.În acest grup, se consideră că este cunoscut tipul funcției de decizie și este dată calitatea funcțională a acesteia. Pe baza acestei funcționale, aproximarea optimă a funcției de decizie se găsește din secvența de antrenament. Calitatea funcțională a regulii de decizie este de obicei asociată cu o eroare. Principalul avantaj al metodei este claritatea formulării matematice a problemei de recunoaștere. Posibilitatea extragerii de noi cunoștințe despre natura unui obiect, în special cunoștințe despre mecanismele de interacțiune a atributelor, este limitată aici fundamental de o structură dată de interacțiune, fixată în forma aleasă a funcțiilor de decizie.

Metoda de comparare a prototipurilor. Aceasta este cea mai ușoară metodă de recunoaștere extensivă din practică. Se aplică atunci când clasele de recunoscut sunt afișate ca clase geometrice compacte. Apoi centrul grupării geometrice (sau obiectul cel mai apropiat de centru) este ales ca punct prototip.

Pentru a clasifica un obiect nedeterminat, se găsește prototipul cel mai apropiat de acesta, iar obiectul aparține aceleiași clase ca acesta. Evident, nu se formează imagini generalizate în această metodă. Diferite tipuri de distanțe pot fi folosite ca măsură.

Metoda k vecini cei mai apropiati. Metoda constă în faptul că, la clasificarea unui obiect necunoscut, se găsește un număr dat (k) al spațiului caracteristic cel mai apropiat din punct de vedere geometric al altor vecini cei mai apropiați cu apartenența deja cunoscută la o clasă. Decizia de a atribui un obiect necunoscut este luată prin analizarea informațiilor despre vecinii săi cei mai apropiați. Necesitatea reducerii numărului de obiecte din eșantionul de antrenament (precedentele de diagnostic) este un dezavantaj al acestei metode, deoarece aceasta reduce reprezentativitatea eșantionului de antrenament.

Pe baza faptului că diferiți algoritmi de recunoaștere se comportă diferit pe același eșantion, se pune problema unei reguli de decizie sintetică care să folosească punctele forte ale tuturor algoritmilor. Pentru aceasta, există o metodă sintetică sau seturi de reguli de decizie care îmbină cele mai pozitive aspecte ale fiecăreia dintre metode.

În încheierea analizei metodelor de recunoaștere, prezentăm esența celor de mai sus într-un tabel rezumativ, adăugând câteva alte metode utilizate în practică.

Tabelul 1. Tabelul de clasificare al metodelor de recunoaștere, compararea domeniilor lor de aplicare și limitări

Clasificarea metodelor de recunoaștere

Zona de aplicare

Limitări (dezavantaje)

Metode intensive de recunoaștere

Metode bazate pe estimări de densitate

Probleme cu o distribuție cunoscută (normală), necesitatea de a colecta statistici mari

Necesitatea de a enumera întregul set de antrenament în timpul recunoașterii, sensibilitate ridicată la nereprezentativitatea setului de antrenament și artefacte

Metode bazate pe ipoteze

Clasele ar trebui să fie bine separabile

Forma funcției de decizie trebuie cunoscută în prealabil. Imposibilitatea luării în considerare a noilor cunoștințe despre corelațiile dintre trăsături

Metode booleene

Probleme de mică dimensiune

La selectarea regulilor de decizie logică, este necesară o enumerare completă. Intensitate mare a muncii

Metode lingvistice

Sarcina de a determina gramatica pentru un anumit set de enunțuri (descrieri ale obiectelor) este dificil de formalizat. Probleme teoretice nerezolvate

Metode extensive de recunoaștere

Metoda de comparare a prototipurilor

Probleme de dimensiuni reduse ale spațiului caracteristic

Dependență ridicată a rezultatelor clasificării de metrică. Valoare optimă necunoscută

k metoda vecinului apropiat

Dependență ridicată a rezultatelor clasificării de metrică. Necesitatea unei enumerări complete a eșantionului de formare în timpul recunoașterii. Complexitatea computațională

Algoritmi de calcul al notelor (ABO)

Probleme de mică dimensiune în ceea ce privește numărul de clase și caracteristici

Dependența rezultatelor clasificării de metrică. Necesitatea unei enumerări complete a eșantionului de formare în timpul recunoașterii. Complexitatea tehnică ridicată a metodei

Regulile de decizie colectivă (CRC) este o metodă sintetică.

Probleme de mică dimensiune în ceea ce privește numărul de clase și caracteristici

Complexitatea tehnică foarte mare a metodei, numărul nerezolvat de probleme teoretice, atât în ​​determinarea domeniilor de competență ale anumitor metode, cât și în anumite metode în sine.

Duminica, 29 martie 2015

În prezent, există multe sarcini în care se cere să se ia o decizie în funcție de prezența unui obiect în imagine sau să-l clasifice. Abilitatea de a „recunoaște” este considerată principala proprietate a ființelor biologice, în timp ce sistemele informatice nu posedă pe deplin această proprietate.

Luați în considerare elementele generale ale modelului de clasificare.

Clasă- un set de obiecte care au proprietăți comune. Pentru obiectele din aceeași clasă, se presupune prezența „asemănării”. Pentru sarcina de recunoaștere poate fi definit un număr arbitrar de clase, mai mult de 1. Numărul de clase este notat cu numărul S. Fiecare clasă are propria etichetă de identificare a clasei.

Clasificare- procesul de atribuire a etichetelor de clasă obiectelor, conform unei descrieri a proprietăților acestor obiecte. Un clasificator este un dispozitiv care primește un set de caracteristici ale unui obiect ca intrare și ca rezultat produce o etichetă de clasă.

Verificare- procesul de potrivire a unei instanțe de obiect cu un singur model de obiect sau descriere de clasă.

Sub cale vom înțelege denumirea zonei în spațiul atributelor, în care sunt afișate multe obiecte sau fenomene ale lumii materiale. semn- o descriere cantitativă a unei anumite proprietăți a obiectului sau fenomenului studiat.

caracteristică spațiu acesta este un spațiu N-dimensional definit pentru o anumită sarcină de recunoaștere, unde N este un număr fix de caracteristici măsurate pentru orice obiect. Vectorul din spațiul caracteristic x corespunzător obiectului problemei de recunoaștere este un vector N-dimensional cu componente (x_1,x_2,…,x_N), care sunt valorile caracteristicilor pentru obiectul dat.

Cu alte cuvinte, recunoașterea modelelor poate fi definită ca atribuirea datelor inițiale unei anumite clase prin extragerea trăsăturilor sau proprietăților esențiale care caracterizează aceste date din masa generală de detalii irelevante.

Exemple de probleme de clasificare sunt:

  • recunoașterea caracterelor;
  • recunoaștere a vorbirii;
  • stabilirea unui diagnostic medical;
  • Prognoza meteo;
  • recunoaștere facială
  • clasificarea documentelor etc.

Cel mai adesea, materialul sursă este imaginea primită de la cameră. Sarcina poate fi formulată ca obținerea de vectori caracteristici pentru fiecare clasă din imaginea considerată. Procesul poate fi privit ca un proces de codare, care constă în atribuirea unei valori fiecărei caracteristici din spațiul de caracteristici pentru fiecare clasă.

Dacă luăm în considerare 2 clase de obiecte: adulți și copii. Ca caracteristici, puteți alege înălțimea și greutatea. După cum reiese din figură, aceste două clase formează două mulțimi care nu se intersectează, care pot fi explicate prin caracteristicile alese. Cu toate acestea, nu este întotdeauna posibil să alegeți parametrii măsurați corecti ca caracteristici ale claselor. De exemplu, parametrii selectați nu sunt potriviți pentru crearea unor clase care nu se suprapun de jucători de fotbal și baschetbalist.

A doua sarcină de recunoaștere este selectarea trăsăturilor caracteristice sau a proprietăților din imaginile originale. Această sarcină poate fi atribuită preprocesării. Dacă luăm în considerare sarcina recunoașterii vorbirii, putem distinge trăsături precum vocalele și consoanele. Atributul trebuie să fie o proprietate caracteristică a unei anumite clase, fiind în același timp comun acestei clase. Semne care caracterizează diferențele dintre - semne interclase. Caracteristicile comune tuturor claselor nu conțin informații utile și nu sunt considerate caracteristici în problema recunoașterii. Alegerea caracteristicilor este una dintre sarcinile importante asociate cu construirea unui sistem de recunoaștere.

După ce caracteristicile sunt determinate, este necesar să se determine procedura optimă de decizie pentru clasificare. Luați în considerare un sistem de recunoaștere a modelelor conceput pentru a recunoaște diferite clase M, notate ca m_1,m_2,...,m 3. Apoi putem presupune că spațiul imaginii este format din M regiuni, fiecare conținând puncte corespunzătoare unei imagini dintr-o clasă. Atunci problema recunoașterii poate fi considerată ca construcția granițelor care separă M clase pe baza vectorilor de măsurare acceptați.

Rezolvarea problemei preprocesării imaginii, extragerea caracteristicilor și problema obținerii soluției și clasificării optime este de obicei asociată cu necesitatea evaluării unui număr de parametri. Aceasta duce la problema estimării parametrilor. În plus, este evident că extragerea caracteristicilor poate folosi informații suplimentare bazate pe natura claselor.

Compararea obiectelor se poate face pe baza reprezentării lor sub formă de vectori de măsură. Este convenabil să reprezentați datele de măsurare ca numere reale. Apoi, asemănarea vectorilor caracteristici a două obiecte poate fi descrisă folosind distanța euclidiană.

unde d este dimensiunea vectorului caracteristic.

Există 3 grupuri de metode de recunoaștere a modelelor:

  • Comparație de probă. Acest grup include clasificarea după cea mai apropiată medie, clasificarea după distanța până la cel mai apropiat vecin. Metodele de recunoaștere structurală pot fi, de asemenea, incluse în grupul de comparație al eșantionului.
  • Metode statistice. După cum sugerează și numele, metodele statistice folosesc unele informații statistice atunci când rezolvă o problemă de recunoaștere. Metoda determină apartenența unui obiect la o anumită clasă pe baza probabilității.În unele cazuri, aceasta se rezumă la determinarea probabilității a posteriori ca un obiect să aparțină unei anumite clase, cu condiția ca trăsăturile acestui obiect să fi luat valorile. Un exemplu este metoda Bayesiană a regulilor de decizie.
  • Rețele neuronale. O clasă separată de metode de recunoaștere. O trăsătură distinctivă față de ceilalți este capacitatea de a învăța.

Clasificare după cea mai apropiată medie

În abordarea clasică a recunoașterii modelelor, în care un obiect necunoscut pentru clasificare este reprezentat ca un vector de trăsături elementare. Un sistem de recunoaștere bazat pe caracteristici poate fi dezvoltat în diferite moduri. Acești vectori pot fi cunoscuți de sistem în prealabil ca urmare a antrenamentului sau prevăzuți în timp real pe baza unor modele.

Un algoritm simplu de clasificare constă în gruparea datelor de referință de clasă folosind vectorul așteptării clasei (media).

unde x(i,j) este j-a caracteristică de referință a clasei i, n_j este numărul de vectori de referință ai clasei i.

Atunci obiectul necunoscut va aparține clasei i dacă este mult mai aproape de vectorul de așteptare al clasei i decât de vectorii de așteptare ai altor clase. Această metodă este potrivită pentru problemele în care punctele fiecărei clase sunt situate compact și departe de punctele altor clase.

Dificultăți vor apărea dacă clasele au o structură puțin mai complexă, de exemplu, ca în figură. În acest caz, clasa 2 este împărțită în două secțiuni care nu se suprapun, care sunt descrise slab de o singură valoare medie. De asemenea, clasa 3 este prea alungită, eșantioanele din clasa a 3-a cu valori mari ale coordonatelor x_2 sunt mai aproape de valoarea medie a clasei 1 decât a clasei a 3-a.

Problema descrisă în unele cazuri poate fi rezolvată prin modificarea calculului distanței.

Vom lua în considerare caracteristica „împrăștierii” valorilor clasei - σ_i, de-a lungul fiecărei direcții de coordonate i. Abaterea standard este egală cu rădăcina pătrată a varianței. Distanța euclidiană la scară dintre vectorul x și vectorul de așteptare x_c este

Această formulă de distanță va reduce numărul erorilor de clasificare, dar, în realitate, majoritatea problemelor nu pot fi reprezentate de o clasă atât de simplă.

Clasificare după distanță până la cel mai apropiat vecin

O altă abordare a clasificării este de a atribui un vector caracteristic necunoscut x clasei de care acest vector este cel mai apropiat de un eșantion separat. Această regulă se numește regula vecinului cel mai apropiat. Clasificarea celui mai apropiat vecin poate fi mai eficientă chiar și atunci când clasele sunt complexe sau când clasele se suprapun.

Această abordare nu necesită ipoteze despre modelele de distribuție a vectorilor caracteristici în spațiu. Algoritmul folosește doar informații despre mostrele de referință cunoscute. Metoda soluției se bazează pe calcularea distanței x până la fiecare probă din baza de date și găsirea distanței minime. Avantajele acestei abordări sunt evidente:

  • oricând puteți adăuga noi mostre în baza de date;
  • structurile de date arbore și grilă reduc numărul de distanțe calculate.

În plus, soluția va fi mai bună dacă căutați în baza de date nu un vecin cel mai apropiat, ci k. Apoi, pentru k > 1, oferă cea mai bună probă de distribuție a vectorilor în spațiul d-dimensional. Cu toate acestea, utilizarea eficientă a valorilor k depinde de faptul dacă există suficient în fiecare regiune a spațiului. Dacă există mai mult de două clase, atunci este mai dificil să iei decizia corectă.

Literatură

  • M. Castrillon, . O. Deniz, . D. Hernández și J. Lorenzo, „A comparison of face and facial feature detectors based on the Viola-Jones general object detection framework”, International Journal of Computer Vision, nr.22, pp. 481-494, 2011.
  • Y.-Q. Wang, „O analiză a algoritmului de detectare a feței Viola-Jones”, Jurnalul IPOL, 2013.
  • L. Shapiro și D. Stockman, Computer vision, Binom. Laboratorul de cunoștințe, 2006.
  • Z. N. G., Metode de recunoaștere și aplicarea lor, Radio sovietică, 1972.
  • J. Tu, R. Gonzalez, Principii matematice ale recunoașterii modelelor, Moscova: „Mir” Moscova, 1974.
  • Khan, H. Abdullah și M. Shamian Bin Zainal, „Algoritm eficient de detectare a ochilor și a gurii folosind combinația de viola jones și detectarea pixelilor culorii pielii” Jurnalul Internațional de Inginerie și Științe Aplicate, nr. 3 nr 4, 2013.
  • V. Gaede și O. Gunther, „Multidimensional Access Methods”, ACM Computing Surveys, pp. 170-231, 1998.
  • tutorial

De mult mi-am dorit să scriu un articol general care să conțină elementele de bază ale recunoașterii imaginilor, un fel de ghid despre metodele de bază, care să spună când să le folosești, ce sarcini rezolvă, ce se poate face seara pe genunchi și la ce este mai bine să nu te gândești fără să ai o echipă de oameni în 20.

De mult scriu câteva articole despre recunoașterea optică, așa că de câteva ori pe lună îmi scriu diverse persoane cu întrebări pe această temă. Uneori ai senzația că trăiești cu ei în lumi diferite. Pe de o parte, înțelegi că o persoană este cel mai probabil un profesionist într-un subiect conexe, dar știe foarte puține despre metodele de recunoaștere optică. Și cel mai enervant este că încearcă să aplice o metodă dintr-un domeniu de cunoaștere apropiat, ceea ce este logic, dar nu funcționează complet în Recunoașterea imaginilor, dar nu înțelege acest lucru și este foarte jignit dacă începe să-i spună ceva din foarte de bază. Și având în vedere că a spune de la bază este mult timp, ceea ce de multe ori nu există, devine și mai trist.

Acest articol este conceput astfel încât o persoană care nu s-a ocupat niciodată de metode de recunoaștere a imaginii să poată, în 10-15 minute, să-și creeze în cap o anumită imagine de bază a lumii corespunzătoare subiectului și să înțeleagă în ce direcție ar trebui să sape. Multe dintre metodele descrise aici sunt aplicabile procesării radar și audio.
Voi începe cu câteva principii pe care începem întotdeauna să le spunem unui potențial client sau unei persoane care dorește să înceapă să facă Recunoaștere optică:

  • Când rezolvați o problemă, mergeți întotdeauna de la cel mai simplu. Este mult mai ușor să atârnați o etichetă portocalie pe o persoană decât să urmăriți o persoană, evidențiind-o în cascade. Este mult mai ușor să luați o cameră cu o rezoluție mai mare decât să dezvoltați un algoritm de super-rezoluție.
  • O declarație strictă a problemei în metodele de recunoaștere optică este ordine de mărime mai importantă decât în ​​problemele de programare a sistemului: un cuvânt în plus în TK poate adăuga 50% din muncă.
  • În problemele de recunoaștere, nu există soluții universale. Nu puteți crea un algoritm care pur și simplu „recunoaște orice inscripție”. Un semn pe stradă și o foaie de text sunt obiecte fundamental diferite. Este probabil posibil să se realizeze un algoritm general (un exemplu bun de la Google), dar acest lucru va necesita multă muncă din partea unei echipe mari și va consta din zeci de subrutine diferite.
  • OpenCV este biblia, care are multe metode și cu care poți rezolva 50% din volumul aproape oricărei probleme, dar OpenCV este doar o mică parte din ceea ce se poate face în realitate. Într-un studiu, s-a scris în concluzii: „Problema nu este rezolvată prin metode OpenCV, prin urmare, este de nerezolvat”. Încercați să evitați acest lucru, să nu fiți leneși și să evaluați sobru sarcina curentă de fiecare dată de la zero, fără a utiliza șabloane OpenCV.
Este foarte dificil să dai un fel de sfaturi universale sau să spui cum să creezi un fel de structură în jurul căreia să poți construi o soluție la probleme arbitrare de viziune computerizată. Scopul acestui articol este de a structura ceea ce poate fi folosit. Voi încerca să împart metodele existente în trei grupuri. Primul grup este prefiltrarea și pregătirea imaginii. Al doilea grup este procesarea logică a rezultatelor de filtrare. Al treilea grup sunt algoritmii de luare a deciziilor bazați pe procesare logică. Granițele dintre grupuri sunt foarte arbitrare. Pentru a rezolva o problemă, este departe de a fi întotdeauna necesar să se aplice metode din toate grupurile; uneori sunt suficiente două, iar uneori chiar una.

Lista metodelor prezentate aici nu este completă. Îmi propun să adaug în comentarii metode critice pe care nu le-am scris și să atribuie fiecăruia câte 2-3 cuvinte însoțitoare.

Partea 1. Filtrare

În acest grup, am plasat metode care vă permit să selectați zonele de interes din imagini fără a le analiza. Cele mai multe dintre aceste metode aplică un fel de transformare uniformă tuturor punctelor din imagine. La nivel de filtrare, imaginea nu este analizată, dar punctele care sunt filtrate pot fi considerate ca zone cu caracteristici deosebite.
Binarizarea pragului, selectarea zonei histogramei
Cea mai simplă transformare este binarizarea imaginii de către prag. Pentru imaginile RGB și în tonuri de gri, pragul este valoarea culorii. Există probleme ideale în care o astfel de transformare este suficientă. Să presupunem că doriți să selectați automat elementele de pe o coală albă de hârtie:




Alegerea pragului prin care are loc binarizarea determină în mare măsură procesul de binarizare în sine. În acest caz, imaginea a fost binarizată de culoarea medie. De obicei, binarizarea se face cu un algoritm care selectează adaptiv un prag. Un astfel de algoritm poate fi alegerea așteptării sau a modului. Și puteți alege cel mai mare vârf al histogramei.

Binarizarea poate da rezultate foarte interesante atunci când lucrați cu histograme, inclusiv situația dacă luăm în considerare o imagine nu în RGB, ci în HSV. De exemplu, segmentați culorile de interes. Pe acest principiu, este posibil să se construiască atât un detector de etichete, cât și un detector de piele umană.
Filtrare clasică: Fourier, LPF, HPF
Metodele clasice de filtrare de la radar și procesarea semnalului pot fi aplicate cu succes într-o varietate de sarcini de recunoaștere a modelelor. Metoda tradițională în radar, care nu este aproape niciodată folosită în imagini în forma sa pură, este transformata Fourier (mai precis, FFT). Una dintre puținele excepții în care se utilizează transformata Fourier 1D este compresia imaginii. Pentru analiza imaginii, o transformare unidimensională nu este de obicei suficientă, trebuie să utilizați o transformare bidimensională mult mai intensivă în resurse.

Puțini oameni o calculează, de obicei, este mult mai rapid și mai ușor să folosești convoluția regiunii de interes cu un filtru gata făcut, ascuțit la frecvențe înalte (HPF) sau joase (LPF). O astfel de metodă, desigur, nu permite analiza spectrului, dar într-o sarcină specifică de procesare video, de obicei nu este necesară o analiză, ci un rezultat.


Cele mai simple exemple de filtre care pun accent pe frecvențele joase (filtru Gaussian) și frecvențele înalte (filtru Gabor).
Pentru fiecare punct de imagine, se selectează o fereastră și se înmulțește cu un filtru de aceeași dimensiune. Rezultatul unei astfel de convoluții este noua valoare a punctului. La implementarea LPF și HPF, se obțin imagini de acest tip:



Wavelets
Dar ce se întâmplă dacă folosim o funcție caracteristică arbitrară pentru convoluția cu semnalul? Apoi se va numi „Wavelet Transform”. Această definiție a waveleturilor nu este corectă, dar în mod tradițional, în multe echipe, analiza wavelet este căutarea unui model arbitrar într-o imagine folosind convoluția cu un model al acestui model. Există un set de funcții clasice utilizate în analiza wavelet. Acestea includ wavelet Haar, Morlet wavelet, wavelet mexican și așa mai departe. Primitivele Haar, despre care au existat mai multe dintre articolele mele anterioare ( , ), se referă la astfel de funcții pentru un spațiu bidimensional.


Mai sus sunt 4 exemple de wavelets clasice. wavelet 3D Haar, wavelet 2D Meyer, wavelet Mexican Hat, wavelet Daubechies. Un bun exemplu de utilizare a interpretării extinse a wavelets este problema găsirii unei sclipici în ochi, pentru care sclipirea în sine este o wavelet:

Undele clasice sunt de obicei folosite pentru sau pentru clasificarea lor (care vor fi descrise mai jos).
Corelație
După o astfel de interpretare liberă a waveleturilor din partea mea, merită menționată corelația reală care stă la baza acestora. La filtrarea imaginilor, acesta este un instrument indispensabil. O aplicație clasică este corelarea fluxului video pentru a găsi offset-uri sau fluxuri optice. Cel mai simplu detector de schimbare este, într-un fel, un corelator de diferență. Acolo unde imaginile nu se corelează, era mișcare.

Filtrarea funcției
O clasă interesantă de filtre este funcțiile de filtrare. Acestea sunt filtre pur matematice care vă permit să detectați o funcție matematică simplă într-o imagine (linie, parabolă, cerc). Se construiește o imagine acumulativă, în care pentru fiecare punct al imaginii originale este desenat un set de funcții care o generează. Cea mai clasică transformare este transformarea Hough pentru linii. În această transformare, pentru fiecare punct (x;y), se trasează o mulțime de puncte (a;b) ale dreptei y=ax+b, pentru care egalitatea este adevărată. Obțineți imagini frumoase:


(primul plus pentru cel care este primul care găsește o captură în imagine și o astfel de definiție și explică-o, al doilea plus pentru cel care este primul care spune ceea ce se arată aici)
Transformarea Hough vă permite să găsiți orice funcții parametrizabile. De exemplu cercuri. Există o transformare modificată care vă permite să căutați orice . Această transformare este teribil de pasionată de matematicieni. Dar atunci când procesăm imagini, nu funcționează întotdeauna. Viteză foarte mică, sensibilitate foarte mare la calitatea binarizării. Chiar și în situații ideale, am preferat să mă descurc cu alte metode.
Omologul transformării Hough pentru linii este transformarea Radon. Se calculează prin FFT, care oferă un câștig de performanță într-o situație în care sunt multe puncte. În plus, poate fi aplicat unei imagini nebinarizate.
Filtrarea conturului
O clasă separată de filtre este filtrarea marginilor și a conturului. Căile sunt foarte utile atunci când dorim să trecem de la lucrul cu o imagine la lucrul cu obiectele din imaginea respectivă. Când un obiect este destul de complex, dar bine distins, atunci de multe ori singura modalitate de a lucra cu el este să-i selectezi contururile. Există o serie de algoritmi care rezolvă problema filtrării conturului:

Cel mai des folosit este Kenny, care funcționează bine și a cărui implementare este în OpenCV (Sobel este și el acolo, dar caută mai rău contururile).



Alte filtre
Mai sus sunt filtre, ale căror modificări ajută la rezolvarea a 80-90% din sarcini. Dar, pe lângă ele, există filtre mai rare folosite în sarcinile locale. Există zeci de astfel de filtre, nu le voi enumera pe toate. De interes sunt filtrele iterative (de exemplu ), precum și transformările ridgelet și curvlet, care sunt un aliaj de filtrare și analiză wavelet clasice în domeniul transformării radonului. Transformarea beamlet funcționează frumos la granița transformării wavelet și a analizei logice, permițându-vă să evidențiați contururile:

Dar aceste transformări sunt foarte specifice și adaptate pentru sarcini rare.

Partea 2. Procesarea logică a rezultatelor de filtrare

Filtrarea oferă un set de date adecvate pentru prelucrare. Dar adesea nu puteți pur și simplu să luați și să utilizați aceste date fără a le procesa. În această secțiune, vor exista câteva metode clasice care vă permit să treceți de la imagine la proprietățile obiectelor sau la obiectele în sine.
Morfologie
Trecerea de la filtrare la logică, după părerea mea, este metodele morfologiei matematice ( , ). De fapt, acestea sunt cele mai simple operații de creștere și erodare a imaginilor binare. Aceste metode vă permit să eliminați zgomotul dintr-o imagine binară prin creșterea sau scăderea elementelor disponibile. Pe baza morfologiei matematice, există algoritmi de conturare, dar de obicei folosesc un fel de algoritmi hibrizi sau algoritmi în conjuncție.
analiza conturului
În secțiunea de filtrare au fost deja menționați algoritmi pentru obținerea limitelor. Limitele rezultate sunt pur și simplu transformate în contururi. Pentru algoritmul Canny acest lucru se întâmplă automat, pentru alți algoritmi este necesară o binarizare suplimentară. Puteți obține un contur pentru un algoritm binar, de exemplu, cu algoritmul gândac.
Conturul este o caracteristică unică a unui obiect. Adesea, acest lucru vă permite să identificați obiectul de-a lungul conturului. Există un aparat matematic puternic care vă permite să faceți acest lucru. Aparatul se numește analiză de contur ( , ).

Sincer să fiu, nu am reușit niciodată să aplic analiza conturului în probleme reale. Sunt necesare condiții prea ideale. Fie nu există graniță, fie este prea mult zgomot. Dar, dacă trebuie să recunoașteți ceva în condiții ideale, atunci analiza conturului este o opțiune excelentă. Funcționează foarte repede, matematică frumoasă și logică ușor de înțeles.
Puncte singulare
Punctele cheie sunt caracteristici unice ale unui obiect care permit obiectului să fie asociat cu el însuși sau cu clase de obiecte similare. Există zeci de moduri de a selecta astfel de puncte. Unele metode scot în evidență puncte speciale în cadrele învecinate, unele după o perioadă lungă de timp și când lumina se schimbă, unele vă permit să găsiți puncte speciale care rămân așa chiar și atunci când obiectul se rotește. Să începem cu metode care ne permit să găsim puncte speciale care nu sunt atât de stabile, dar sunt calculate rapid, iar apoi vom merge într-o complexitate crescândă:
Clasa întâi. Puncte singulare care sunt stabile pentru câteva secunde. Astfel de puncte sunt folosite pentru a ghida un obiect între cadrele video adiacente sau pentru a converge imaginile de la camerele învecinate. Aceste puncte includ maxime locale ale imaginii, colțuri din imagine (cel mai bun dintre detectoare, poate, detectorul Haris), puncte la care sunt atinse maximele de dispersie, anumiți gradienți etc.
Clasa a doua. Puncte singulare care sunt stabile la schimbarea luminii și mișcări mici ale obiectului. Astfel de puncte servesc în primul rând pentru formarea și clasificarea ulterioară a tipurilor de obiecte. De exemplu, un clasificator pentru pietoni sau un clasificator facial este produsul unui sistem construit doar pe astfel de puncte. Unele dintre waveletele menționate anterior pot fi baza pentru astfel de puncte. De exemplu, primitivele Haar, căutarea strălucirii, căutarea altor caracteristici specifice. Aceste puncte includ puncte găsite prin metoda histogramelor de gradienți direcționali (HOG).
Clasa a treia. puncte stabile.Știu doar două metode care dau stabilitate completă și despre modificările lor. Aceasta și . Acestea vă permit să găsiți puncte cheie chiar și atunci când rotiți imaginea. Calcularea unor astfel de puncte durează mai mult decât alte metode, dar pentru un timp destul de limitat. Din păcate, aceste metode sunt brevetate. Deși, în Rusia este imposibil să brevetați algoritmi, deci folosiți-l pentru piața internă.

Partea 3. Antrenament

A treia parte a poveștii va fi dedicată metodelor care nu funcționează direct cu imaginea, dar care vă permit să luați decizii. Practic, acestea sunt diferite metode de învățare automată și de luare a deciziilor. Recent, Yandyks a postat pe Habr pe acest subiect, există o selecție foarte bună. Iată-l în versiunea text. Pentru un studiu serios al subiectului, vă recomand cu tărie să le priviți. Aici voi încerca să identific câteva metode de bază utilizate în mod specific în recunoașterea modelelor.
În 80% din situații, esența învățării în problema recunoașterii este următoarea:
Există o probă de testare pe care există mai multe clase de obiecte. Să fie prezența/absența unei persoane din fotografie. Pentru fiecare imagine, există un set de caracteristici care au fost evidențiate de anumite caracteristici, fie că este Haar, HOG, SURF sau un wavelet. Algoritmul de învățare trebuie să construiască un astfel de model, conform căruia va putea analiza noua imagine și va putea decide care dintre obiecte se află în imagine.
Cum se face? Fiecare dintre imaginile de testare este un punct în spațiul caracteristic. Coordonatele sale sunt greutatea fiecărei caracteristici din imagine. Fie semnele noastre: „Prezența ochilor”, „Prezența unui nas”, „Prezența a două mâini”, „Prezența urechilor”, etc. Vom aloca toate aceste semne cu detectoarele pe care le avem, care sunt antrenate pe părți ale corpului asemănătoare omului. Pentru o persoană într-un astfel de spațiu, punctul corect va fi . Pentru maimuță, punct pentru cal. Clasificatorul este antrenat pe un eșantion de exemple. Dar nu toate fotografiile au arătat mâini, altele nu aveau ochi, iar în a treia maimuța avea un nas uman din cauza unei erori de clasificare. Clasificatorul uman antrenabil împarte automat spațiul caracteristicilor astfel încât să spună: dacă prima caracteristică se află în intervalul 0,5 În esență, scopul clasificatorului este de a desena în spațiul caracteristic zonele caracteristice obiectelor de clasificare. Așa va arăta aproximarea succesivă a răspunsului pentru unul dintre clasificatori (AdaBoost) în spațiul bidimensional:


Există mulți clasificatori. Fiecare dintre ele funcționează mai bine în unele dintre sarcinile sale. Sarcina de a selecta un clasificator pentru o anumită sarcină este în mare măsură o artă. Iată câteva poze frumoase pe această temă.
Caz simplu, separare unidimensională
Să luăm un exemplu de cel mai simplu caz de clasificare, când spațiul caracteristic este unidimensional și trebuie să separăm 2 clase. Situația apare mai des decât ar părea: de exemplu, atunci când trebuie să distingeți două semnale sau să comparați un model cu un eșantion. Să presupunem că avem un eșantion de antrenament. În acest caz, se obține o imagine, în care axa X va fi o măsură a asemănării, iar axa Y va fi numărul de evenimente cu o astfel de măsură. Când obiectul dorit este similar cu el însuși, se obține un gaussian stâng. Când nu se aseamănă - corect. Valoarea X=0,4 separă probele astfel încât o decizie eronată să minimizeze probabilitatea de a lua orice decizie greșită. Căutarea unui astfel de separator este sarcina clasificării.


Mică notă. Criteriul care minimizează eroarea nu va fi întotdeauna optim. Următorul grafic este un grafic al unui sistem real de recunoaștere a irisului. Pentru un astfel de sistem, criteriul este ales în așa fel încât să minimizeze probabilitatea de admitere falsă a unui străin la obiect. O astfel de probabilitate se numește „eroare de primul fel”, „probabilitate de alarmă falsă”, „fals pozitiv”. În literatura engleză „Rata de acces fals”.
) AdaBusta este unul dintre cele mai comune clasificatoare. De exemplu, cascada Haar este construită pe ea. Utilizat de obicei atunci când este necesară clasificarea binară, dar nimic nu împiedică predarea pentru mai multe clase.
SVM ( , , , ) Unul dintre cele mai puternice clasificatoare cu multe implementări. În principiu, pe sarcinile de învățare pe care le-am întâlnit, a funcționat similar cu adabusta. Este considerat destul de rapid, dar antrenamentul său este mai dificil decât cel al Adabustei și necesită alegerea miezului corect.

Există, de asemenea, rețele neuronale și regresie. Dar pentru a le clasifica pe scurt și a arăta cum diferă, este nevoie de un articol mult mai mare decât acesta.
________________________________________________
Sper că am reușit să ofer o privire de ansamblu rapidă a metodelor utilizate fără a mă scufunda în matematică și descriere. Poate asta va ajuta pe cineva. Deși, desigur, articolul este incomplet și nu există niciun cuvânt despre lucrul cu imagini stereo, sau despre LSM cu filtrul Kalman sau despre abordarea adaptivă Bayesiană.
Dacă vă place articolul, atunci voi încerca să fac a doua parte cu o selecție de exemple despre cum sunt rezolvate problemele existente de ImageRecognition.

Și, în sfârșit

Ce să citești?
1) Odată mi-a plăcut foarte mult cartea „Procesarea digitală a imaginii” de B. Yana, care este scrisă simplu și clar, dar în același timp se dă aproape toată matematica. Bun pentru familiarizarea cu metodele existente.
2) Clasicul genului este R Gonzalez, R. Woods „Digital Image Processing”. Din anumite motive, mi-a fost mai greu decât primul. Mult mai puțină matematică, dar mai multe metode și imagini.
3) „Prelucrarea și analiza imaginilor în problemele de viziune artificială” - scrisă pe baza unui curs predat la una din catedrele PhysTech. O mulțime de metode și descrierea lor detaliată. Dar, după părerea mea, cartea are două mari minusuri: cartea este puternic axată pe pachetul de software care vine cu ea, în carte prea des descrierea unei metode simple se transformă în junglă matematică, din care este greu de deslușit. schema structurală a metodei. Dar autorii au creat un site convenabil, unde este prezentat aproape tot conținutul - wiki.technicalvision.ru Adaugă etichete