Laboratorium 2 Grudzinski Bajor gr26

background image

AKADEMIA GÓRNICZO – HUTNICZA

im. Stanisława Staszica w Krakowie








Systemy Wizyjne

Sprawozdanie z laboratorium nr 2 MatLab

Michał Grudziński

Maciej Bajor

Mechatronika (IMiR)

grupa 26, rok III

background image

Zadanie 1

1. Wczytanie obrazu do przestrzeni roboczej MatLaba oraz wyświetlenie go.

Polecenie:

img = imread(

'photo1.jpg'

);

figure(1), imshow(img);



















2. Konwersja obrazu do skali szarości.

Polecenie:

gray = rgb2gray(img);















background image

3. Wykonanie histogramu dla obrazu w skali szarości.

Polecenie:

imhist

(gray);
















4. W związku z brakiem możliwości jednoczesnego wyodrębnienia wszystkich

obiektów, zastosowano różne progi binaryzacji. Następnie uzyskane obrazy
poddano filtracji.
Poniżej proces binaryzacji podkładki (zaznaczona na czerwono), pozostałe
obiekty były wyodrębnione analogicznie.
Polecenie:

bw = (gray>=0 & gray<=90);
imshow(bw);











background image

5. Przeprowadzenie filtracji z zastosowaniem filtrów erozji i dylatacji

morfologicznej z elementem strukturalnym w kształcie dysku.
Polecenie:

se = strel(

'disk'

,5);

bw1 =imdilate(bw,se);
bw1 =imerode(bw1,se);
imshow(bw1);


















6. Przeprowadzenie segmentacji i nadanie etykiet obiektom. Czarne tło ma wartość

zero a kolejne obiekty przyjmują naturalne wartości.
Polecenie:

[L1, num1] = bwlabel(bw1,8);











background image

7. Znajomość przypisanej etykiety pozwala na wyodrębnienie i wyświetlenie

obiektu.
Polecenie:

bw1_1 = ismember(L,10);
imshow(bw1_1);




















8. Zsumowanie wyodrębnionych obiektów.


















background image

Zadanie 2


Instrukcja REGIONPROPS umożliwia wybór i pomiar charakterystyk elementów
obrazu.
Składnia funkcji: FEATS = REGIONPROPS(CC,PROPERTIES)

CC- macierz etykiet, lub obraz;
PROPERTIES- wybrana cecha do pomiaru.

Dostępne parametry:

All - pomiar wszystkich parametrów

Basic - pomiar parametrów bazowych(Area, Centroid, Bounding Box)

Area - zwrócenie liczby pikseli z których składa się obiekt

BoundingBox - przedstawia najmniejszy prostokąt w jakim
mieści się dany obiekt

Centroid - środek ciężkości obiektu

MajorAxisLength – zwraca długość (w pikselach) głównej osi
elipsy, która ma ten sam drugi moment centralny taki sam jak
region

MinorAxisLength – j.w. lecz w odniesieniu do małej osi elipsy

Eccentricity – zwraca wartość między 0 a 1. Stosunek
odległości między ogniskiem elipsy i długością jej osi
wielkiej.

Orientation – zwraca kąt (w stopniach) między osią x a
główną osią elipsy

Image - zwraca obcięty obraz obiektu wielkości BoundingBox
danego obiektu

FilledImage - zwraca obraz jw. wraz z wypełnionymi lukami
wewnątrz obiektu

Filled Area - zwraca liczbę pikseli FilledImage

ConvexHull

zwrot

współrzędnych

wierzchołków

najmniejszego wielokąta wypukłego, zawierającego obiekt.

ConvexImage – zwraca obraz obiektu z wyeliminowanymi
wklęśnięciami, rozmiarze BoundingBox

ConvexArea - zwraca liczbę pikseli ConvexImage

EulerNumber – równy liczbie obiektów w regionie minus liczba
dziur w nim

background image

Extrema –zwraca współrzędne punktów charakterystycznych

EquivDiameter – średnica koła o tym samym polu co region

Solidity – Stosunek między Area, a ConvexArea

Extent – Stosunek między Area, a BoundingBox Area

PixelIdxList – indeksy pikseli danego obiektu

PixelList – macierz współrzędnych pikseli danego obiektu

Perimeter - zwraca wartość skalarną określającą długość krawędzi
obiektu

Zadanie 3

Środki ciężkości:
Polecenie:

% Wybranie cech obrazu oraz prezentacja położenia, orientacji,

% prostokąta opisanego

[L,num] = bwlabel(bw_ost,8);

feats = regionprops(L,

'All'

);

% Położenie

figure(9)

hold

on

h1 = imshow(L);

r1 = 100;

r2 = 300;

for

i=1:size(feats)

h1 = line(feats(i).Centroid(1),feats(i).Centroid(2),

'Marker'

,

'.'

,

'MarkerEdgeColor'

,

'r'

);

end

hold

off














background image

Orientacja

Polecenie:

% Orientacja

figure(10)

hold

on

h2 = imshow(L);

for

i=1:size(feats)

h2 = line([feats(i).Centroid(1),feats(i).Centroid(1)+r2*cos(feats(i).Orientation*(pi/180))

],[feats(i).Centroid(2),feats(i).Centroid(2)+r2*sin(feats(i).Orientation*(pi/180))]);

end

hold

off


































background image

Prostokąt opisany na obiekcie
Polecenie:

% Njmniejszy prostokąt

figure(11)

hold

on

h3 = imshow(L);

for

i=1:size(feats)

h3 =
rectangle(

'position'

,[feats(i).BoundingBox(1),feats(i).BoundingBox(2),feats(i).BoundingBox

(3),feats(i).BoundingBox(4)],

'EdgeColor'

,

'r'

);

end

hold

off


































background image

Zadanie 4

Polecenie:

% Wyliczenie charakterystyk

for

i=1:size(feats)

%form_factor

Char(i,1) = 4*pi*feats(i).Area / feats(i).Perimeter^2;

%roundness

Char(i,2) = 4*feats(i).Area / (pi*feats(i).MajorAxisLength^2);

%acpect_ratio

Char(i,3) = feats(i).MajorAxisLength / feats(i).MinorAxisLength;

%solidity

Char(i,4) = feats(i).Solidity;

%compactness

Char(i,5) = sqrt(4*feats(i).Area/pi) / feats(i).MajorAxisLength;

end

Char

Opis:



























background image

Wyniki:

Nr obj.\Cecha

Form Factor

Roundness

Aspect Ratio

Solidity

Compactness

1

0.7119

0.6783

1.4027

0.9568

0.8236

2

0.6528

0.7621

1.0652

0.9042

0.8730

3

0.7965

0.7670

1.0359

0.8823

0.8758

4

0.2246

0.1639

4.8430

0.7116

0.4048

5

0.6345

0.7982

1.0108

0.8726

0.8934

6

0.6304

0.5803

1.0163

0.7395

0.7618

7

0.6969

0.6910

1.3791

0.9702

0.8313

8

0.6702

0.7843

1.0332

0.9037

0.8856

9

0.2016

0.4800

1.0424

0.5987

0.6928

10

0.7344

0.8843

1.0804

0.9852

0.9404

11

0.6390

0.5416

1.7478

0.9718

0.7359

Zawarte w tabeli charakterystyki pozwalają na identyfikację kształtu obiektu. Warto

zauważyć, iż powiększenie obiektu nie ma na nie wpływu, w przeciwieństwie do

orientacji.

Śruba ma wyraźnie większy współczynnik Aspect Ratio. Podkładkę charakteryzuje dość

duży współczynnik Form Factor oraz Roundness. Nakrętkę identyfikuje niski poziom

Roundness przy jednoczesnym wysokim współczynniku Compactness. Obiekt z

numerem 9 można rozpoznać na podstawie niskiej wartości Form Factor oraz

Roundness przy Wartości około 1 dla współczynnika Aspect Ratio.

Ogólnie parametr Aspect Ratio pozwala na wykrycie obiektów symetrycznych. Mały

współczynnik Compactness charakteryzuje obiekty o smukłym kształcie. Natomiast

Solidity określa drążenia elementów, im większe drążenie, tym współczynnik przyjmuje

niższa wartość. Dla obiektów pełnych Solidity wynosi 1.








Wyszukiwarka

Podobne podstrony:

więcej podobnych podstron