You are on page 1of 4

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±¢ dziur
w 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:
q
• 'euclidean': d = (m1 − m2 )2 + (n1 − n2 )2
• 'quasieuclidean':
 q
 |m − m | + ( (2) − 1)|n − n | dla |m1 − m2 | > |n1 − n2 |
1 2 1 2
d= q
 ( (2) − 1)|m − m | + |n − n | dla |m1 − m2 | ¬ |n1 − n2 |
1 2 1 2

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


• 'cityblock': d = |m1 − m2 | + |n1 − n2 |

4. bwperim(obraz, s¡siedztwo); - wyznacza linie obwodu. S¡siedztwo dla


obrazó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
Na g.1 pokazano efekt dziaªania tych parametrów. Kolorem czerwonym
zaznaczono 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±niejszych


wersjach 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. Dodanie
parametru 'holes' wypeªnia wszystkie dziury na obrazie. W przypadku ob-
razu monochromatycznego poprzez dziur¦ rozumie si¦ obszary zbudowane
z 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 dodatnimi
liczbami 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ów
jednorodnych 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 typ
s¡siedztwa. Wynikiem dziaªania tego polecenia jest mapa logiczna, gdzie war-
to±¢ jeden maj¡ tylko obiekty wskazane poprzez punkty wewn¦trzne.

2
9. imreconstruct(marker,obraz, s¡siedztwo) - Rekonstrukcja obrazu przy
u»yciu markera. Obraz i marker mog¡ by¢ obrazami logicznymi lub mono-
chromatycznymi i musz¡ mie¢ ten sam rozmiar. Rekonstrukcja polega na
cyklicznym 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 zmian
pomi¦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¦cia
obrazu 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¡siedztwo
poprzez 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 1 1 0 1
 1 1 1  ⇒  1 0 1 
   

1 0 1 1 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 ma
warto±¢ 0.
• 'remove' - zmienia warto±¢ ±rodkowego piksela na 0, je»eli wszyscy jego
4-s¡siedzi maj¡ warto±¢ 1.
• ('shrink',n) - kurczy obiekty do punktów. W przypadku obiektu
z "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, przy
n=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
Fig. 2: Efekt dziaªania funkcji bwmorph('shrink',inf ) zaznaczony kolorem czerwonym

przedstawia g.2. Widoczna jest obwódka wokóª dziury oraz pojedy«czy


punkt w wewn¦trznym obiekcie.
• ('skel',n) - szkieletyzacja. Dziaªanie parametru n jest analogiczne do
funkcji 'shrink'.
• 'spur' - usuwa gaª¦zie, poª¡czone diagonalnie.
   
1 1 0 0 0 1 1 0 0 0
1 0 0 1 0 1 0 0 0 0
   
   
   

 0 1 0 0 1 
 ⇒ 
 0 1 0 0 1 


 1 0 1 1 0 


 1 0 1 1 0 

1 1 0 1 0 1 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.

You might also like