Filtre contrastante

Filtre contrastante

Acasă | Despre noi | feedback-ul

Dacă filtrele de netezire reduc contrastul local al imaginii, estompând-o, filtrele de îmbunătățire a contrastului produc efectul opus. Miezul filtrului de sporire a contrastului are o valoare mai mare de 1 la (0, 0), cu un total de toate valorile egale cu 1.

De exemplu, filtrul de intensificare a contrastului este un filtru cu o matrice definită de matrice:

Filtre contrastante

Efectul creșterii contrastului se realizează datorită faptului că filtrul accentuează diferența dintre intensitățile pixelilor învecinați, eliminând aceste intensități unul față de celălalt (Figura 4.20). Acest efect va fi mai puternic, cu atât mai mult va fi valoarea membrului central al nucleului. Rezultatul filtrului pe imaginea originală (Figura 4.20, a) este prezentat în Fig. 4.20, b, pentru că în Fig. 4.20, c.

Fig. 4.20. Exemplu de utilizare a unui filtru de contrast

Un artefact caracteristic de filtrare liniară a contrastului constă în lumină vizibilă și halouri întunecate mai puțin vizibile în jurul limitelor.

Filtrele de diferență sunt adesea folosite pentru a găsi limite în imagini. Este folosit un operator diferențial, care calculează valoarea aproximativă a gradientului [2] al luminozității imaginii. Rezultatul aplicării unui astfel de operator în fiecare punct al imaginii este fie vectorul de gradient al strălucirii în acest punct, fie norma sa.

Rezultatul arată cât de brusc sau "neted" se schimbă luminozitatea imaginii în fiecare punct și, prin urmare, probabilitatea de a găsi un punct pe față, precum și orientarea limitei. În practică, calculul variației luminozității (probabilitatea apartenenței la limită) este mai fiabil și mai ușor de interpretat decât calculul direcției.

Dacă în imagine există o zonă solidă sau o zonă cu tranziții de culoare netedă, imaginile rezultate vor fi vopsite în negru. În cazul în care există diferențe (salturi ascuțite, muchii), înălțimea variației luminozității este ridicată și în imaginea finală apar linii luminoase strălucitoare în astfel de locuri.

Din punct de vedere matematic, gradientul unei funcții a două variabile pentru fiecare punct al imaginii (care este funcția de luminozitate) este un vector bidimensional al cărui componente sunt derivatele luminozității imaginii de-a lungul liniilor orizontale și verticale. În fiecare punct al imaginii, vectorul de gradient este orientat în direcția celei mai mari creșteri a luminozității, iar lungimea sa corespunde mărimii schimbării luminozității.

O modalitate de a găsi granițe pe o imagine este să implementați un filtru sau un operator Sobel, care vă permite să găsiți o aproximare inexactă a gradientului imaginii.

În mod strict vorbind, operatorul utilizează kerneluri 3 × 3 cu care imaginea originală este restrânsă pentru a calcula valorile aproximative ale derivatelor pe orizontală și pe verticală. Formal, operatorul Sobel este definit după cum urmează:

Fie A imaginea originală și Gx și Gy sunt două imagini, în care fiecare punct conține derivate aproximative în raport cu x și y. Acestea sunt calculate după cum urmează:

unde * denotă o operație de convoluție bidimensională (operația de filtrare liniară, considerată mai devreme).

Coordonata x aici crește "spre dreapta", iar y - "jos". În fiecare punct al imaginii, valoarea aproximativă a gradientului poate fi calculată utilizând valorile aproximative ale derivaților obținuți:

Folosind aceste informații, putem calcula și direcția gradientului:

Filtre contrastante

unde, de exemplu, unghiul # 920; este egal cu zero pentru marginea verticală, care are partea întunecată spre stânga.

Operațiile de convoluție Gx și Gy pot fi folosite separat pentru a găsi limite verticale și orizontale. În Fig. 4.21 prezintă un exemplu de aplicare a convoluției Gx (Figura 4.21, b) și Gy (Figura 4.21, c) la imaginea originală (Figura 4.21, a). În cazul utilizării în comun a două operații de convoluție Gx și Gy, putem obține rezultatul prezentat în Fig. 4.22.

Fig. 4.21. Exemplu de identificare a limitelor verticale și orizontale

Spre deosebire de filtrele kontrastopovyshayuschih și uniformizare care nu schimbă intensitatea imaginii medie (suma elementelor nucleului este egal cu unu), așa cum se obține un rezultat al operatorilor de diferență, de obicei, cu o valoare a imaginii pixelilor medie apropiată de zero (suma elementelor de bază egale cu zero). În acest caz, pixelii cu valori apropiate de zero pot fi afișate în alb. Pixelii valorilor luminozității, care s-au dovedit a fi mai mari decât un anumit prag, pot fi afișate în negru.

Rețineți că selectarea tuturor pixelilor, ale căror valori sunt mai mari decât un anumit prag, este o operație locală neliniară, care poate fi considerată drept cel mai simplu exemplu de filtrare neliniară.

Filtre contrastante

Fig. 4.22. Un exemplu de utilizare a operatorului Sobel

În plus față de filtrul Sobel, puteți utiliza operatorul Prewitt sau operatorul Scharr, similar cu algoritmul Sobel, cu excepția folosirii altor matrice.

Algoritmii pentru găsirea limitelor au mai multe dezavantaje. Principala este incertitudinea în alegerea valorii pragului. Pentru diferite părți ale imaginii, un rezultat acceptabil este de obicei obținut la valori de prag semnificativ diferite. În plus, filtrele de diferență sunt foarte sensibile la zgomotul imaginii.

Principala diferență dintre un filtru neliniar și un filtru liniar este că producția unui filtru neliniar este formată în mod neliniar din datele imaginii originale.

Filtrele de linie, în ciuda varietății efectelor lor, nu vă permit să faceți unele dintre cele mai naturale operații. Un bun exemplu este filtrul de prag menționat mai sus. Rezultatul filtrării cu prag este o imagine binară definită după cum urmează:

valoare # 947; este pragul de filtrare. Filtrarea cu prag poate fi folosită ca o etapă preliminară a procesării imaginilor înainte de vectorizare.

Un filtru mai complex, un filtru neliniar care utilizează o vecinătate a unui pixel, este un filtru median sau median. Aici, ca și în filtrele liniare, o fereastră se mișcă în jurul pixelilor, care acoperă pixelii care participă la formarea intensității finale. Valorile din această fereastră sunt tratate ca o matrice unidimensională, care este sortată în ordine ascendentă. Valoarea din mijlocul matricei sortate este alimentată la ieșirea filtrului.

Astfel, filtrarea mediană este capabilă să facă față efectiv zgomotului de impuls atunci când interferențele afectează în mod independent pixelii individuali. Un exemplu de astfel de interferențe sunt „sparte“ și „la cald“ pixeli în fotografia digitală, „zăpadă“ zgomot și altele similare. P. De exemplu, Fig. 4.23, a. Avantajul filtrului median (Fig. 4.23 in) înaintea netezirea filtrare liniar (Fig. 4.23, b) este că zgomotul de intensitate a pixelilor este înlocuită cu o intensitate a pixelilor din fundal, și nu vor fi redistribuite pixeli învecinate ca atunci când se utilizează un filtru de netezire.

Articole similare