ib_filtracja_1_book.pdf

(593 KB) Pobierz
Podstawy przetwarzania obrazów
Podstawy filtracji obrazów
Jacek Rumiński, Katedra Inżynierii Biomedycznej, WETI, Politechnika Gdańska
http://www.biomed.gda.pl
Spis treści:
1. Częstotliwość przestrzenna 2. Podstawy filtracji obrazów, 3. Zastosowanie operacji
splotu
1. Częstotliwość przestrzenna
Częstotliwość jest najczęściej kojarzona z sygnałami jednowymiarowymi. Związana jest z
powtarzalnością/okresowością tego sygnału. Jeżeli okres powtórzeń jest wyrażany poprzez czas
trwania tego cyklu (w sekundach) to częstotliwość jest odwrotnością okresu określaną w Hz
(1/s). Jeżeli jednak sygnał w dziedzinie czasu złożony jest z wielu częstotliwości to jak je
wyznaczyć?
Przykład Dane są parametry dwóch pomierzonych sygnałów:
Częstotliwości:
5 Hz
2 Hz
2 ⋅ν1
2 ⋅ν2
ν1
:=
ν2
:=
ω1
:=
ω2
:=
2
4
Amplitudy:
A1
:=
A2
:=
1024
Liczba próbek (sygnał cyfrowy):
N
:=
40 sec
Czas akwizycji sygnałów:
Ta
:=
i
N
N
2
j
Ta
01
1
01
1
Indeksy dla próbek:
i
:=
,
..
N
t i
:=
Ta
j
:=
,
..
f j
:=
( )
( )
Charakter sygnałów:
sygnal_1 i
:=
A1 cos t i ω1
sygnal_2 i
:=
A2 cos t i ω2
Złożenie sygnłów:
sygnal i
:=
sygnal_1 i
+
sygnal_2 i
2
sygnal_1 i
0
2
0
1
2
3
4
5
6
7
8
t i
ppob_cw2_filtracja_book.xmcd
1
2010-04-07
1125195259.044.png 1125195259.045.png 1125195259.046.png 1125195259.047.png 1125195259.001.png 1125195259.002.png 1125195259.003.png 1125195259.004.png 1125195259.005.png 1125195259.006.png 1125195259.007.png 1125195259.008.png
 
5
0
sygnal_2 i
5
0
1
2
3
4
5
6
7
8
t i
Złożenie sygnałów:
10
5
0
sygnal i
5
10
0
1
2
3
4
5
6
7
8
t i
Sygnał w dziedzinie czasu można transformować do dziedziny częstotliwości popzez
zastosowanie transformacji Fouriera. Dziedzina częstotliwości oznacza, że argumentami są
częstotliwości i wówczas można zobaczyć, dla jakich częstotliwości występują wartości funkcji
(część rzeczywista/moduł).
Wykonajmy zatem transformację Fouriera wykorzystując wbudowaną w program MathCad
funkcję realizującą algorytm szybkiej trasnformacji Fouriera:
F
:=
fft sygnal
(
)
(
)
Pozostaje teraz wykreślić nową funkjcę w dziedzinie częstotliwości od zera do: ν
:=
max ν1 ν2
,
ppob_cw2_filtracja_book.xmcd
2
2010-04-07
1125195259.009.png 1125195259.010.png 1125195259.011.png 1125195259.012.png 1125195259.013.png 1125195259.014.png 1125195259.015.png 1125195259.016.png 1125195259.017.png 1125195259.018.png
 
Dziedzina czestotliwosci
80
60
40
Re F ( )
20
0
20
0
1
2
3
4
5
6
f j
Łatwo zauważyć 2 "piki" dla częstotliwości 2 i 5 Hz. Udało nam się! Wiemy jakie są
częstotliwości w sygnale. Możemy teraz dokonać filtracji sygnału, aby pozbyć się określonych
częstotliwości. Zaprojektujmy prostą funkcję, która "wycinała będzie" (mnożenie przez 0 w
dziedzinie częstotliwości) wartości o częstotliwości większej, niż zadana wartość częstotliwości
granicznej:
ib_sfilter F fg
(
,
, Takw
,
)
:=
Jg
fg Takw
g N
2
1
for
j
..
0
F j
Ta
sec
Takw
:=
F
Przykład
3
Wykonajmy filtrację dla częstotliwości granicznej:
fg
:=
FF
:=
ib_sfilter F fg
(
,
, Takw
,
)
Wróćmy do dziedziny czasu poprzez odwrotną transformację Fouriera:
S
:=
ifft F()
ppob_cw2_filtracja_book.xmcd
3
2010-04-07
1125195259.019.png 1125195259.020.png 1125195259.021.png 1125195259.022.png 1125195259.023.png 1125195259.024.png 1125195259.025.png 1125195259.026.png
 
Dziedzina czestotliwosci
80
60
40
Re FF ( )
20
0
20
0
1
2
3
4
5
6
f j
Dziedzina czasu
4
2
S i
0
2
4
0
1
2
3
4
5
6
7
8
t i
Jak można zaobserwować nie ma składowej sygnału o częstotliwości 5Hz - filtracja się udała. W
analogiczny sposób można realizować inne rodzaje filtracji sygnału jednowymiarowego.
Zadanie: Proszę zmieniać wartości częstotliwości v1 i v2 (z 2Hz i 5Hz) na inne (<50Hz)
sprawdzając efekt w dziedzinie częstotliwości. Dla zmienionych częstotliwości zmienić
częstotliwość graniczną obserwując efekt filtracji. Po eksperymentach proszę przywrócić
wartości początkowe (2Hz,5Hz i fg=3Hz)
ppob_cw2_filtracja_book.xmcd
4
2010-04-07
1125195259.027.png 1125195259.028.png 1125195259.029.png 1125195259.030.png 1125195259.031.png 1125195259.032.png 1125195259.033.png 1125195259.034.png 1125195259.035.png 1125195259.036.png 1125195259.037.png 1125195259.038.png 1125195259.039.png 1125195259.040.png
 
Ale co w przypadku obrazu?
Obraz (macierz danych) można potraktować jako dwuwymiarowy sygnał cyfrowy. W wyżej
prezentowanym przykładzie sygnał jednowymiarowy był cyfrowy, reprezentowany przez wektor
wartości o liczbie próbek N=1024. Obraz będzie definiowany poprzez macierz o liczbie próbek
N*M (szerokość i wysokość obrazu).
Wartości w macierzy obrazu zmieniają się jednak nie z czasem, lecz w przestrzeni, tj. wraz ze
zmianą położenia. Dziedziną obrazu jest zatem przestrzeń, a miara odległości wyraża się w
metrach. Częstotliwości przestrzenne wyrażane są często w jednostkach 1/m lub 1/stopień
(obserwacja w polu widzenia o kącie...).
Jaki sens ma częstotliwość przestrzenna. Wyobraźmy sobie macierz obrazu, którą przetniemy linią.
Częstość i stopień zmian wartości macierzy obrazu wzdłuż lini określa jakościowo częstotliwość
przestrzenną obrazu. Oznacza to, że:
a) jeśli w obrazie występują gwałtowne zmiany wartości sąsiednich w określonych przekrojach, to
mówimy, że w ujęciu jakościowym obraz charakteryzuje się wysokimi częstotliwościami;
b) jeśli w obrazie występują płynne (gładkie) zmiany wartości sąsiednich w określonych
przekrojach, to mówimy, że w ujęciu jakościowym obraz charakteryzuje się niskimi
częstotliwościami;
c) jeśli w obrazie nie ma w ogóle zmian wówczas częstotliwości równe są 0.
Analogicznie przetworzenie obrazu mające na celu uwypuklenie różnic prowadzi do filtracji
górnoprzepustowej (wyostrzanie obrazu). Wygładzanie wartości obrazu prowadzi do filtracji
dolnoprzepsutowej (rozmycie obrazu).
Posługujemy się określeniem "w ujęciu jakościowym" mówiąc o sensie operacji. W wymiarze
"ilościowym", czyli konkretnych wartości częstotliwości można posłużyć się tą samą metodą jak
dla sygnałów jednowymiarowych, czyli transformacją Fouriera (tylko teraz dwuwymiarową).
Zróbmy stosowny przykład.
Przykład
(
)
READ_IMAGE "rys\mammo.jpg"
M
:=
0
1
2
3
0
1
2
3
4
5
6
7
8
9
10
10
9
11
10
9
9
12
9
11
11
9
9
9
11
11
M
=
11
10
10
12
8
9
11
9
9
10
11
10
10
9
8
10
6
8
9
9
9
8
7
10
M
ppob_cw2_filtracja_book.xmcd
5
2010-04-07
1125195259.041.png 1125195259.042.png 1125195259.043.png
Zgłoś jeśli naruszono regulamin