Documente Academic
Documente Profesional
Documente Cultură
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:
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:
m
UR
i =1
= R,
Ri I R j =
i j
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.
P2
=
A
= 4
2 (a 2 + b 2 )
.
ab
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
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
5
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.