De procesare a imaginii este o disciplină de calcul și matematică aplicate care studiază imaginile digitale și transformările acestora în scopul îmbunătățirii calității acestora sau informații extract.
Acesta este un subset de procesare a semnalului dedicat imaginilor și datelor derivate precum video (spre deosebire de părțile procesării semnalului dedicate altor tipuri de date: în special sunet și alte semnale unidimensionale), în timp ce funcționează în domeniul digital (spre deosebire de a tehnicilor de procesare a semnalelor analogice , cum ar fi tradiționale de fotografie sau de televiziune ).
În contextul viziunii artificiale , procesarea imaginii are loc după etapele de achiziție și digitalizare , asigurând transformări ale imaginii și partea de calcul făcând posibilă trecerea către o interpretare a imaginilor procesate. Această fază de interpretare este din ce în ce mai integrată în procesarea imaginilor, în special apelând la inteligența artificială pentru a manipula cunoștințele, în principal pe informațiile pe care le avem despre ceea ce reprezintă imaginile procesate (cunoașterea „domeniului”).
Înțelegerea procesării imaginilor începe cu înțelegerea a ceea ce este o imagine. Modul și condițiile de achiziție și digitalizare a imaginilor procesate condiționează în mare măsură operațiunile care vor trebui efectuate pentru a extrage informații. Într-adevăr, sunt luați în considerare mulți parametri, principalii fiind:
Câteva exemple tipice de informații care pot fi obținute dintr-o imagine digitală:
Prelucrarea imaginilor a început să fie studiată în anii 1920 pentru transmiterea imaginilor prin cablul submarin care circula de la New York la Londra . Harry G. Bartholomew și Maynard D. McFarlane efectuează prima scanare a imaginilor cu compresie de date pentru a trimite faxuri de la Londra la New York. Timpul de transfer scade astfel de la mai mult de o săptămână la mai puțin de trei ore. Nu există o evoluție reală după aceea până în perioada postbelică.
Procesarea semnalului a crescut în importanță spre sfârșitul celui de-al doilea război mondial odată cu apariția radarului . Prospectarea petrolului este, de asemenea, un contribuitor major la dezvoltarea tehnicilor de procesare a semnalului.
Adevăratul boom al procesării imaginilor nu a avut loc decât în anii 1960, când computerele au început să fie suficient de puternice pentru a lucra cu imagini. La scurt timp, redescoperirea Transformatei Fourier Rapide (FFT) a revoluționat câmpul, făcând posibilă manipularea conținutului de frecvență al semnalelor de pe un computer. Cu toate acestea, majoritatea cercetărilor din acel moment se concentrau încă pe îmbunătățirea și comprimarea imaginilor.
În 1980 , David Marr a fost primul care a oficializat detectarea conturului într- o manieră precisă (D. Marr și E. Hildreth: Theory of Edge Detection , Proc. R. Soc. London, B 207, 187-217, 1980). În anii 1980 , a apărut o adevărată nebunie pentru prelucrarea imaginilor și mai ales pentru înțelegerea imaginii de către sisteme expert . Ambițiile erau mult prea mari, eșecul era cu atât mai amar.
Anii 1990 au văzut îmbunătățirea constantă a operatorilor. Cercetarea medicală devine o cerere foarte mare de procesare a imaginilor pentru îmbunătățirea diagnosticelor făcute din numeroase tehnici de imagistică medicală , principala tehnică fiind RMN . Agenții de publicitate, apoi publicul larg, s-au familiarizat cu editarea imaginilor folosind software-ul Photoshop și prelucrarea imaginilor în scopuri estetice s-a răspândit odată cu apariția altor programe dedicate ( The Gimp , Paint Shop Pro ). În cele din urmă, deceniul se încheie cu nebunia pentru wavelets și imagini multimodale .
Procesorul de imagini folosește în principal imagini digitale , care sunt, prin urmare, eșantionate . De asemenea, are date intermediare de diferite tipuri: hărți regionale, liste de puncte conexe, tabele cu valori măsurate etc.
În ceea ce privește imaginile în sine, cea mai utilizată reprezentare este cea a unui tabel bidimensional format dintr-un set de rânduri și coloane. Fiecare celulă din tabel, numită pixel, conține o valoare cuantificată. Această valoare este o semantică în funcție de tipul de semnal pe care îl codifică (intensitatea luminii punctului, distanța până la un punct de referință sau numărul regiunii căreia îi aparține, de exemplu). În cazul imaginilor 3D RMN , reprezentarea nu mai este un tabel bidimensional, ci un tabel tridimensional.
Achiziționarea imaginii este o măsură spațială a unei interacțiuni între o undă și materie . Unda este emisă de o sursă și recepționată de un senzor . De exemplu, în cazul ultrasunetelor , ultrasunetele , o undă acustică, sunt emise și recepționate de sondă. Interacțiunea este reflectarea ultrasunetelor asupra structurii corpului.
În cazul undelor electromagnetice , fotografia folosește spectrul vizibil, adică care este vizibil pentru ochiul uman. Există aplicații pe întregul spectru electromagnetic , de la razele gamma la undele radio . Astfel, imaginile dobândite de razele X sau de razele gamma sunt utilizate în principal în imagistica medicală și în astronomie . În medicină, folosim RMN , PET , scanare CT , ultrasunete Doppler , ultrasunete , scintigrafie , tomografie computerizată .
Cele două caracteristici importante ale măsurării spațiale sunt dimensiunea celui mai mic element ( pixel ), dar și intercorelația a două elemente învecinate: cu cât această intercorelație este mai mică, cu atât este mai bună imaginea.
Prin analogie cu operatorii matematici, numim operatori de procesare a imaginilor procese mai mult sau mai puțin complexe luând ca intrare o imagine sau un set de informații referitoare la o imagine și producând o imagine sau un set de informații referitoare la date.
Operatorii sunt, în general, clasificați în familii diferite, în funcție de informațiile pe care le acceptă ca intrare și pe care le furnizează ca ieșire și în funcție de transformările cărora le supun datele. Astfel, de exemplu, distingem (această listă este departe de a fi exhaustivă):
Imagine → operatori de imagine:
Operatori de imagine → set de informații:
Setul de informații al operatorilor → imagine:
Următoarele părți se concentrează pe detalierea diferiților operatori și aplicațiile lor obișnuite, apoi pe prezentarea modului în care sunt combinate pentru a construi o aplicație de procesare a imaginilor.
Apoi, este necesar să se utilizeze operatori de procesare mai complexe, împărțiți adesea în două subcategorii:
Prima subcategorie include toți operatorii care își pot exprima rezultatul ca o combinație liniară a nivelurilor de gri ale unui vecinătate a imaginii. Aceste filtre au caracteristici spectrale, deci vorbim despre un filtru trece-jos (imaginea devine neclară) sau un filtru trece-în-sus (contururile se remarcă).
A doua subcategorie include domeniul morfologiei matematice, precum și alte tratamente, cum ar fi detectoarele punctuale caracteristice, operatorul Di-Zenzo (detector de contur generalizat la carcasa culorii), filtrul Retinex , precum și operatorii homomorfi (acei care lucrează pe logaritmul imaginii), dar și toți operatorii care permit extragerea de exemplu a informațiilor despre textura imaginii ( matrice de concurență , indicele fractal , lungimea intervalului ...).
Suntem obișnuiți să vedem un detector de margine aplicat după un filtru liniar low pass care estompează imaginea. De cele mai multe ori trebuie să combinați inteligent un filtru neliniar și un filtru liniar pentru a detecta ceea ce doriți în timp ce ignorați zgomotul.
Odată ce zgomotul a fost eliminat și imaginea restaurată pentru a compensa deformările introduse de mediul de transmisie și optica de achiziție, este posibil să se treacă la etapa de segmentare care ar trebui să permită efectuarea unei partiții a imaginii în mulțimi conectate omogene.
Există două categorii principale de segmentare:
Segmentarea orientată spre contur a înregistrat multe progrese în ceea ce privește utilizarea contururilor active sau a seturilor de niveluri. Introducerea aspectelor probabilistice ( lanțurile Markov și câmpurile Markov ) a făcut posibilă funcționarea prin reducerea cunoștințelor a priori necesare pentru a obține un tratament satisfăcător.
În acest pas găsim adesea o parte din clasificarea pixelilor în clase. Încercăm să grupăm în cadrul aceluiași set, numit și clasă, pixelii care prezintă aceeași caracteristică: nivel de gri inclus într-un anumit interval sau secundă derivată mai mare decât un anumit prag.
Un filtru liniar transformă un set de date de intrare într-un set de date de ieșire utilizând o operație matematică numită convoluție . Când vine vorba de date digitalizate, ca în cazul procesării imaginilor, relația dintre valorile pixelilor de ieșire și cea a pixelilor de intrare este descrisă printr-o serie de numere, de obicei pătrate, numite matrice de convoluție sau nucleu . Timpul de calcul este adesea redus atunci când se dorește separarea unui filtru în două filtre a căror convoluție reciprocă face posibilă reconstituirea acestuia. Această remarcă este utilizată în special pentru a crea un filtru bidimensional din două filtre unidimensionale (vectori) în direcția orizontală și direcția verticală.
NetezireAcestea sunt filtre de trecere joasă care reduc frecvențe mai mari sau mai mici mai mult sau mai puțin. Acestea sunt utilizate pentru a atenua zgomotele din cele mai diverse origini care poluează informațiile, în special în detectarea contururilor luate în considerare mai jos.
Din punct de vedere tehnic, acestea sunt traduceri discrete ale filtrelor continue care, ca acestea, nu modifică nivelul general al semnalului. Termenii matricei de convoluție sunt, prin urmare, în general numere întregi care trebuie împărțite la suma lor.
Filtrul Gauss este folosit ca o componentă a măștii neaccentuate care îmbunătățește claritatea aparentă a fotografiilor digitale. Deși este popularizată de fotografia mai mult sau mai puțin artistică, este folosită și în anumite tehnici, precum astronomia .
Detectarea conturuluiAceste filtre transformă imaginea de intrare într-o imagine neagră, cu excepția punctelor în care este detectată o margine marcată în alb. Valorile absolute nu contează, este inutil să schimbi scala ca pentru o netezire.
Detectarea se bazează pe derivarea conform celor două coordonate. Dacă considerăm în mod clasic semnalele ca sume de sinusoide, derivarea apare ca un filtru trece-înalt care, prin urmare, introduce zgomot la originea contururilor false. Pentru amatori este recomandat, înainte de a utiliza un filtru simplu, să atenueze acest zgomot trecând printr-un filtru fuzzy. Metodele mai elaborate au fost sistematizate pentru profesioniști.
Morfologia matematică oferă operatori neliniari deosebit de utili pentru filtrarea, segmentarea și cuantificarea imaginilor. Destinat inițial pentru procesarea imaginilor binare, a fost rapid generalizat la imagini la nivel de gri, apoi la imagini color și multispectrale.
Natura operatorilor morfologici înseamnă că aceștia se împrumută bine dezvoltării circuitelor electronice specializate (sau utilizării FPGA ) în operatorii morfologici.
Obiectivele aplicațiilor pot fi de diferite tipuri:
În toate cazurile, ideea este, pornind de la o imagine inițială, de a extrage informații din aceasta. Pentru a face acest lucru, vom folosi operatorii în modul „cărămizilor software”, combinându-le și înlănțuindu-le. Aceste tehnici stau la baza sistemelor de viziune automată .
Multe cărămizi sunt disponibile pentru a crea aplicații complexe și avansate.
Recunoașterea obiectelor este o ramură a viziunii automate și unul dintre pilonii viziunii automate . Acesta constă în identificarea formelor pre-descrise într-o imagine digitală și, prin extensie, într-un flux video digital .
Nu confundați recunoașterea obiectelor (în engleză: „ recunoașterea obiectelor ” sau „ recunoașterea formei ”) și recunoașterea modelelor („ recunoașterea modelelor ” în engleză). Primul se concentrează pe recunoașterea formelor geometrice într-o imagine, în timp ce al doilea caută să identifice tiparele din datele statistice. Confuzia apare din faptul că recunoașterea tiparului este adesea utilizată ca tehnică aplicată recunoașterii obiectelor.
În primul rând obiectul algoritmilor direcționați de oameni, până în 1995 (încercările de a reproduce printr-un algoritm un raționament uman de identificare, ca în „o bicicletă are două roți, un cadru ...”), recunoașterea obiectelor erau subiect de progrese semnificative ulterior prin implementarea tehnicilor de învățare, cum ar fi separatoarele largi de marjă . Aceste tehnici urmăresc să utilizeze bazele exemplelor pozitive și negative (contra-exemple) de către un algoritm pentru căutarea criteriilor discriminante, adică criterii care să permită separarea exemplelor de contra-exemple cât mai bine posibil.