6
Sisteme de vedere artificială Lucrarea de laborator nr. 8 1 LUCRAREA NR. 8 1. Scopul lucrării În lucrarea prezentă de laborator se tratează descrierea formelor. 2. Breviar teoretic Etapele de prelucrare a informaţiilor realizate de un Sistem de Vedere Artificială sunt: achiziţia şi formarea imaginilor preprocesarea imaginilor segmentarea imaginilor descrierea formelor recunoaşterea formelor interpretarea 3. Descrierea formelor 3.1. Etichetarea Prin metode de segmetare se pot obţine imagini binare care să reprezinte obiectele din imagine. Dacă notam cu R i regiunile obţinute după segmentare, putem afirma că: Dintre aceste regiuni, una va reprezenta fundalul. Algoritmul de etichetare (colorare) are ca scop atribuirea unui indice fiecărei regiuni şi realizarea unei imagini care să conţină valori întregi: 0 pentru fundal, 1 pentru prima regiune, 2 pentru R 2 ş.a.m.d. O colorarea diferită a regiunilor s-a realizat şi în referatele 6 şi 7, în care s-a aplicat o metodă proprie de etichetare a regiunilor. O metodă riguroasă de etichetare este prezentată în curs. φ = = = I U j i j i m i i R R R R 1 ,

Lab08

Embed Size (px)

DESCRIPTION

ooo

Citation preview

  • Sisteme de vedere artificial Lucrarea de laborator nr. 8

    1

    LUCRAREA NR. 8

    1. Scopul lucrrii n lucrarea prezent de laborator se trateaz descrierea formelor.

    2. Breviar teoretic Etapele de prelucrare a informaiilor realizate de un Sistem de Vedere Artificial sunt:

    achiziia i formarea imaginilor preprocesarea imaginilor segmentarea imaginilor descrierea formelor recunoaterea formelor interpretarea

    3. Descrierea formelor

    3.1. Etichetarea Prin metode de segmetare se pot obine imagini binare care s reprezinte obiectele din

    imagine. Dac notam cu Ri regiunile obinute dup segmentare, putem afirma c:

    Dintre aceste regiuni, una va reprezenta fundalul. Algoritmul de etichetare (colorare) are ca

    scop atribuirea unui indice fiecrei regiuni i realizarea unei imagini care s conin valori

    ntregi: 0 pentru fundal, 1 pentru prima regiune, 2 pentru R2 .a.m.d. O colorarea diferit a

    regiunilor s-a realizat i n referatele 6 i 7, n care s-a aplicat o metod proprie de etichetare a

    regiunilor. O metod riguroas de etichetare este prezentat n curs.

    ===IUji

    ji

    m

    ii RRRR

    1

    ,

  • Sisteme de vedere artificial Lucrarea de laborator nr. 8

    2

    3.2. Descrierea formelor bazate pe regiuni Pentru forme simple ale regiunilor, pot fi folosii descriptori scalari simpli eurisitici.

    Dintre descriptorii simpli scalari, enumerm:

    Aria regiunii poate fi calculat dup numrul de pixeli din regiune. Perimetrul regiunii funcie de tipul de vecintate folosit acesta poate fi

    calculat dup cum urmeaz.

    Fie C mulimea ordonat de pixeli ce aparin frontierei astfel nct oricare doi

    pixeli consecutivi sunt vecini. Perimetrul este dat de relaia:

    Compactitatea mrimea scalar dat de raportul

    unde P este perimetrul iar A este aria regiunii.

    Pentru cerc, compactitatea este

    Pentru elipsa, .

    3.3. Funcii Matlab utile n descriere: etichetarea regiunilor - bwlabel descrierea regiunilor imaginii regionprops operaii morfologice bwmorph umplerea imaginii imfill obinerea perimetrului ntr-o imagine binar bwperim eroziunea imaginii imerode dilatarea imaginii imdilate deshiderea imaginii imopen nchiderea imaginii imclose selectare a regiunilor bwselect

    { }{ }

    [ ]{ }),(),(),(),(Card2),(),(),(Card

    :),(...,),,(),,(

    4118

    114

    1100

    kkkkkkkk

    kkkkkk

    nn

    jiVjiVjiCji

    jiVjiCjiPjijijiC

    ++=

    =

    AP2=

    4=

    abba )(2 22 +=

  • Sisteme de vedere artificial Lucrarea de laborator nr. 8

    3

    4. Exemplu % Pas 1: Citirea si afisarea imaginii

    % Pas 2: Estimarea valorii aproximative a pixelilor din fundal

    % Pas 3: Vizualizarea fundalului ca o suprafata

    % Pas 4: Crearea unei imagini cu fundal uniform

    % Pas 5: Ajustarea contrastului imaginii

    % Pas 6: Binarizarea imaginii

    % Pas 7: Determinarea numrului de obiecte din imagine

    % Pas 8: Examinarea matricii etichetate

    % Pas 9: Vizualizarea imaginii etichetate ca o imagine color indexat

    % Pas 10: Masurarea diferitelor proprietati ale obiectelor din imagine

    % Pas 11: Calucul statistic al obiectelor din imagine

    clear, close all;

    % Pas 1: Citirea si afisarea imaginii

    I = imread('rice.tif');

    figure, imshow(I);

    pause

    % Pas 2: Estimarea valorii aproximative a pixelilor din fundal

    % Se foloseste open (deschiderea imaginii) pentru eliminarea obiectelor din

    % imagine

    se = strel('disk',15);

    background = imopen(I,se);

    figure, imshow(background);

    pause

    % Pas 3: Vizualizarea fundalului ca o suprafata

    % Se foloseste functia surf - vezi help

    figure, surf( double(background(1:8:end,1:8:end)) ) ,zlim([0 255]);

    set(gca,'ydir','reverse');

    pause

  • Sisteme de vedere artificial Lucrarea de laborator nr. 8

    4

    % Pas 4: Crearea unei imagini cu fundal uniform

    % Se foloseste diferenta imaginilor : functia imsubstract

    I2 = imsubtract(I,background);

    figure, imshow(I2);

    pause

    % Pas 5: Ajustarea contrastului imaginii

    % Se mareste contrastul folosind imadjust (vezi lucrari de laborator precedente)

    I3 = imadjust(I2, stretchlim(I2), []);

    %I3 = histeq(I2);

    figure, imshow(I3);

    pause

    % Pas 6: Binarizarea imaginii

    level = graythresh(I3);

    bw = im2bw(I3,level);

    figure, imshow(bw);

    pause;

    % Pas 7: Determinarea numrului de obiecte din imagine i etichetarea regiunilor

    % Se foloseste bwlabel vezi help

    [labeled,numObjects] = bwlabel(bw,4);

    numObjects

    pause

    % Pas 8: Examinarea matricii etichetate

    % Vizualizai portiuni din imagine folosind imcrop

    figure, imshow(labeled);

    pause

    % Pas 9: Vizualizarea imaginii etichetate ca o imagine color indexat

    % Colorarea imaginii folosind o palet de culori (similar colorarii din referatele

    % precedente)

    pseudo_color = label2rgb(labeled, @spring, 'c', 'shuffle');

  • Sisteme de vedere artificial Lucrarea de laborator nr. 8

    5

    figure, imshow(pseudo_color);

    pause

    % Pas 10: Masurarea diferitelor proprietati ale obiectelor din imagine

    % Functia regionprops calculeaz propriettile enumerate ale regiunilor din

    imaginea etichetata vezi help

    graindata = regionprops(labeled,'basic')

    pause

    % Afisarea suprafetei regiunii 51

    graindata(51).Area

    pause

    % Afisarea dreptunghiului de dimensiuni minime ce poate conine regiunea

    % Afisarea centrului de masa a regiunii 51

    graindata(51).BoundingBox, graindata(51).Centroid

    pause

    % Pas 11: Calcul statistic al obiectelor din imagine

    % Aria maxima a unui obiect din imagine

    max([graindata.Area])

    pause

    % Gasirea indicelui obiectului de arie 404

    biggrain = find([graindata.Area]==404)

    pause

    % Calcularea ariei medii

    mean([graindata.Area])

    pause

    % Calcularea unei histograme alctuite din 20 de obiecte care arata distribuia

    % ariilor

    figure, hist([graindata.Area],20)

    pause

  • Sisteme de vedere artificial Lucrarea de laborator nr. 8

    6

    5. Exerciii 1. Realizai mai multe achiziii de imagine folosind calculatorul Ursula si camera video

    din dotarea laboratorului de Sisteme de Vedere Artificial. Se va folosi aceeai pies

    n scen. Realizai segmentarea imaginilor obinute folosind metode de prag. Calculai

    descriptorii arie, perimetru i compactitate pentru fiecare imagine realizat. Comentai

    rezultatele obinute.

    2. Realizai o captur de imagine ce conine peste 5 piese similare i realizai un

    experiment asemntor celui din exemplu. Realizai cte o histogram pentru

    perimetru, arie, compactitate.

    3. Realizai o funcie proprie pentru calcul al ariei.

    4. Realizai o funcie matlab proprie pentru calculul perimetrului.

    5. Realizai o funcie matlab proprie pentru calculul compactitii.

    6. Comparai rezultatele funciilor proprii cu valorile obinute folosind regionprops

    6. Tem Realizai un referat n care s explicai rezultatele experimentale obinute.

    Untitled