Toate metodele de prelucrare a imaginilor preliminare pot fi împărțite în spațiu și în frecvență.
Metodele spațiale funcționează direct cu pixelii imaginii, iar ca caracteristică a imaginii se utilizează luminozitatea.
Metodele de frecvență sunt asociate cu traducerea unei imagini într-un plan complex prin intermediul transformării Fourier.
- pixeli care formează o matrice sau un contur.
În etapa de formare a imaginii, pragul de luminozitate este selectat prin reglarea iluminării și filtrarea imaginii pentru a compensa interferența și, de asemenea, pentru extragerea marginilor de contur și a liniilor.
Dacă este necesar, în această etapă se efectuează binarizarea. convertiți imaginea de tip "halftone" într-o imagine binară.
Alegerea pragului de luminozitate este cea mai importantă procedură pentru prima etapă a procesării imaginilor preliminare, deoarece calitatea acesteia depinde puternic de iluminarea etapei de lucru. Dacă iluminarea este subestimată, atunci cantitatea de interferență din imagine crește până la pierderea obiectului; La o iluminare foarte puternică, obiectul este iluminat. În majoritatea cazurilor, pragul de luminozitate este ajustat la introducerea unei imagini printr-un cadru.
De obicei, când se aplică o îmbunătățire a imaginii, reglarea cadru-cadru a luminozității și contrastului imaginii de intrare. Pentru fiecare cadru, se construiește o histogramă a distribuției luminozității imaginii și se calculează parametrii ei: așteptarea și varianța matematică. Fiecare punct al unei astfel de histograme determină numărul de pixeli dintr-o imagine având o anumită valoare a luminanței. În acest caz, așteptarea matematică determină luminozitatea generală a imaginii și varianța - contrastul.
Binarizarea este adesea efectuată imediat după îmbunătățirea imaginii. Sarcina binarizării constă în conversia unei imagini de tip semnturon într-una binară. În procesul de binarizare este selectată o valoare a luminozității pragului care împarte regiunea obiectului și a regiunii de fundal. Astfel, dacă valoarea luminozității la un punct arbitrar depășește o valoare de prag, atunci punctul aparține obiectului, în caz contrar valoarea de fundal. Imaginea binarizată de ieșire conține două gradări de luminozitate: 0 sau 1.
Astfel, într-o imagine, pixelii cu o singură valoare de luminanță aparțin obiectelor și cu o valoare zero la un fundal.
Filtrarea imaginilor este etapa cea mai consumatoare de timp și mai complexă de prelucrare prealabilă. Există multe metode de filtrare diferite cu avantajele și dezavantajele lor. Aplicarea acestei sau acelei metode este determinată de sarcină. Deci, există algoritmi care efectuează simultan două funcții: filtrarea și conturul conturului (filtre de contur). În general, filtrarea rezolvă următoarele sarcini principale:
- Netezirea (suprimarea zgomotului de înaltă frecvență a tipului "zăpadă"
Filtrarea într-un număr de cazuri poate reduce în mod semnificativ interferențele cauzate de sistemul optic, bara de bord, camera (de exemplu, aberațiile lentilelor,
discretizarea asupra domeniului celulelor suprafeței fotosensibile și a neomogenității caracteristicilor lor fotoelectrice).
Posibilitatea de filtrare se datorează faptului că spectrul tulburărilor vizuale conține, de obicei, frecvențe spațiale mai mari decât spectrul imaginii, adică Cantitatea de interferență este mult mai mică decât dimensiunea fragmentului obiectului. Pentru zgomotul de înaltă frecvență de tip "zăpadă", este utilizat un filtru cu trecere joasă. Dezavantajul filtrării cu frecvență joasă este deteriorarea contrastului imaginii.
Dacă imaginea originală nu este destul de precisă, ceea ce se întâmplă la lumină scăzută, sunt utilizate filtre de frecvență înaltă care măresc contrastul imaginii. Filtrul de înaltă trecere frânează frecvențele înalte și netezește zonele care conțin puține detalii, de exemplu strălucirea. Dezavantajul filtrării de înaltă frecvență îl constituie apariția unor artefacte de imagine, în special vizibile pe fundal, sub forma unor elemente fin dispersate, numite "zăpadă".
Imaginea negativă - această imagine, din care luminozitatea este subiectul principal invers, adică zonele cele mai luminoase apar întunecate, iar cel mai întunecat (umbră) - lumina. Pe culoarea negativă, culorile obiectului sunt afișate cu culori suplimentare pe imagine.
Negativ. R '= 255-R; G '= 255 - G; B '= 255 - B
În graficul digital, contrastul poate fi estimat dacă se utilizează o histogramă.
Când măriți contrastul nivelurilor de luminozitate sunt concentrate la marginile graficului, iar marginile sunt deja cunoscute, plasate un alb-negru nivelurile de luminanță, care reprezintă contrastul maxim (amintiți linia de artă alb-negru).
Cu cât contrastul este mai mare, cu atât nivelurile tonului tind spre extreme (valorile de margine ale tonului).
Cu contrast redus, nivelurile de luminozitate sunt concentrate la un anumit nivel de gri, care este valoarea medie a tuturor nivelelor de luminozitate. Valoarea minimă a contrastului, egală cu absența sa totală, corespunde situației în care întreaga imagine se transformă într-o placă de o singură tonă (aceasta, de fapt, nu este o imagine).
Cu cât contrastul este mai scăzut, cu atât nivelurile tonului tind spre nivelul mediu.
Prin urmare, se poate argumenta că contrastul poate varia de la maxim, când numai culorile alb și negru rămân în imagine, la minim, când în imagine rămâne doar un singur nivel de gri.
Notă Trebuie reținut că în imaginile cu mai multe canale de culoare (de exemplu,
Imagini RGB) la un contrast maxim, o imagine este formată nu cu două culori (așa cum părea logic să se aștepte), dar cu mai multe. Acest lucru se datorează faptului că contrastul maxim (alb-negru) este atins în fiecare canal independent unul de celălalt, iar zonele suprapuse formează culorile corespunzătoare.
9. Histograma. Algoritm pentru alinierea histogramei. Sarcina de a modifica luminozitatea și contrastul imaginii.
Luminozitate histograme. Instrument pentru a evalua nivelurile de histogramă intensitate a pixelilor este - o reprezentare grafică a caracteristicilor probabilistice cantitative ale distribuției intensității (luminozitatea) a pixelilor în porțiunea selectată a imaginii. Valoarea maximă a nivelurilor de intensitate a pixelilor este atribuită gradație de intensitate 255 (alb) la întuneric - o valoare de la 0 (negru). Intensitățile variază la 0 la 255 sunt schimbare scală liniară sau stabilită în conformitate cu schimbarea funcției, de exemplu, amplificarea semnalelor slabe (scala gri) și atenueaza semnale puternice (de culoare albă) decât rezoluția crescută spațială și contrastul imaginii sau o anumită zone de interes.
Este cunoscută o metodă imagistică bazată pe calculul logaritmului coeficienților spectrali ai transformării Fourier a imaginii originale (calculul cepstrumului). Când cepstrumul este transformat înapoi în imagine, histograma imaginii este aliniată datorită transformării logaritmice a spectrului de imagini.
Multe imagini sunt caracterizate prin histograme cu o concentrație mare de linii în anumite zone de distribuție a intensității. Adesea, histograma distribuției luminozității imaginii este înclinată către niveluri mici (luminozitatea majorității elementelor este sub medie). O modalitate de îmbunătățire a calității acestor imagini este de a modifica histograma lor. Alinierea histogramei poate fi efectuată pe baza creșterii puterii modulului coeficienților spectrali ai transformării Fourier a imaginii, iar semnul și faza coeficienților sunt conservate. Dacă denotăm exponentul α, atunci pentru α<1 операция извлечения корня степени α уменьшает большие спектральные коэффициенты и увеличивает малые. Такое перераспределение энергии в частотной плоскости изображения приводит к более эффективному использованию динамического диапазона интенсивностей пикселей изображения в пространственной области.
Selectarea unei măști bune ajustează histograma intensității pixelilor mărește contrastul, îmbunătățind astfel rezoluția contrastului detaliilor. În programele de procesare există comenzi care vă permit să setați culorile atunci când cartografiere color a imaginilor are tranziții netede sau, conversabil, ascuțite ale detaliilor afișate în zona de interes. În combinație cu conversia contrastului, care transformă o imagine negativă într-una pozitivă, această metodă permite, de asemenea, creșterea contrastului detaliilor imaginii mici și medii.
Există un arsenal destul de mare de modele și algoritmi matematici, implementarea software-ului vă permite să îmbunătățiți în mod semnificativ rezoluția de contrast a imaginilor. Acești algoritmi se bazează pe procesele de filtrare a imaginii liniare și neliniare, care transformă histograma intensității.
10) Algoritmi de procesare tipic. Algoritmul de convoluție
Există trei grupuri de algoritmi tipici de procesare a imaginii care sunt tipici pentru toate sistemele de vizualizare:
1. pre-procesarea imaginilor;
Scopul procesării imaginilor preliminare este formarea și îmbunătățirea ulterioară a imaginii, binarizarea și codarea acesteia (în special, obținerea unei reprezentări a conturului).
Convoluția este operația de calcul al unei noi valori a pixelului selectat, ținând cont de valorile pixelilor din jur. Pentru a calcula valoarea, folosim o matrice, numită kernelul de convoluție. De obicei, kernelul de convoluție este o matrice pătrată n * n, unde n este ciudat, dar nimic nu împiedică crearea matricei dreptunghiulare. În timpul calculării valorii noi a pixelului selectat, nucleul convoluției este "aplicat" de centrul său (acesta este locul în care dimensiunea impare a matricei este importantă) la acest pixel. Pixelii din jur sunt de asemenea acoperiti de kernel. Apoi, suma este calculată, în cazul în care sumele sunt produsul valorilor pixelilor prin valorile celulei nucleului care a acoperit acest pixel. Suma este împărțită la suma tuturor elementelor din kernelul de convoluție. Valoarea rezultată este doar noua valoare a pixelului selectat. Dacă aplicați o convoluție fiecărui pixel al imaginii, rezultatul va avea un efect, în funcție de kernelul de convoluție selectat.
Vorbind nu în limbajul matematic, convoluția este transformarea unei matrici de către o altă matrice, care se numește "kernel". Atunci când se prelucrează imaginile ca originale apar matrici RGB-canale de pixeli în coordonate dreptunghiulare.
Miezul este, de obicei, o matrice de 3x3, dar poate mai mult (5x5, 7x7, etc.). Nucleul conține gradele de influență ("valoare") a valorilor înconjurătoare ale elementului asupra elementului însuși.
Transformarea este după cum urmează. Fiecare element al matricei inițiale este înmulțit cu valoarea centrală a matricei de bază. În plus, elementele înconjurătoare sunt înmulțite cu valorile corespunzătoare (pentru o dimensiune a kernelului 3x3 sunt 8 dintre ele), după care rezultatele sunt sintetizate și acceptate ca valoare convertită.
Iată un exemplu grafic simplu:
Valoarea convertită este evidențiată cu roșu, intervalul matricei kernel-ului este verde. Ce sa întâmplat ca rezultat al transformării. Valorile tuturor pixelilor din jur,
inclusiv valoarea proprie este zero, cu excepția mediei superioare, unde este egală cu una. Astfel, rezultatul:
După cum puteți vedea, această transformare schimbă imaginea cu 1 pixel.
Astfel, convoluția în acest caz este o transformare a imaginii, ca urmare a faptului că zona înconjurătoare afectează fiecare pixel al rezultatului. Gradul de influență al acestei regiuni este dat printr-o matrice de "miez" sau o matrice de convoluție.
Valorile div și offset
Când procesați imaginile numai prin conversie, nu vă sculați, aveți nevoie de mai multă normalizare. Ce se întâmplă dacă rezultatul este mai mare de 255 sau mai mic de 0? Nu există flori de genul ăsta. Mai mult, faptul că depășirea limitelor de culoare este un eveniment destul de frecvent.
Pentru a normaliza rezultatul, se folosesc variabile suplimentare: div (divizor) și offset (coeficient). Ei lucrează foarte simplu: rezultatul conversiei este împărțit în div și se adaugă o compensare.
Nu este greu de ghicit că în mod implicit div = 1, offset = 0 (div = 0 nu poate fi setat!). În conversii, div este de obicei suma tuturor elementelor matricei
răsucire. Această condiție vă permite să evitați distorsiunile de culoare, dacă nu sunt necesare. Într-adevăr, dacă zona convertită conține aceeași culoare, rezultatul
este obținută ca suma elementelor kernelului înmulțite cu această culoare. În consecință, pentru a lăsa culoarea neschimbată, trebuie să împărțiți rezultatul conversiei cu această sumă.
Filtrele care utilizează foldul de matrice sunt multe, iar cele de mai jos vor fi descrise. Blur filter Cel mai frecvent utilizat filtru, bazat pe matricea de convoluție, este
De obicei, matricea este completă în conformitate cu legea normală (Gaussiană). Mai jos este o matrice de neclaritate de 5x5 umplută în conformitate cu legea distribuției Gaussian.
Coeficienții sunt deja normalizați, deci div pentru această matrice este unul.
Dimensiunea matricei depinde de estompare. Filtru de claritate îmbunătățit
Pentru a îmbunătăți claritatea, ar trebui să se utilizeze următoarea matrice:
Această matrice mărește diferența de valori la limitele. Div pentru această matrice este 1.