operacje na obrazach matlab

4

Click here to load reader

Upload: skorpionxxixx

Post on 30-Jun-2015

528 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: operacje na obrazach matlab

Operacje na obrazach logicznych

Do innych operacji (ni» morfologiczne) na obrazach logicznych nale»¡ nast¦pu-j¡ce przeksztaªcenia i operacje:

1. bwarea(obraz); - podaje estymowane pole powierzchni. Warto±¢ uzyska-na t¡ funkcj¡ mo»e by¢ inna od warto±ci rzeczywistej (uzyskanej funkcj¡sum(obraz(:))). Zliczania dokonuje si¦ w otoczeniu 2x2 i na podstawie na-st¦puj¡cych warunków:

• 0 - je»eli w otoczeniu wszystkie piksele maj¡ warto±¢ 0.

• 0.25 - je»eli tylko jeden piksel ma warto±¢ 1.

• 0.5 - je»eli dwa piksele maj¡ warto±¢ 1 i stykaj¡ si¦ bokami.

• 0.75 - je»eli dwa piksele maj¡ warto±¢ 1 i stykaj¡ si¦ rogami.

• 0.875 - je»eli 3 piksele maj¡ warto±¢ 1.

• 1 - je»eli wszystkie 4 piksele maj¡ warto±¢ 1.

2. bweuler(obraz, s¡siedztwo); - podaje warto±¢ liczby Eulera. Jest to ilo±¢obiektów wyst¦puj¡cych na obrazie binarnym, pomniejszona o ilo±¢ dziurw tych obiektach. S¡siedztwo przyjmuje warto±¢ 4 lub 8.

3. bwdist(obraz,'metryka');. Podaje odlegªo±¢ od najbli»szego piksela o war-to±ci 1, przy wykorzystaniu jednej z nast¦puj¡cych metryk:

• 'euclidean': d =√(m1 −m2)2 + (n1 − n2)2

• 'quasieuclidean':

d =

|m1 −m2|+ (√(2)− 1)|n1 − n2| dla |m1 −m2| > |n1 − n2|

(√(2)− 1)|m1 −m2|+ |n1 − n2| dla |m1 −m2| ¬ |n1 − n2|

• 'chessboard': d = max(|m1 −m2|, |n1 − n2|)• 'cityblock': d = |m1 −m2|+ |n1 − n2|

4. bwperim(obraz, s¡siedztwo); - wyznacza linie obwodu. S¡siedztwo dlaobrazów 2D mo»e przyjmowa¢ warto±¢ 4 lub 8.

5. D=bwboundaries(obraz, s¡siedztwo, opcje) - rozbudowana wersja pole-cenia bwperim. Jako rezultat dziaªania funkcji otrzymujemy wektor o rozmia-rze równym ilo±ci izolowanych obiektów, skªadaj¡cy si¦ z tablic wspóªrz¦d-nych ka»dej granicy. Jako opcje mamy dwie mo»liwo±ci: 'noholes' i 'holes'.

1

Page 2: operacje na obrazach matlab

Na �g.1 pokazano efekt dziaªania tych parametrów. Kolorem czerwonymzaznaczono granice obliczone z parametrem 'noholes'. Dzi¦ki zastosowa-niu opcji 'holes' zyskujemy, oprócz dwóch czerwonych, dodatkow¡ granic¦zaznaczon¡ kolorem niebieskim.

Fig. 1: Efekt dziaªania funkcji bwboudaries z parametrami 'noholes' - kolor czerwony, i 'holes' -czerwony + niebieski

6. imfill(obraz,s¡siedztwo,lokalizacja,'holes'); - (we wcze±niejszychwersjach biblioteki jest to funkcja bwfill) sªu»y do zalewania "dziur" we-wn¡trz �gur. W przypadku obrazów logicznych wypeªnia wskazane myszk¡lub poprzez wspóªrz¦dne obszary zªo»one z zer wewn¡trz �gury. Dodanieparametru 'holes' wypeªnia wszystkie dziury na obrazie. W przypadku ob-razu monochromatycznego poprzez dziur¦ rozumie si¦ obszary zbudowanez pikseli o mniejszej intensywno±ci ni» otoczenie.

7. bwlabel(obraz, s¡siedztwo); - (etykietowanie) - numeruje jednakowo ob-szary jednorodne, nie stykaj¡ce si¦. S¡siedztwo przyjmuje warto±¢ 4 lub 8.Ka»dy jednorodny obiekt ma unikalny numer, b¦d¡cy kolejnymi dodatnimiliczbami caªkowitymi. Do prezentacji wyników etykietowania do±¢ cz¦sto wy-korzystuje si¦ polecenie label2rgb(wynik, 'paleta', [kolor_zerowy],

'kolejno±¢'). Do etykietowania obrazów wielowymiarowych sªu»y polece-nie bwlabeln(obraz, s¡siedztwo).

8. bwselect(obraz, x, y, s¡siedztwo); - Sªu»y do wskazywania obszarówjednorodnych poprzez wskazanie dowolnego punktu wewn¦trznego. Wekto-ry x,y wskazuj¡ poªo»enie pikseli wewn¦trznych. W przypadku ich braku,wskazywanie odbywa si¦ przy u»yciu myszki. S¡siedztwo=4,8 i oznacza typs¡siedztwa. Wynikiem dziaªania tego polecenia jest mapa logiczna, gdzie war-to±¢ jeden maj¡ tylko obiekty wskazane poprzez punkty wewn¦trzne.

2

Page 3: operacje na obrazach matlab

9. imreconstruct(marker,obraz, s¡siedztwo) - Rekonstrukcja obrazu przyu»yciu markera. Obraz i marker mog¡ by¢ obrazami logicznymi lub mono-chromatycznymi i musz¡ mie¢ ten sam rozmiar. Rekonstrukcja polega nacyklicznym dokonywaniu dylatacji obrazu i wyznaczaniu cz¦±ci wspólnej ob-razu uzyskanego po dylatacji i obrazu wej±ciowego dla caªego przeksztaªce-nia. Cykl ten powtarza si¦ a» do uzyskania zbie»no±ci, to znaczy braku zmianpomi¦dzy s¡siednimi iteracjami.

10. bwmorph(obraz, 'metoda', parametr); Funkcja ta aplikuje operacje mor-fologiczne na obrazie logicznym. Do metod zaliczamy:

• 'bothat' - operacja Bottom hat, która polega na odj¦ciu od zamkni¦ciaobrazu samego obrazu.

• 'bridge' - ª¡czy blisko siebie le»¡ce piksele.

• 'clean' - zeruje pojedy«czego piksela, otoczonego samymi zerami.

• 'close' i 'open'- zamkni¦cie i otwarcie elementem ones(3).

• 'diag' - zamienia poª¡czenia diagonalne (8-s¡siedztwo) na 4-s¡siedztwopoprzez zmian¦ warto±ci piksela le»¡cego pod przek¡tn¡ na 1.

• 'dilate' i 'erode' - dylatacja i erozja elementem ones(3)

• 'fill' - zmienia warto±¢ zerowego piksela otoczonego samymi jedyn-kami na jeden.

• 'hbreak' - rozdziela H-poª¡czone piksele (w pionie i poziomie) 1 0 11 1 11 0 1

1 0 11 0 11 0 1

• 'majority' - je»eli suma maski 3x3 jest wi¦ksza lub równa 5, to ele-ment centralny przyjmuje warto±¢ 1. Je»eli nie, to element centralny mawarto±¢ 0.

• 'remove' - zmienia warto±¢ ±rodkowego piksela na 0, je»eli wszyscy jego4-s¡siedzi maj¡ warto±¢ 1.

• ('shrink',n) - kurczy obiekty do punktów. W przypadku obiektuz "dziurami", i u»ycia tej funkcji z n=inf, powstaje obwódka w po-mi¦dzy granic¡ zewn¦trzn¡ i wewn¦trzn¡ obiektu. Obiekty jednoro-dne s¡ zmniejszane do punktu. Parametr n oznacza ilo±¢ iteracji, przyn=inf operacja jest wykonywana do momentu, kiedy pomi¦dzy wynika-mi dwóch s¡siednich iteracji nie b¦dzie ró»nicy. Efekt dziaªania tej funk-cji z parametrem n=inf (kolor czerwony) naniesiony na obraz wej±ciowy

3

Page 4: operacje na obrazach matlab

Fig. 2: Efekt dziaªania funkcji bwmorph('shrink',inf) zaznaczony kolorem czerwonym

przedstawia �g.2. Widoczna jest obwódka wokóª dziury oraz pojedy«czypunkt w wewn¦trznym obiekcie.

• ('skel',n) - szkieletyzacja. Dziaªanie parametru n jest analogiczne dofunkcji 'shrink'.

• 'spur' - usuwa gaª¦zie, poª¡czone diagonalnie.1 1 0 0 01 0 0 1 00 1 0 0 11 0 1 1 01 1 0 1 0

1 1 0 0 01 0 0 0 00 1 0 0 11 0 1 1 01 1 0 1 0

• ('thicken', n) i ('thin', n) - pogrubianie i wycienianie obiektu

• 'tophat' - operacja Top hat. Funkcja zwraca ró»nice pomi¦dzy obra-zem, a jego otwarciem.

4