Cum se configurează smartphone-uri și PC-uri. Portal informativ
  • Acasă
  • Programe
  • Cercetare de baza. Să aplicăm markeri și chenarele obiectului unei imagini translucide

Cercetare de baza. Să aplicăm markeri și chenarele obiectului unei imagini translucide

Segmentarea bazinului hidrografic condusă

Destul de des, atunci când se analizează imagini, apare sarcina de a împărți pixelii imaginii în grupuri în funcție de anumite caracteristici. Acest proces de împărțire în grupuri se numește segmentare. Cele mai cunoscute sunt două tipuri de segmentare - segmentarea după luminozitate pentru imaginile binare și segmentarea după coordonatele de culoare pentru imaginile color. Metodele de segmentare pot fi considerate ca o formalizare a conceptului de a distinge un obiect de fundal sau concepte asociate cu un gradient de luminozitate. Algoritmii de segmentare sunt caracterizați de anumiți parametri de fiabilitate și acuratețe a prelucrării. Ele depind de cât de pe deplin sunt luate în considerare caracteristici suplimentare distribuția luminozității în zonele obiectelor sau fundalului, numărul de modificări de luminozitate, forma obiectelor etc.

Există multe imagini care conțin obiectul de interes de luminozitate destul de uniformă pe un fundal de luminozitate diferită. Exemplele includ text scris de mână, o serie de imagini medicale etc. Dacă luminozitatea punctelor obiectului diferă mult de luminozitatea punctelor de fundal, atunci rezolvarea problemei stabilirii unui prag este o sarcină simplă. În practică, acest lucru nu este atât de simplu, deoarece imaginea studiată este supusă zgomotului și este permisă o anumită variație a valorilor de luminozitate. Există mai multe abordări analitice pentru limitarea luminozității pragului. O metodă este de a seta pragul la un nivel astfel încât suma totală a elementelor cu luminanțe subprag să fie în concordanță cu probabilitățile anterioare ale acestor valori de luminanță.

Abordări similare pot fi aplicate pentru procesarea imaginilor color și spectrozonale. Există și un tip de segmentare numit segmentare contur. Destul de des, analiza imaginilor include operații precum obținerea conturului extern al imaginilor obiectelor și înregistrarea coordonatelor punctelor de pe acest contur. Există trei abordări principale pentru reprezentarea limitelor unui obiect: aproximarea curbei, trasarea conturului și legarea punctelor de picătură. Pentru a finaliza analiza, trebuie menționat că există și segmentarea texturii și segmentarea formei.

Cel mai vedere simplă segmentarea este segmentarea pragului. A găsit o aplicație foarte largă în robotică. Acest lucru se explică prin faptul că în această zonă, imaginile obiectelor studiate, în cea mai mare parte, au o structură destul de uniformă, iar fundalul lor iese puternic în evidență. Dar, pe lângă aceasta, pentru o procesare fiabilă, trebuie să știți că imaginea constă dintr-un obiect și un fundal, a căror luminozitate se află în intervale strict cunoscute și nu se intersectează una cu alta.

Dezvoltarea tehnologiilor de procesare a imaginilor a condus la apariția unor noi abordări pentru rezolvarea problemelor de segmentare a imaginii și aplicarea lor în rezolvarea multor probleme practice.

În această lucrare vom lua în considerare relativ noua abordare la rezolvarea problemei segmentării imaginii – metoda bazinului hidrografic. Să explicăm pe scurt numele acestei metode și care este esența ei.

Se propune să se considere imaginea ca o hartă a zonei, unde valorile luminozității reprezintă valorile înălțimii raportate la un anumit nivel. Dacă această zonă este umplută cu apă, atunci se formează bazine. Când sunt umplute în continuare cu apă, aceste piscine sunt combinate. Locurile în care aceste bazine se unesc sunt marcate ca linii de bazin.

Separarea obiectelor care se ating într-o imagine este una dintre problemele importante ale procesării imaginii. Așa-numita metodă este adesea folosită pentru a rezolva această problemă. marker bazin hidrografic. Transformările care utilizează această metodă trebuie să identifice „bazine de apă” și „linii de bazin de apă” în imagine prin procesarea zonelor locale în funcție de caracteristicile lor de luminozitate.

Metoda marker-ului este una dintre cele mai eficiente metode de segmentare a imaginii. La implementarea acestei metode, se efectuează următoarele proceduri de bază:

    Se calculează funcția de segmentare. Se referă la imagini în care obiectele sunt situate în zone întunecate și sunt greu de văzut.

    Calcularea jetoanelor prim plan imagini. Acestea sunt calculate pe baza unei analize a conectivității pixelilor fiecărui obiect.

    Calculul markerilor de fundal. Ele reprezintă pixeli care nu sunt părți ale obiectelor.

    Modificarea funcției de segmentare pe baza valorilor de locație ale markerilor de fundal și ale markerilor din prim-plan.

    Calcule bazate pe o funcție de segmentare modificată.

ÎN în acest exemplu printre funcțiile pachetului Image Caseta de instrumente de procesare Cele mai frecvent utilizate funcții sunt fspecial, imfilter, watershed, label2rgb, imopen, imclose, imreconstruct, imcomplement, imregionalmax, bwareaopen, graythresh și imimposemin.

  • Pasul 1: Citiți o imagine color și convertiți-o în tonuri de gri.
  • Pasul 2: Utilizarea valorii gradientului ca funcție de segmentare.
  • Pasul 3: Etichetarea obiectelor din prim-plan.
  • Pasul 4: Calculați marcatorii de fundal.
  • Pasul 6: Vizualizarea rezultatului procesării.

Pasul 1: Citiți o imagine color și convertiți-o în tonuri de gri.

Citim datele din fisierul pears.png rgb=imread("pears.png"); și prezentați-le ca o imagine semiton. I=rgb2gray(rgb); imshow(I) text(732,501,"...",... "FontSize",7,"HorizontalAlignment","dreapta")

Pasul 2: Utilizarea valorii gradientului ca funcție de segmentare.

Operatorul Sobel, funcția imfilter și alte calcule sunt utilizate pentru a calcula valoarea gradientului. Gradientul are valori mari pe granițele obiectelor și mici (în majoritatea cazurilor) în afara granițelor obiectelor.

Hy=fspecial("sobel"); hx=hy"; Iy=imfilter(dublu(I), hy, „replicat”); Ix=imfilter(dublu(I), hx, „replicat”); gradmag=sqrt(Ix.^2+Iy.^2 ); figură, imshow(gradmag,), titlu(„valoare gradient”)

Astfel, după ce s-au calculat valorile gradientului, puteți începe să segmentați imaginile utilizând metoda markerului considerat.

L=watershed(gradmag); Lrgb=label2rgb(L); figură, imshow(Lrgb), titlu(„Lrgb”)

Cu toate acestea, fără alte calcule suplimentare, o astfel de segmentare va fi superficială.

Pasul 3: Etichetarea obiectelor din prim-plan.

Poate fi folosit pentru a marca obiectele din prim-plan diverse proceduri. Acest exemplu va folosi tehnologii morfologice numite „deschidere prin restaurare” și „închidere prin restaurare”. Aceste operațiuni vă permit să analizați regiunea internă a obiectelor imagine folosind funcția imregionalmax.

După cum sa menționat mai sus, la marcarea obiectelor din prim-plan se folosesc și operații morfologice. Să ne uităm la unele dintre ele și să comparăm. În primul rând, implementăm operația de extindere folosind funcția imopen.

Se=strel("disc", 20); Io=imopen(I, se); figură, imshow(Io), titlu(„Io”)

Ie=imerode(I, se); Iobr=imreconstruct(Ie, I); figură, imshow(Iobr), titlu(„Iobr”)

Operațiile ulterioare de deschidere și închidere morfologică vor avea ca rezultat mișcarea petelor întunecate și formarea de markeri. Să analizăm operaţiile de închidere morfologică. Pentru a face acest lucru, utilizați mai întâi funcția imclose:

Ioc=imclose(Io, se); figură, imshow(Ioc), titlu(„Ioc”)

Iobrd=imdilate(Iobr, se); Iobrcbr=imreconstruct(imcomplement(Iobrd), imcomplement(Iobr)); Iobrcbr=imcomplement(Iobrcbr); figură, imshow(Iobrcbr), titlu(„Iobrcbr”)

Comparativ analiza vizuală Iobrcbr și Ioc arată că reconstrucția prezentată bazată pe operațiuni de deschidere și închidere morfologică este mai eficientă în comparație cu operațiuni standard deschidere si inchidere. Să calculăm maximele locale ale Iobrcbr și să obținem markerii din prim-plan.

Fgm=imregionalmax(Iobrcbr); figură, imshow(fgm), titlu("fgm")

Să aplicăm markeri de prim plan imaginii originale.

I2=I; I2(fgm)=255; figură, imshow(I2), titlu ("fgm suprapus pe imaginea originală")

Rețineți că unele obiecte ascunse sau închise din imagine nu sunt etichetate. Această proprietate afectează formarea rezultatului și multe astfel de obiecte imagine nu vor fi procesate din punct de vedere al segmentării. Astfel, marcatorii din prim-plan arată doar limitele majorității obiectelor. Limitele astfel reprezentate sunt supuse unei prelucrări ulterioare. În special, acestea pot fi operații morfologice.

Se2=strel(unii(5, 5)); fgm2=imclose(fgm, se2); fgm3=imerode(fgm2, se2);

Ca rezultat al acestei operațiuni, pixelii izolați individuali ai imaginii dispar. De asemenea, puteți utiliza funcția bwareaopen, care vă permite să eliminați un anumit număr de pixeli.

Fgm4=bwareaopen(fgm3, 20); I3=I; I3(fgm4)=255; figură, imshow(I3) title ("fgm4 suprapus pe imaginea originală")

Pasul 4: Calculați marcatorii de fundal.

Acum să efectuăm operația de marcare a fundalului. În imaginea Iobrcbr, pixelii întunecați aparțin fundalului. Astfel, se poate aplica operația de prag al imaginii.

Bw=im2bw(Iobrcbr, greythresh(Iobrcbr)); figură, imshow(bw), title("bw")

Pixelii de fundal sunt întunecați, dar nu putem efectua pur și simplu operații morfologice pe markerii de fundal și nu putem obține limitele obiectelor pe care le segmentăm. Dorim să „subțiem” fundalul, astfel încât să obținem un adevărat schelet al imaginii, sau așa-numitul prim plan al imaginii în semitonuri. Aceasta este calculată utilizând o abordare bazată pe bazin hidrografic și pe baza măsurătorilor distanței (până la liniile bazinului hidrografic).

D=bwdist(bw); DL = bazin hidrografic (D); bgm=DL==0; figură, imshow(bgm), titlu("bgm")

Pasul 5: Calcul folosind metoda markerului bazinului hidrografic bazat pe funcția de segmentare modificată.

Funcția imimposemin poate fi utilizată pentru a determina cu precizie minimele locale dintr-o imagine. Pe baza acestui lucru, funcția imimposemin poate ajusta și valorile gradienților din imagine și, astfel, poate rafina locația markerilor de prim-plan și de fundal.

Gradmag2=imimposemin(gradmag, bgm | fgm4);

În final, se efectuează o operație de segmentare bazată pe bazin hidrografic.

L=watershed(gradmag2);

Pasul 6: Vizualizarea rezultatului procesării.

Să afișăm marcatori de prim plan suprapus, marcatori de fundal și limitele obiectelor segmentate pe imaginea originală.

I4=I; I4(imdilate(L==0, ones(3, 3))|bgm|fgm4)=255; figure, imshow(I4) title ("Marcatori și limitele obiectelor suprapuse pe imaginea originală")

Ca rezultat al acestui afișaj, puteți analiza vizual locația markerilor de prim-plan și de fundal.

De asemenea, este interesant să afișați rezultatele procesării folosind o imagine color. Matricea care este generată de funcțiile watershed și bwlabel poate fi convertită într-o imagine truecolor folosind funcția label2rgb.

Lrgb=label2rgb(L, „jet”, „w”, „shuffle”); figure, imshow(Lrgb) title("Lrgb")

De asemenea, puteți utiliza modul semi-transparent pentru a suprapune o matrice pseudocoloră de semne deasupra imaginii originale.

Figure, imshow(I), hold on himage=imshow(Lrgb); set(himage, "AlphaData", 0,3); title ("Lrgb suprapus pe imaginea originală în modul semi-transparent")

Trimiteți-vă munca bună în baza de cunoștințe este simplu. Utilizați formularul de mai jos

Studenții, studenții absolvenți, tinerii oameni de știință care folosesc baza de cunoștințe în studiile și munca lor vă vor fi foarte recunoscători.

Postat pe http://www.allbest.ru/

Ministerul Educației și Științei al Federației Ruse

Universitatea de Stat de Inginerie Radio din Ryazan

Departamentul IIBMT

Lucrări de curs

Metode de procesare a imaginilor. Segmentarea

Completat art. gr. 432M:

Aleshin S.I.

Verificat de Conf. univ. departament IIBMT:

Kaplan M.B.

Ryazan 2014

Introducere

1. Prezentarea imaginilor

3. Formate de imagine

4. Tipuri de imagini

5.1 Schimbarea contrastului

5.2 Netezirea zgomotului

5.3 Sublinierea granițelor

5.4 Filtrarea mediană

5.5 Segmentarea imaginii

5.5.3 Contur

5.5.7 Metode de tăiere a graficelor

6. Descrierea funcţiilor

7. Testarea algoritmului

Concluzie

Aplicație

Introducere

La mijlocul secolului al XX-lea, procesarea imaginilor era în mare parte analogică și efectuată dispozitive optice. Astfel de tehnici optice sunt importante și astăzi, în domenii precum holografia. Cu toate acestea, cu crestere ascutita performanțele computerului, aceste metode au fost din ce în ce mai mult înlocuite de metode prelucrare digitală imagini. Metodele de procesare a imaginilor digitale sunt în general mai precise, fiabile, flexibile și mai ușor de implementat decât metodele analogice. Procesarea digitală a imaginilor folosește pe scară largă hardware-ul specializat, cum ar fi procesoarele cu pipeline de instrucțiuni și sistemele multiprocesor. Acest lucru este valabil mai ales pentru sistemele de procesare video. Procesarea imaginii se face și folosind software matematica pe calculator, de exemplu, MATLAB, Mathcad, Maple, Mathematica etc. Pentru aceasta, ei folosesc atât instrumente de bază, cât și pachete de extensie pentru procesarea imaginilor.

Interesul pentru metodele digitale de procesare a imaginilor provine din două domenii principale ale aplicației sale, care sunt îmbunătățirea calității imaginilor pentru a îmbunătăți percepția vizuală a acestora de către oameni și procesarea imaginilor pentru stocarea, transmiterea și prezentarea lor în sisteme autonome viziunea artificială.

Una dintre cele mai complexe metode de procesare digitală a imaginilor este segmentarea imaginii. Segmentarea este procesul de împărțire a unei imagini digitale în mai multe segmente care diferă unele de altele prin caracteristici elementare, cum ar fi luminozitatea, culoarea, textura, forma. Scopul segmentării este de a simplifica și schimba reprezentarea unei imagini astfel încât să fie mai simplu și mai ușor de analizat. Selectarea incorectă a segmentelor dintr-o imagine poate afecta în cele din urmă calitatea recunoașterii și chiar o poate face imposibilă. Prin urmare, sarcina de segmentare este extrem de importantă și foarte relevantă.

Există multe metode de segmentare a imaginii. Rezultatul final este adesea determinat de acuratețea segmentării, așa că atunci când alegeți o anumită metodă de segmentare, trebuie să acordați o mare atenție fiabilității algoritmului. Cu toate acestea, nu există o abordare unică, general acceptată, care să stea la baza majorității algoritmilor. De asemenea, nu există un singur algoritm care să permită o segmentare acceptabilă pentru orice imagine. Aceasta este una dintre dificultățile segmentării și acesta este motivul pentru numărul mare de abordări diferite pentru rezolvarea acestor probleme de procesare a imaginii.

În ciuda relevanței acestui domeniu, relativ puține cărți au fost scrise care abordează ambele baza teoretica, și aspecte software ale rezolvării problemelor de bază ale segmentării imaginii.

Această lucrare prezintă metodele de bază ale procesării digitale a imaginilor. O atenție deosebită este acordată metodelor de segmentare a imaginii. Un program pentru una dintre metodele de segmentare a fost implementat folosind pachetul de aplicație MatLAB.

1. Prezentarea imaginilor

Problemele fundamentale în teoria prelucrării imaginilor sunt întrebări de: formare, intrare, reprezentare într-un computer și vizualizare. Forma unei suprafețe poate fi descrisă ca o funcție a distanței F(x, y) de la suprafață la un punct al imaginii cu coordonatele x și y. Având în vedere că luminozitatea unui punct din imagine depinde numai de luminozitatea suprafeței corespunzătoare, putem presupune că informațiile vizuale reflectă starea de luminozitate sau transparență a fiecărui punct cu un anumit grad de acuratețe. Atunci o imagine este înțeleasă ca o funcție mărginită a două variabile spațiale f(x, y), definite pe un plan dreptunghiular mărginit Oxy și având un anumit set de valori ale acesteia. De exemplu, fotografie alb-negru poate fi reprezentat ca f(x, y)?0, unde 0?x?a, 0?y?b și f(x, y) este luminozitatea (uneori numită densitate optică sau alb) a imaginii în punctul (x). , y); a - lățimea cadrului, b - înălțimea cadrului.

Datorită faptului că memoria digitală a unui computer este capabilă să stocheze numai matrice de date, imaginea este mai întâi convertită într-o formă numerică (matrice). Imaginile sunt introduse în memoria computerului folosind senzori video. Senzorul video convertește distribuția optică a luminozității imaginii în semnale electrice și mai departe în coduri digitale. Deoarece imaginea este o funcție a două variabile spațiale x și y, iar semnalul electric este o funcție a unei variabile t (timp), pentru conversie se utilizează o scanare. De exemplu, când se utilizează camera de televiziune imaginea este citită linie cu linie, iar în cadrul fiecărei linii dependența luminozității de coordonata spațială x este convertită într-o dependență proporțională a amplitudinii semnalului electric în timpul t. Tranziție de la final linia anterioară la începutul următorului se produce aproape instantaneu.

Introducerea imaginilor într-un computer implică inevitabil eșantionarea imaginilor de-a lungul coordonatelor spațiale x și y și cuantificarea valorii luminozității în fiecare punct discret. Discretizarea se realizează folosind o grilă de coordonate formată din drepte paralele cu axele x și y ale unui sistem de coordonate carteziene. La fiecare nod al unei astfel de rețele, se face o citire a luminozității sau transparenței purtătorului de informații percepute vizual, care este apoi cuantificată și prezentată în memoria computerului. Elementul imaginii obținut în procesul de eșantionare a imaginii se numește pixel. Pentru o reprezentare de înaltă calitate a unei imagini cu semitonuri, 28 = 256 de niveluri de cuantizare sunt suficiente, de exemplu. 1 pixel al unei imagini este codificat cu 1 octet de informații.

Principalele caracteristici ale imaginilor sunt:

1. Dimensiunea imaginii;

2. Adâncimea culorii;

3. Permisiune.

2. Codarea imaginilor color

Culoarea este un fenomen care rezultă din interacțiunea dintre lumina, un obiect și un dispozitiv (observator).

S-a stabilit experimental că orice culoare poate fi reprezentată ca suma anumitor cantități de trei culori liniar independente.

Trei culori liniar independente sunt numite culori primare.

Ele definesc un sistem de coordonate de culoare (CCS) sau o schemă de culori, de ex. un set de culori primare pentru a obține culorile rămase.

Schemele de culori sunt împărțite în două soiuri: scheme de culori din lumina emisă și din lumina reflectată.

sistem RGB.

Culorile sale primare sunt roșu cu o lungime de undă de 700 nm, verde cu o lungime de undă de 546,1 nm și albastru cu o lungime de undă de 435,8 nm. Sistemul RGB este aditiv.

În acest caz, cutare sau cutare culoare se obține prin adăugarea culorilor primare.

sistem CMYK.

Acest sistem este folosit pentru a forma culori ale obiectelor colorate neluminoase care absorb o parte din spectrul luminii albe iluminate și reflectă restul radiației.

Sistemul CMYK este baza pentru imprimarea color.

Se bazează pe modelul subtractiv CMY (Cyan - cyan, Magenta - magenta, Galben) - un model de scădere a culorilor. Există încă trei culori primare aici.

Pentru a îmbunătăți calitatea imaginii imprimate, culoarea neagră a fost adăugată sistemului.

Sistem HSB.

Acest sistem se bazează pe utilizarea Hue sau Hue, Saturație și Luminozitate. Nuanța caracterizează o nuanță specifică de culoare, saturația - intensitatea sa relativă, luminozitatea culorii - cantitatea de nuanță neagră pentru a produce o imagine mai întunecată.

O variantă a acestui sistem este schema HSL.

3. Formate de imagine

În prezent în uz un numar mare de diverse formate fisiere grafice. Cele mai utilizate formate sunt TIFF, GIF, JPEG, PNG și BMP.

Formatul TIFF (Tagget Image Format) este unul dintre cele mai fiabile și formate universale pentru stocarea imaginilor color scanate din calitate superioară. Poate folosi compresia prin Algoritmul LZW, adică se referă la formatele de stocare a imaginilor fără pierderi.

Formatul GIF (Graphics Interchange Format) are o paletă de culori de 256 de culori și utilizează algoritmul LZW fără pierderi pentru compresie. Dacă cantitatea originală Dacă există mai mult de 256 de culori, o parte din informațiile de culoare se vor pierde.

Formatul JPEG (Join Photographers Expert Group) se bazează pe algoritmul de compresie a imaginii cu același nume. Este un algoritm de compresie cu pierderi și este conceput pentru a stoca imagini color cu un raport de compresie ridicat. Când utilizați formatul, este posibil să controlați parametrul de calitate de la 0 ( compresie maximă) pana la 100 ( calitate maxima). Raportul de compresie, în funcție de calitate, este de la 10 la 1000. Acest format este cel mai des folosit pentru stocarea fotografiilor color. imagini grafice, care nu sunt destinate prelucrării ulterioare.

format PNG- format raster pentru stocarea informațiilor grafice folosind compresie fără pierderi folosind algoritmul Deflate. Formatul PNG este conceput pentru a înlocui pe cel învechit și mai simplu format GIF, și, de asemenea, într-o oarecare măsură, să înlocuiască formatul TIFF mult mai complex. Formatul PNG este poziționat în primul rând pentru utilizare pe Internet și editarea grafică. Are următoarele avantaje principale față de GIF: un număr aproape nelimitat de culori în imagine; suport opțional pentru canal alfa; posibilitatea de corecție gamma; scanare intercalată bidimensională.

Formatul BMP (BitMaP) este un format raster nativ sistem de operare Windows. Este potrivit pentru stocarea imaginilor atât sub formă indexată cu o paletă de până la 256 de culori, cât și sub formă de imagini RGB full-color cu o adâncime de culoare de 24 de biți. Este posibil să utilizați algoritmul de compresie RLE.

4. Tipuri de imagini

4.1 Imagine cu două niveluri (sau monocromatică).

În acest caz, toți pixelii pot avea doar două valori, care sunt de obicei numite negru (unul binar sau culoarea principală) și alb (zero binar sau culoarea de fundal).

Fiecare pixel dintr-o astfel de imagine este reprezentat de un bit, deci este cel mai simplu tip de imagine.

1. Imagine semiton. O astfel de imagine cu o scară de 2n niveluri este compusă din straturi de n biți.

2. Imagine color. O astfel de imagine este descrisă într-unul dintre formatele prezentate mai sus.

3. Imagine cu ton continuu. Acest tip de imagine poate avea multe culori similare (sau semitonuri). Când pixelii vecini diferă doar cu unul, este aproape imposibil ca ochiul să le distingă culorile. Ca rezultat, astfel de imagini pot conține zone în care culoarea pare să se schimbe continuu pentru ochi. În acest caz, pixelul este reprezentat fie un numar mare(în cazul semitonului) sau trei componente (în cazul unei imagini color). Imaginile cu tonuri continue sunt naturale sau naturale (spre deosebire de cele create de om, artificiale); Ele sunt de obicei obținute prin fotografierea cu o cameră digitală sau prin scanarea fotografiilor sau a desenelor.

4. Imagine cu tonuri discrete (numită și sintetică). De obicei, această imagine este obținută artificial. Poate avea doar câteva culori sau mai multe culori, dar nu are zgomotul și petele unei imagini naturale. Exemple de astfel de imagini includ fotografii cu obiecte create de om, mașini sau mecanisme, pagini de text, hărți, desene sau imagini pe un ecran de computer. (Nu orice imagine artificială va fi neapărat cu tonuri discrete. O imagine generată de computer care este destinată să arate naturală va avea tonuri continue în ciuda originii sale artificiale.) Obiectele artificiale, textul și liniile desenate au forme, limite bine definite. Ele contrastează puternic cu restul imaginii (fondul). Pixelii adiacenți ai unei imagini cu tonuri discrete sunt adesea unici sau variază foarte mult ca valoare. Astfel de imagini sunt slab comprimate folosind metode cu pierderi, deoarece distorsiunea a doar câțiva pixeli ai unei litere o face ilizibilă, transformând stilul obișnuit într-unul complet indistinguibil. Imaginile cu tonuri discrete au de obicei multă redundanță. Multe dintre fragmentele sale sunt repetate de multe ori în locuri diferite din imagine.

5. Imagini asemănătoare desenelor animate. Acestea sunt imagini color care conțin suprafețe mari de aceeași culoare. În acest caz, zonele adiacente pot varia foarte mult în culoare.

5. Metode de procesare a imaginii

Analiza preliminară a imaginilor ne permite să concluzionăm că:

În primul rând, majoritatea imaginilor, în procesul de formare a acestora (fotografierea scanărilor etc.), sunt influențate de o serie de factori negativi (vibrația camerei, mișcarea neuniformă a elementului de scanare etc.), ceea ce duce la neclaritate, apariția unui nivel scăzut. -zone de contrast și zgomot etc.

În al doilea rând, marea majoritate a metodelor se bazează pe identificarea obiectelor din imagine și analizarea în continuare a acestora.

Astfel, înainte de a fi analizată, imaginea trebuie să treacă prin etapa de pregătire, care constă în efectuarea de operații de îmbunătățire a calității vizuale (creșterea contrastului, eliminarea neclarității, sublinierea marginilor, filtrarea) și operații de formare a unei pregătiri grafice (segmentare, evidențiere a contururilor) imaginea.

5.1 Schimbarea contrastului

Contrastul slab este de obicei cauzat de scăderea interval dinamic modificări ale luminozității sau neliniaritate puternică în transmiterea nivelurilor de luminozitate. Cea mai simplă metodă de contrast este maparea funcțională a gradării luminozității fij la gij, adică gij = R(fij). În practică, mapările funcționale liniare sunt foarte des folosite. Dacă, ca urmare a luminii neuniforme atunci când fotografiați sau faceți fotografii, apare o situație în care diferite zone ale imaginii au contrast diferit. În acest caz, se folosesc algoritmi de contrast adaptivi pentru a modifica contrastul. Un exemplu este algoritmul local de îmbunătățire a contrastului. Studiile experimentale au confirmat eficiența ridicată a algoritmului dacă imaginea conține zone cu contraste clar prea mari sau scăzute.

Esența algoritmului este că imaginea este considerată ca un set al unui anumit număr de zone locale, iar aceste zone sunt procesate ținând cont de caracteristicile lor. Prelucrarea se efectuează în următoarea secvență: factorul de câștig al secțiunilor de densitate p este calculat separat pentru fiecare zonă locală a imaginii. Și fiecare pixel al imaginii este procesat. Dacă p este egal cu unu, atunci nu se efectuează nicio acțiune pe o zonă locală a imaginii (dacă p este diferit de unul, atunci contrastul zonei locale este crescut). Inițial, se calculează contrastul în punctul analizat față de cel mai apropiat cartier. Apoi valoarea relativă a contrastului este adăugată la unitate, iar valoarea rezultată este acceptată în algoritm ca factor de câștig p și apoi calculată folosind formula:

contrastul programului de segmentare a imaginii

unde este noua valoare a luminozității, este luminozitatea curentă a imaginii procesate, este necesarul valoare maximă luminozitatea imaginii procesate.

5.2 Netezirea zgomotului

Imaginile sunt supuse zgomotului aditiv și de impuls în timpul etapei de digitizare. Zgomotul aditiv reprezintă unele semnal aleator, care se adaugă celui util la ieșirea sistemului; în cazul în cauză, zgomotul aditiv apare din cauza granulozității peliculei. Zgomotul de impuls, spre deosebire de zgomotul aditiv, se caracterizează prin impactul său asupra semnalului util numai în puncte aleatorii individuale (valoarea semnalului rezultat în aceste puncte capătă o valoare aleatorie). Zgomotul de impuls este tipic pentru sisteme digitale transferul și stocarea imaginilor. Astfel, în procesul de pregătire a imaginii, apare problema suprimării zgomotului.

Cea mai simplă metodă de a netezi zgomotul dintr-o imagine este netezirea, adică. înlocuirea valorii de luminozitate a fiecărui element cu valoarea medie găsită în vecinătatea acestuia:

unde este setul de puncte aparținând vecinătății punctului (inclusiv punctul însuși); - numarul de puncte din cartier.

Metoda luată în considerare elimină în mod eficient aditivul și zgomot de impulsîn fiecare element al imaginii.

5.3 Sublinierea granițelor

Tehnicile de netezire a imaginii pot elimina zgomotul foarte eficient. Dezavantaj semnificativ algoritmii de netezire estompează imaginea (adică reduc claritatea elementelor de contur), iar cantitatea de estompare este proporțională cu dimensiunea măștii utilizate pentru netezire. Pentru analiza fără ambiguitate a imaginii, în special atunci când se calculează caracteristicile geometrice ale elementelor structurale, este foarte important să se elimine neclaritatea de pe contururile obiectelor din imagine, adică să se sporească diferența dintre gradațiile de luminozitate ale elementelor de contur ale obiectului și elemente de fundal vecine. În acest caz, la procesarea imaginilor, se folosesc metode de subliniere a contururilor.

De obicei, îmbunătățirea marginilor este realizată utilizând filtrarea spațială de înaltă frecvență. Caracteristicile filtrelor sunt specificate ca o mască în care valoarea medie trebuie să fie egală cu zero.

O altă metodă de subliniere a granițelor este așa-numita diferențiere statică. În această metodă, valoarea luminozității fiecărui element este împărțită la o estimare statistică a abaterii standard, adică (abaterea standard este calculată într-o vecinătate a elementului).

5.4 Filtrarea mediană

Filtrarea mediană se referă la metode neliniare de procesare a imaginii și are urmatoarele avantajeînainte de filtrarea liniară (procedura clasică de netezire): păstrează modificările ascuțite (limitele); netezește eficient zgomotul de impuls; nu modifică luminozitatea fundalului.

Filtrarea mediană se realizează prin deplasarea unei deschideri (mască) de-a lungul imagine discretăși înlocuirea valorii elementului central al măștii cu valoarea mediană (valoarea medie a secvenței ordonate) a elementelor originale din deschidere. ÎN caz general, deschiderea poate avea o mare varietate de forme, dar în practică deschiderea pătrată de dimensiune

5.5 Segmentarea imaginii

Segmentarea imaginii este înțeleasă ca procesul de împărțire a acesteia în părți componente care au o semnificație semnificativă: obiecte, limitele acestora sau alte fragmente informative, trăsături geometrice caracteristice etc. În cazul automatizării metodelor de achiziție a imaginii, segmentarea trebuie considerată ca fiind etapa inițială principală a analizei, care constă în construirea unei imagini de descriere formală, a cărei calitate determină în mare măsură succesul rezolvării problemei recunoașterii și interpretării obiectelor.

În general, segmentarea este operația de partiționare a unei mulțimi finite a unui plan pe care funcția imaginii originale este definită în submulțimi conectate nevide, în conformitate cu un predicat definit pe mulțime și acceptând valori adevărate, atunci când orice pereche de puncte din fiecare subset satisface un anumit criteriu de omogenitate (de exemplu, un criteriu de omogenitate bazat pe o estimare a diferenței maxime de luminozitate a unui pixel individual și a valorii medii a luminozității calculată pe zona corespunzătoare).

5.5.1 Metode de segmentare a pragului

Thresholdingul este una dintre principalele metode de segmentare a imaginii datorită proprietăților sale intuitive. Această metodă se concentrează pe procesarea imaginilor, zone omogene individuale ale căror luminozitate medie diferă. Cea mai comună metodă de segmentare prin prag este segmentarea binară, adică atunci când avem două tipuri de zone omogene la dispoziție.

În acest caz, imaginea este procesată pixel cu pixel și conversia fiecărui pixel al imaginii de intrare în ieșire este determinată din relația:

unde este un parametru de procesare numit prag și sunt nivelurile de luminozitate de ieșire. Procesarea prin pixeli, a cărei poziție în imagine nu joacă niciun rol, se numește procesare punct. Nivelurile joacă rolul de mărci. Ei determină ce tip aparțin. acest punct: la H0 sau la H1. Sau se spune că H0 este format din puncte de fundal, iar H1 din puncte de interes. De regulă, nivelurile corespund nivelurilor de alb și negru. Vom numi clasele H1 (alias clasa de interes) clasa de obiecte, iar clasa H0 clasa de fundal.

Desigur, segmentarea poate fi nu numai binară, iar în acest caz există mai mult de două clase existente. Acest tip de segmentare se numește multi-nivel. Imaginea rezultată nu este binară, dar constă din segmente de luminozitate diferită. Oficial această operațiune se poate scrie astfel:

unde este numărul de niveluri și sunt clasele de imagini. În acest caz, pentru fiecare dintre clase, trebuie setat un prag adecvat care să separe aceste clase una de cealaltă. Imaginile binare sunt mai ușor de stocat și procesat decât imaginile care au multe niveluri de luminozitate.

Cel mai dificil lucru cu privire la prag este procesul de determinare a pragului în sine. Pragul este adesea scris în funcție de forma:

unde este imaginea și este o caracteristică a punctului imaginii, de exemplu, luminozitatea medie din vecinătatea centrată în acest punct.

Dacă valoarea pragului depinde numai de, adică aceeași pentru toate punctele imaginii, atunci un astfel de prag se numește global. Dacă pragul depinde de coordonatele spațiale, atunci un astfel de prag se numește local. Dacă depinde de caracteristici, atunci un astfel de prag se numește adaptiv. Astfel, procesarea este considerată globală dacă se aplică întregii imagini ca întreg, și locală dacă se aplică unei anumite zone selectate.

Pe lângă distincțiile enumerate între algoritmi, există mult mai multe metode. Multe dintre ele sunt pur și simplu o combinație a altora, dar cele mai multe dintre ele, într-un fel sau altul, se bazează pe analiza histogramei imaginii originale, cu toate acestea, există în mod fundamental alte abordări care nu afectează analiza histogramelor în formă directă sau trece de la ele la analiza unor alte funcţii.

5.5.2 Metode pentru suprafețele de creștere

Metodele acestui grup se bazează pe utilizarea caracteristicilor de imagine locale. Ideea metodei de creștere a zonei este de a analiza mai întâi punctul de plecare, apoi punctele învecinate etc. în conformitate cu un anumit criteriu de omogenitate, și includerea ulterioară a punctelor analizate într-un grup sau altul (numărul de puncte de plecare trebuie să fie egal cu numărul de zone omogene din imagine). În mai mult opțiuni eficiente Metoda nu folosește pixeli individuali ca punct de plecare, ci descompune imaginea într-un număr de zone mici. Fiecare zonă este apoi verificată pentru uniformitate, iar dacă rezultatul testului este negativ, zona corespunzătoare este împărțită în secțiuni mai mici. Procesul continuă până când toate zonele selectate trec testul de omogenitate. După aceasta, începe formarea de zone omogene folosind extensii.

Segmentarea pragului și segmentarea bazată pe criteriul de omogenitate bazat pe luminozitatea medie de multe ori nu dau rezultatele dorite. Această segmentare are ca rezultat, de obicei, un număr semnificativ de regiuni mici care nu au prototipuri reale în imagine. Cele mai eficiente rezultate se obțin prin segmentare bazată pe criteriul de omogenitate bazat pe textură (sau caracteristicile texturii).

5.5.3 Contur

Nu este neobișnuit să întâmpinați problema de a găsi perimetre, curbură, factori de formă, suprafață specifică a obiectelor etc. Toate sarcinile enumerate sunt într-un fel sau altul legate de analiza elementelor de contur ale obiectelor.

Metodele de identificare a contururilor (bordurilor) într-o imagine pot fi împărțite în următoarele clase principale:

metode de filtrare trece-înaltă;

metode de diferențiere spațială;

Metode de aproximare funcțională.

Comun tuturor acestor metode este tendința de a considera limitele ca o zonă de schimbare bruscă a funcției de luminozitate a imaginii; Ceea ce le distinge este modelul matematic introdus al conceptului de graniță și algoritmul de căutare a punctelor de limită.

În conformitate cu sarcinile atribuite, algoritmilor de extracție a contururilor li se impun următoarele cerințe: contururile selectate trebuie să fie subțiri, fără întreruperi și închise. Astfel, procesul de identificare a contururilor este oarecum complicat din cauza necesității de a aplica algoritmi de subțiere și eliminare a golurilor. Cu toate acestea, acest lucru nu dă întotdeauna rezultatul dorit - în cele mai multe cazuri, contururile nu sunt închise și, prin urmare, nepotrivite pentru o serie de proceduri de analiză.

Problema care a apărut poate fi rezolvată prin conturarea cu un algoritm de urmărire a marginilor folosind metoda „bug”, care vă permite să evidențiați contururile închise ale obiectelor. Esența algoritmului este următoarea: un anumit punct de limită de pornire este selectat pe obiect și conturul este trasat secvenţial până când este atins punctul de pornire. În cazul trasării conturului în sensul acelor de ceasornic, pentru a ajunge la punctul de plecare, se efectuează o mișcare pixel cu pixel spre dreapta dacă pixelul se află în afara obiectului și spre stânga dacă se află pe obiect.

Conturul selectat în acest fel este un cod de lanț închis, adică. o succesiune de coordonate ale punctelor limită ale unui obiect, care este foarte convenabilă pentru rezolvarea problemelor atribuite.

5.5.4 Metode bazate pe clustering

Metoda K-means este o metodă iterativă care este utilizată pentru a împărți o imagine în K clustere. Algoritmul de bază este prezentat mai jos:

1. Selectați K centre de cluster, aleatoriu sau pe baza unor euristici;

2. Plasați fiecare pixel de imagine într-un grup al cărui centru este cel mai aproape de acest pixel;

3. Recalculați centrii clusterului făcând media tuturor pixelilor din cluster;

4. Repetați pașii 2 și 3 până la convergență (de exemplu, când pixelii rămân în același cluster).

Aici, distanța este de obicei luată ca sumă a pătratelor sau a valorilor absolute ale diferențelor dintre pixel și centrul clusterului. Diferența se bazează de obicei pe culoare, luminozitate, textura și locația pixelilor sau pe o sumă ponderată a acestor factori.

K poate fi ales manual, aleatoriu sau euristic.

Este garantat că acest algoritm va converge, dar este posibil să nu aibă ca rezultat o soluție optimă.

Calitatea soluției depinde de setul inițial de clustere și de valoarea lui K.

5.5.5 Metode de histogramă

Metodele bazate pe histogramă sunt foarte eficiente în comparație cu alte metode de segmentare a imaginii, deoarece necesită o singură trecere prin pixeli. În această metodă, o histogramă este calculată pe toți pixelii din imagine, iar minimele și maximele acesteia sunt folosite pentru a găsi clustere în imagine. Culoarea sau luminozitatea pot fi folosite în comparație.

O îmbunătățire a acestei metode este aplicarea recursiv la clusterele din imagine pentru a le împărți în clustere mai mici. Procesul se repetă cu clustere din ce în ce mai mici până când nu apar noi clustere.

Un dezavantaj al acestei metode este că poate avea dificultăți în a găsi minime și maxime semnificative în imagine. În această metodă de clasificare a imaginilor, metrica distanței și potrivirea regiunilor integrate sunt similare.

Abordările bazate pe histograme pot fi, de asemenea, adaptate rapid în mai multe cadre, păstrând în același timp avantajul de viteză într-o singură trecere. O histogramă poate fi construită în mai multe moduri atunci când sunt luate în considerare mai multe cadre. Aceeași abordare care este folosită pentru un cadru poate fi aplicată la mai multe, iar odată ce rezultatele sunt combinate, scăderile și înaltele care au fost greu de izolat devin mai vizibile. O histogramă poate fi aplicată, de asemenea, pe bază de pixeli, unde informațiile sunt utilizate pentru a determina cea mai comună culoare pentru această prevedere pixel. Această abordare utilizează segmentarea bazată pe obiecte în mișcare și pe împrejurimile staționare, ceea ce oferă un alt tip de segmentare utilă în urmărirea video.

5.5.6 Metode pentru suprafețele de cultură

Prima a fost metoda de cultivare a suprafețelor din semințe. Această metodă preia imagini și un set de semințe ca intrare. Semințele marchează obiectele de evidențiat. Regiunile cresc treptat prin compararea tuturor pixelilor vecini neocupați cu regiunea. Diferența d dintre luminozitatea pixelilor și luminozitatea medie a regiunii este utilizată ca măsură de similitudine. Pixelul cu cea mai mică astfel de diferență este adăugat în zona corespunzătoare. Procesul continuă până când toți pixelii sunt adăugați la una dintre regiuni.

Metoda de cultivare a suprafețelor din semințe necesită aport suplimentar. Rezultatul segmentării depinde de alegerea semințelor. Zgomotul din imagine poate fi cauzat de semințe prost plasate. Metoda de cultivare a regiunilor fără utilizarea semințelor este un algoritm modificat care nu necesită semințe explicite. Începe cu o singură regiune - pixelul ales aici are un efect redus asupra segmentării finale. La fiecare iterație, ia în considerare pixelii învecinați în același mod ca metoda de creștere a regiunii folosind semințe. Dar diferă acolo, că, dacă minimul nu este mai mic decât pragul specificat, atunci este adăugat în zona corespunzătoare. În caz contrar, pixelul este considerat foarte diferit de toate regiunile curente și este creată o nouă regiune care conține acest pixel.

O variantă a acestei metode se bazează pe utilizarea luminozității pixelilor. Media și varianța regiunii și luminozitatea pixelului candidat sunt utilizate pentru a construi statisticile de testare. Dacă statistica testului este suficient de mică, atunci pixelul este adăugat la regiune și media și varianța regiunii sunt recalculate. În caz contrar, pixelul este ignorat și utilizat pentru a crea o nouă regiune.

5.5.7 Metode de tăiere a graficelor

Metodele de tăiere grafică pot fi aplicate eficient la segmentarea imaginii. În aceste metode, o imagine este reprezentată ca un grafic ponderat nedirecționat. În mod obișnuit, un pixel sau un grup de pixeli este asociat cu un vârf, iar greutățile marginilor determină asemănarea sau neasemănarea pixelilor vecini. Graficul este apoi tăiat după un criteriu creat pentru a obține clustere „bune”. Fiecare porțiune de vârfuri (pixeli) produse de acești algoritmi este considerată un obiect din imagine.

5.5.8 Segmentarea bazinului hidrografic

În segmentarea bazinului hidrografic, imaginea este considerată o hartă a zonei, unde valorile de luminozitate reprezintă valori de înălțime relativ la un anumit nivel. Dacă această zonă este umplută cu apă, atunci se formează bazine. Când sunt umplute în continuare cu apă, aceste piscine sunt combinate. Locurile în care aceste bazine se unesc sunt marcate ca linii de bazin.

În această interpretare, sunt luate în considerare trei tipuri de puncte:

1. minim local;

2. puncte situate pe o pantă, i.e. din care apa se rostogolește până la același minim local;

3. puncte maxime locale, i.e. din care apa se rostogolește în mai mult de un minim.

Separarea obiectelor care se ating într-o imagine este una dintre problemele importante ale procesării imaginii. Adesea, pentru a rezolva această problemă, se folosește așa-numita metodă a bazinului hidrografic. Transformările care utilizează această metodă trebuie să identifice „bazine de apă” și „linii de bazin de apă” în imagine prin procesarea zonelor locale în funcție de caracteristicile lor de luminozitate.

Metoda marker-ului este una dintre cele mai eficiente metode de segmentare a imaginii.

La implementarea acestei metode, se efectuează următoarele proceduri de bază:

1. Se calculează funcția de segmentare. Se referă la imagini în care obiectele sunt situate în zone întunecate și sunt greu de văzut.

2. Calculul markerilor de prim plan ai imaginilor. Acestea sunt calculate pe baza unei analize a conectivității pixelilor fiecărui obiect.

3. Calculul markerilor de fundal. Ele reprezintă pixeli care nu sunt părți ale obiectelor.

4. Modificarea funcției de segmentare pe baza valorilor de locație ale markerilor de fundal și ale markerilor de prim plan.

Una dintre cele mai importante aplicații ale segmentării pe bazine de apă este selectarea obiectelor de luminozitate uniformă (sub formă de pete) din fundalul unei imagini. Zonele caracterizate prin variații mici de luminozitate au valori mici de gradient. Prin urmare, în practică, apare adesea o situație când metoda de segmentare a bazinului de apă este aplicată nu imaginii în sine, ci gradientului acesteia.

6. Descrierea funcţiilor

Această lucrare prezintă un algoritm de segmentare a imaginii folosind metoda marker watershed.

Principalele funcții utilizate la crearea unui program:

Funcția fspecial creează un filtru bidimensional de tipul specificat;

Funcția imfilter este o operație morfologică pentru crearea unei imagini gradient;

Funcția Watershed convertește un watershed dintr-o imagine;

Funcția label2rgb convertește imaginea originală în tonuri de gri;

Funcția imregionalmax determină toate maximele locale ale imaginii;

Funcția imextendedmin găsește puncte „joase” în imagine care se află mai adânc decât un anumit nivel de prag în comparație cu împrejurimile lor imediate;

Funcția imimposemin modifică imaginea în tonuri de gri astfel încât minimele locale să fie atinse doar în pozițiile marcate; alte valori ale pixelilor sunt crescute pentru a elimina toate celelalte puncte minime locale;

Funcții imreconstruct și imcomplement - reconstrucția imaginii folosind operații morfologice de deschidere (închidere).

7. Testarea algoritmului

La implementarea acestei metode au fost efectuate următoarele proceduri:

1. Citiți imaginea și convertiți-o în tonuri de gri (Figura 1);

Figura 1. Imagini originale (stânga) și semiton (dreapta).

2. Utilizăm valorile gradientului ca funcție de segmentare (Figura 2);

Figura 2. Valorile gradientului.

3. Efectuăm operații morfologice asupra imaginii (Figura 3);

Figura 3. Rezultatul aplicării operațiilor morfologice de deschidere-închidere prin reconstrucția imaginii.

4. Calculați markerii de prim plan și de fundal ai imaginii (Figura 4);

Figura 4. Markerii de prim plan (stânga) și de fundal (dreapta) ai unei imagini.

5. Construim limitele bazinelor hidrografice (Figura 5);

Figura 5. Limitele bazinului hidrografic.

6. Afișați marcajele și limitele obiectelor pe o imagine în semiton (Figura 6);

Figura 6. Marcatori și limite ale obiectelor.

7. Afișați rezultatul segmentării folosind o imagine color (stânga) și folosind un mod semi-transparent (dreapta).

Figura 7 Rezultatele segmentării.

Concluzie

În această lucrare, este dezvoltată o metodă de marcare a bazinului hidrografic pentru segmentarea imaginilor.

Aplicarea directă a algoritmului de segmentare a bazinului hidrografic are ca rezultat o segmentare redundantă, deci pentru management segmentare excesivă A fost folosită o abordare bazată pe ideea de markeri.

Un marker reprezintă o componentă conectată aparținând unei imagini. De asemenea, înainte de segmentarea pe bazine hidrografice, a fost efectuată preprocesarea necesară a imaginii.

Lista surselor utilizate

1. Gonzalez R., Woods R. Procesare digitală a imaginii. - M.: Tehnosfera, 2005. 1072 p.

2. Pratt W. Procesarea digitală a imaginii. - M.: Mir, cartea 1, 1982. 312 p.

3. Yaroslavsky L.P. Introducere în procesarea digitală a imaginilor. - M: Sov. radio, 1979. 312 p.

4. Pratt W. Procesarea digitală a imaginii. - M: Pace, carte. 1, 1982. 480 p.

5. http://www.ict.edu.ru/lib/

6. http://matlab.exponenta.ru/imageprocess/book2/76.php

7. Vizilter Yu.V. Prelucrarea și analiza imaginilor digitale cu exemple în LabVIEW și IMAQ VIsion. - M: DMK, 2011. 464 p.

8. Gonzalez R., Woods R., Eddins S. Digital image processing in MATLAB. - M: Technosphere, 2006. 616 p.

9. http://matlab.exponenta.ru/imageprocess/book2/48.php

10. Salomon D. Comprimarea datelor, imaginilor și sunetului. - M.: Tehnosfera, 2004. 368 p.

Aplicație

Numărăm imaginea

rgb=imread("C:\Utilizatori\Nume\Documente\MATLAB\picture1.jpeg");

Să ne imaginăm ca pe un semiton

I=rgb2gray(rgb);figura,imshow(I);

Calculați valoarea gradientului

hy=fspecial("sobel"); hx=hy";

Iy=imfilter(dublu(I), hy, „replica”);

Ix=imfilter(dublu(I), hx, „replica”);

gradmag=sqrt(Ix.^2+Iy.^2);

Să aplicăm metoda bazinului de apă

L=watershed(gradmag);Lrgb=label2rgb(L);

Operații morfologice

se = strel("disc",15);

Ie = imerode(I, se);Iobr = imreconstruct(Ie, I);

Iobrd = imdilate(Iobr, se);

Iobrcbr = imreconstruct(imcomplement(Iobrd), imcomplement(Iobr));

Iobrcbr = imcomplement(Iobrcbr);

Să calculăm maximele locale

fgm = imregionalmax(Iobrcbr);

Să punem markere pe imagine

I2 = I;I2(fgm) = 255;

Eliminarea pixelilor izolați individuali

se2 = strel(ones(3,3));fgm2 = imclose(fgm, se2);fgm3 = imerode(fgm2, se2);

Eliminați un număr specificat de pixeli

fgm4 = bwareaopen(fgm3, 20);

Suprapuneți-l pe imaginea originală

I3 = I;I3(fgm4) = 255;

Să calculăm marcajele de fundal

bw = im2bw(Iobrcbr, greythresh(Iobrcbr));

Măsurarea distanței până la linia bazinului de apă

D = bwdist(bw);DL = watershed(D);bgm = DL == 0;

figura, imshow(bgm), titlu("bgm");

Ajustarea valorii gradientului

gradmag2 = imimposemin(gradmag, bgm | fgm4);

L = bazin hidrografic(gradmag2);

Aplicați marcatori și limite de obiect la imaginea sursă

I4 = I;I4(imdilate(L == 0, ones(3, 3)) | bgm | fgm4) = 255;

Afișați rezultatul folosind o imagine color

Lrgb = label2rgb(L, „jet”, „w”, „shuffle”);

Să aplicăm markeri și chenarele obiectului unei imagini translucide

figura, imshow(I), stai

himage = imshow(Lrgb);

set(himage, "AlphaData", 0,3);

titlu ("Lrgb2");

Postat pe Allbest.ru

...

Documente similare

    Sisteme radiografice digitale. Metode de analiză automată a imaginii în mediul MatLab. Analiză imagine cu raze X. Filtrare, segmentare, îmbunătățire a imaginii. Capacități hardware pentru normalizarea preliminară a imaginii.

    lucrare curs, adaugat 12.07.2013

    Selectarea metodelor de procesare și segmentare a imaginii. Bazele matematice ale filtrelor aplicate. Histograma luminozității imaginii. Implementare software metoda complexa procesarea imaginii. Testarea celor dezvoltate software.

    lucrare curs, adăugată 18.01.2017

    Studiază și implementare softwareîn mediul Matlab, metode de procesare, analiză, filtrare, segmentare și îmbunătățire a calității imaginilor medicale cu raze X. Sisteme radiografice digitale. Dezvoltarea algoritmilor bazati pe static.

    lucrare curs, adăugată 20.01.2016

    Sisteme moderne pentru analiza texturii imaginilor. Exemple de segmentare a texturii imaginilor cu un singur canal. Utilizarea caracteristicilor obținute dintr-o histogramă de luminozitate de ordinul doi pentru clasificarea fotografiilor aeriene spectrozonale.

    rezumat, adăugat 15.01.2017

    Grafică pe computer iar procesarea imaginilor de către calculatoare electronice reprezintă cel mai important aspect al utilizării computerelor în toate sferele activității umane. Dezvoltarea unui „subsistem de segmentare liniară”, descrierea algoritmului și a logicii.

    teză, adăugată 23.06.2008

    Probleme de prelucrare digitală a imaginilor. Metode de segmentare a pragului. Crearea unui program pentru reprezentarea unui desen sub forma unei matrice și aplicarea procesării pragului acestuia. Dezvoltarea unei interfețe pentru un program de încărcare și filtrare a imaginilor cu un prag selectat.

    lucrare de curs, adăugată 11.12.2012

    Descrierea metodelor matematice de reprezentare și prelucrare a imaginilor grafice. Descrierea suplimentului software dezvoltat. Descrierea funcțiilor și a atributelor acestora. Prezentarea si prelucrarea imaginilor grafice. Rezultatele testării programului.

    lucrare curs, adăugată 27.01.2015

    Problema procesării spațiotemporale a imaginii în prezența zgomotului și interferențelor. Metode de optimizare pentru prelucrarea spațiotemporală a imaginii. Structura program de specialitate, descrierea acesteia interfața cu utilizatorul. Cost estimat.

    teză, adăugată 06.10.2013

    Detectarea detaliilor și a limitelor acestora într-o imagine. Aplicarea algoritmilor de clasare. Utilizarea algoritmilor de cuantificare în modul adaptiv în modul de procesare fragment cu fragment. Filtrarea generalizată a imaginilor lineare. Refacerea zonelor lipsă.

    lucrare curs, adaugat 17.06.2013

    Revizuirea software-ului existent pentru automatizarea selectării marginilor dintr-o imagine. Dezvoltare model matematic procesarea imaginilor și extracția marginilor în tonuri de gri și software pentru algoritmi de procesare a imaginilor.

Articolul descrie un studiu al metodelor de segmentare a imaginii pe diverse exemple. Scopul studiului este de a descoperi avantajele și dezavantajele unor metode cunoscute.


Metode care vor fi discutate în acest articol:

  1. Metoda de creștere a regiunii;
  2. Metoda bazinului hidrografic;
  3. Metoda de tăiere normală.

Studiul metodelor de segmentare pe imagini model

Cercetările privind metodele de segmentare au fost efectuate inițial pe modele de imagine. Nouă tipuri de imagini au fost folosite drept modele.




Rezultatele studiului au arătat:

  • Metoda de creștere a regiunii localizează defectele de textura, atât cele care sunt net diferite de fundal, cât și cele formate prin rotirea și modificarea luminozității texturii;
  • Metoda de creștere a regiunii localizează defectele în grade diferite la diferite unghiuri de rotație a texturii;
  • Metoda de segmentare a bazinului hidrografic considerată în forma originala nu oferă localizarea defectelor de textura;
  • Metoda de tăiere normală este bună la localizarea prezenței unei texturi diferite de fundal, dar nu evidențiază modificările de luminozitate și rotația texturii.

Studiul metodelor de segmentare pe imagini obiect

Pentru studiul metodelor de segmentare a fost pregătită o bază de date cu imagini ale diferitelor obiecte. Imaginile rezultate au fost segmentate folosind diverse metode, al cărui rezultat este prezentat în figurile din tabel


Imagine originală Metoda de creștere a regiunii Metoda de tăiere normală Metoda bazinului hidrografic

Rezultate:

  • Metoda de creștere a regiunii nu asigură localizarea segmentelor în imaginile obiectului;
  • Metodele considerate de bazin hidrografic și secțiuni normale în forma lor originală nu asigură localizarea obiectelor prezentate;
  • Metoda de tăiere normală asigură localizarea obiectelor în imaginile obiectului.

rezultate

Rezultatele studiului:

  • Metoda de creștere a regiunilor nu asigură localizarea segmentelor atât în ​​imaginile modelului, cât și în imaginile obiectului și oferă, de asemenea, localizarea elementelor infrastructurii de transport rutier.
  • Metodele considerate de bazin hidrografic și secțiuni normale în forma lor originală nu asigură pe deplin localizarea obiectelor prezentate.
  • Metoda tăierilor normale asigură localizarea obiectelor atât în ​​imaginile modelului, cât și în imaginile obiectelor și oferă, de asemenea, localizarea elementelor infrastructurii de transport rutier.
  • Metoda de creștere a regiunii și metoda secțiunii normale pot fi recomandate pentru utilizare în sisteme automatizate control vizual.
Una dintre sarcinile principale ale procesării și analizei imaginilor este segmentarea, adică. împărțirea unei imagini în zone pentru care este îndeplinit un anumit criteriu de omogenitate, de exemplu, evidențierea zonelor de aproximativ aceeași luminozitate în imagine. Conceptul de zonă de imagine este folosit pentru a defini un grup coerent de elemente de imagine care au un anumit trasatura comuna(proprietate).
Una dintre modalitățile principale și cele mai simple este de a construi segmentarea folosind un prag. Un prag este un semn (proprietate) care ajută la împărțirea semnalului dorit în clase. Operația de împărțire a pragului este de a compara valoarea luminozității fiecărui pixel din imagine cu o valoare de prag specificată.
Binarizarea

Operația de prag care are ca rezultat o imagine binară se numește binarizare. Scopul operației de binarizare este reducerea radicală a cantității de informații conținute în imagine. În procesul de binarizare, imaginea inițială de semitonuri, care are un anumit număr de niveluri de luminozitate, este convertită în imagine alb-negru, ai cărui pixeli au doar două valori – 0 și 1

Limitarea unei imagini se poate face în diferite moduri.

Binarizare cu prag mai mic
Binarizare cu prag mai mic
Binarizarea cu un prag mai mic este cea mai simplă operație, care utilizează o singură valoare de prag:

Toate valorile devin 1 în loc de criteriu, în în acest caz, 255 (alb) și toate valorile pixelilor (amplitudini) care sunt mai mari decât pragul t - 0 (negru).

Binarizare cu prag superior
Uneori se poate folosi o variantă a primei metode, care produce un negativ al imaginii obținute prin procesul de binarizare. Operație de binarizare cu prag superior:

Binarizare cu dublă constrângere
Pentru a evidenția zonele în care valorile luminozității pixelilor pot varia într-un interval cunoscut, se introduce binarizarea cu dublă limitare (t 1
Sunt posibile și alte variații ale pragurilor, în care doar o parte a datelor este trecută prin (filtru de bandă medie).

Limitare incompletă
Această transformare produce o imagine care poate fi mai ușor de analizat în continuare, deoarece devine lipsită de fundal cu toate detaliile prezente în imaginea originală.

Transformarea pragului pe mai multe niveluri
Această operație formează o imagine care nu este binară, ci este formată din segmente cu luminozități diferite.

În ceea ce privește binarizarea, asta este în esență. Deși putem adăuga că există unul global, care este folosit pentru întreaga imagine, și există și unul local, care surprinde o parte din imagine (imagine).

Limitarea locală
metoda Otsa
Metoda utilizează o histogramă a distribuției valorilor de luminozitate ale pixelilor imaginii raster. O histogramă este construită folosind valorile p i =n i /N, unde N este numărul total de pixeli din imagine, n i este numărul de pixeli cu nivelul de luminozitate i. Gama de luminozitate este împărțită în două clase folosind pragul nivelului de luminozitate k,k - o valoare întreagă de la 0 la L. Fiecare clasă corespunde frecvențelor relative ω 0 ω 1:

Niveluri medii pentru fiecare dintre cele două clase de imagini:
În continuare, se calculează valoarea maximă pentru evaluarea calității împărțirii imaginii în două părți:
unde (σ cl)2=ω 0 ω 1 (μ 1 -μ 0) 2 este varianța interclasă și (σ total) 2 este varianța totală pentru întreaga imagine.

Limitare bazată pe gradientul de luminozitate a imaginii
Să presupunem că imaginea analizată poate fi împărțită în două clase - obiecte și fundal. Algoritmul pentru calcularea valorii prag constă din următorii 2 pași:
1. Modulul gradientului de luminozitate este determinat pentru fiecare pixel
Imagini

2. Calculul pragului:
Total
V-am împărtășit cu plăcere ceea ce am găsit; pe viitor, dacă voi reuși și voi avea timp, voi încerca să implementez unii dintre algoritmi. Aceasta este doar o mică parte din tot ceea ce există astăzi, dar sunt bucuros să împărtășesc și asta.
Vă mulțumim pentru atenție. Una dintre sarcinile principale ale procesării și analizei imaginilor este segmentarea, adică. împărțirea unei imagini în zone pentru care este îndeplinit un anumit criteriu de omogenitate, de exemplu, evidențierea zonelor de aproximativ aceeași luminozitate în imagine. Conceptul de zonă de imagine este utilizat pentru a defini un grup coerent de elemente de imagine care au o anumită caracteristică comună (proprietate).
Una dintre modalitățile principale și cele mai simple este de a construi segmentarea folosind un prag. Un prag este un semn (proprietate) care ajută la împărțirea semnalului dorit în clase. Operația de împărțire a pragului este de a compara valoarea luminozității fiecărui pixel din imagine cu o valoare de prag specificată.
Binarizarea

Operația de prag care are ca rezultat o imagine binară se numește binarizare. Scopul operației de binarizare este reducerea radicală a cantității de informații conținute în imagine. În procesul de binarizare, imaginea inițială de semitonuri, care are un anumit număr de niveluri de luminozitate, este convertită într-o imagine alb-negru, ai cărei pixeli au doar două valori - 0 și 1

Limitarea unei imagini se poate face în diferite moduri.

Binarizare cu prag mai mic
Binarizare cu prag mai mic
Binarizarea cu un prag mai mic este cea mai simplă operație, care utilizează o singură valoare de prag:

Toate valorile în loc de criteriu devin 1, în acest caz 255 (alb) și toate valorile (amplitudinele) pixelilor care sunt mai mari decât pragul t - 0 (negru).

Binarizare cu prag superior
Uneori se poate folosi o variantă a primei metode, care produce un negativ al imaginii obținute prin procesul de binarizare. Operație de binarizare cu prag superior:

Binarizare cu dublă constrângere
Pentru a evidenția zonele în care valorile luminozității pixelilor pot varia într-un interval cunoscut, se introduce binarizarea cu dublă limitare (t 1
Sunt posibile și alte variații ale pragurilor, în care doar o parte a datelor este trecută prin (filtru de bandă medie).

Limitare incompletă
Această transformare produce o imagine care poate fi mai ușor de analizat în continuare, deoarece devine lipsită de fundal cu toate detaliile prezente în imaginea originală.

Transformarea pragului pe mai multe niveluri
Această operație formează o imagine care nu este binară, ci este formată din segmente cu luminozități diferite.

În ceea ce privește binarizarea, asta este în esență. Deși putem adăuga că există unul global, care este folosit pentru întreaga imagine, și există și unul local, care surprinde o parte din imagine (imagine).

Limitarea locală
metoda Otsa
Metoda utilizează o histogramă a distribuției valorilor de luminozitate ale pixelilor imaginii raster. O histogramă este construită folosind valorile p i =n i /N, unde N este numărul total de pixeli din imagine, n i este numărul de pixeli cu nivelul de luminozitate i. Gama de luminozitate este împărțită în două clase folosind pragul nivelului de luminozitate k,k - o valoare întreagă de la 0 la L. Fiecare clasă corespunde frecvențelor relative ω 0 ω 1:

Niveluri medii pentru fiecare dintre cele două clase de imagini:
În continuare, se calculează valoarea maximă pentru evaluarea calității împărțirii imaginii în două părți:
unde (σ cl)2=ω 0 ω 1 (μ 1 -μ 0) 2 este varianța interclasă și (σ total) 2 este varianța totală pentru întreaga imagine.

Limitare bazată pe gradientul de luminozitate a imaginii
Să presupunem că imaginea analizată poate fi împărțită în două clase - obiecte și fundal. Algoritmul pentru calcularea valorii prag constă din următorii 2 pași:
1. Modulul gradientului de luminozitate este determinat pentru fiecare pixel
Imagini

2. Calculul pragului:
Total
V-am împărtășit cu plăcere ceea ce am găsit; pe viitor, dacă voi reuși și voi avea timp, voi încerca să implementez unii dintre algoritmi. Aceasta este doar o mică parte din tot ceea ce există astăzi, dar sunt bucuros să împărtășesc și asta.
Vă mulțumim pentru atenție.

Cele mai bune articole pe această temă