Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 38 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
38
Dung lượng
2 MB
Nội dung
T ng c ng nh: l c không gian • T ng c ng nh mi n không gian đ c mô t nh : nh t ng c ng Bi n đ i g(m,n) = T(f)(m,n) nh ban đ u • Bi n đ i T có th n tính hay phi n Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 Xác đ nh T • N u T n tính thay đ i b t bi n (linear and shift invariant - LSI), có đ c tính PSS (point-spread sequence) h(m,n) , Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 Xác đ nh T • Trong th c t , đ gi m tính toán h(k,l) = for (k,l) ∉ Δ • • • v i Δ m t t p nh (t p láng gi ng) Δ đ c g i xác đ nh c a h Trong mi n t n s đ c mô t nh : G(u,v) = He(u,v) Fe(u,v) Có nhi u phép toán LSI dùng mi n t n s nh “phép l c” L c theo m t gi i h n c ng đ c xem nh phép toán Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 Xác đ nh T • Ví d (tr ng h p 1-D): L c b ng thông th p Tr Khoa Toán - Tin h c L c b ng thông cao ng HKHTN Tp.HCM 2007 • N u h(m, n) m t m t n 3x3 w1 w2 w3 h= w4 w5 w6 w7 w8 w9 Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 • Giá tr g(m,n) đ c tính b ng cách tr t m t n qua m • C n th n biên c a có th ch i pixel c a nh f(m,n) đ c bi t pixel n m nh f(m,n) gi i quy t, n: – M t n đ c c t ng n t i biên (Biên t do) – M r ng thêm dòng/c t t i biên (Hi u ch nh biên) – Biên đ c “bao b c xung quanh” (Chu k biên) • Trong MATLAB dùng l nh filter2 d a l nh conv2 Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 Các l c làm tr n nh • Làm tr n nh thu c phép bi n đ i nh- nh, • phép bi n đ i làm khác bi t gi a pixel không nhi u Phép l c tr n dùng cho: – Làm m nh (Blurring): ây b c ti n x lý nh m lo i b b t chi ti t nh (không c n thi t) tr c trích đ i t ng c n thi t (l n), hay làm t ng chi ti t nh – Gi m nhi u (Noise reduction): Gi m b t tác đ ng c a nhi u Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 Làm tr n nh b ng m t n trung bình (l c không gian b ng th p) • Có th áp d ng m t n trung bình (averaging mask) • • đ làm tr n M t m t n trung bình m t n có t ng tr ng b ng c tính d a láng gi ng, nên m t n có tên trung bình láng gi ng (neighborhood averaging) Vài lo i 3x3: • Phép toán t ng đ ng l c b ng thông th p Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 Ví d làm m nh nh ban đ u M t n trung bình Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 N =3 N =7 Ví d làm m N = 11 N = 21 Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 L c High-boost • Quan sát th y g(m,n) = Af(m,n) – lowpass(f(m,n)) = (A-1)f(m,n) + f(m,n) – lowpass(f(m,n)) = (A-1)f(m,n) + hipass(f(m,n)) • K t qu gi ng nh ban đ u nh ng c nh s n i b t h n Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 Ví d nh ban đ u L c b ng thông cao Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 L c High-boost L c theo đ o hàm • Trung bình quan tâm làm m chi ti t nh b ng • • cách xem xét quan h trung bình hay tích h p xung quanh M t cách t nhiên, đ o hàm cho tay nhìn v s thay đ i đ d c Phép toán đ o hàm thông d ng gradient: ∂f ( x , y ) = f ( x + 1, y ) − f ( x , y ) ∂x ∂f ( x , y ) = f ( x , y + 1) − f ( x , y ) ∂y Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 C nh gradient đ m c a c nh b ng đ l n c a gradient H ng c a c nh b ng góc c a gradient Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 L c theo đ o hàm • l n c a gradient: • Th ng x p x • Xem xét vùng r i r c hóa đ l n c a gradient nh: z1 z2 z3 z4 z5 z6 z7 z8 z9 • Chúng ta có th x p x Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 L c theo đ o hàm ⎡1⎤ • Có th cài đ t theo m t n : h1 = ⎢ ⎥ vaø h2 = [1 −1] ⎣ −1⎦ • Theo đó: • M t l a ch n khác, có th x p x : • S cài đ t theo h = ⎡ 1 ⎢ 0⎤ ⎡ 1⎤ vaø h2 = ⎢ ⎥ ⎥ 1 − − ⎣ ⎦ ⎣ ⎦ • Thì Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 L c theo đ o hàm • M t n sau đ c g i phép toán gradient chéo Robert (Roberts crossgradient operator) • Phép toán Robert phép toán Prewitt/Sobel (trình bày sau) đ c dùng đ xác đ nh c nh, nên đ c g i xác đ nh c nh Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 Ví d : phép toán gradient-chéo Robert nh ban đ u Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 Ví d ⎡1⎤ h1 = ⎢ ⎥ vaø h2 = [1 −1] ⎣ −1⎦ Tr Khoa Toán - Tin h c ⎡1 ⎤ ⎡ 1⎤ h1 = ⎢ vaø h2 = ⎢ ⎥ ⎥ ⎣ −1⎦ ⎣ −1 ⎦ ng HKHTN Tp.HCM 2007 Phép toán Prewitt • X p x gradient t t h n: • Có th đ c cài đ t nh m t n : ⎡ − − − 1⎤ ⎡ − 1⎤ h1 = ⎢ 0 ⎥ vaø h2 = ⎢ − 1⎥ ⎢ ⎥ ⎢ ⎥ 1 ⎥⎦ ⎢⎣ ⎢⎣ − 1⎥⎦ • V i công th c: Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 Phép toán Sobel • M t x p x khác: 2 1/2 [[( ) ( )] [( ) ( )] = z + z + z − z + z + z + z + z + z − z + z + z ∇f 9 ] ⎡ −1 −2 −1⎤ ⎡ −1 ⎤ h1 = ⎢ 0 ⎥ vaø h2 = ⎢ −2 ⎥ ⎢ ⎥ ⎢ ⎥ ⎢⎣ ⎥⎦ ⎢⎣ −1 ⎥⎦ • ây đ c g i phép toán Sobel Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 Ví d Prewitt Sobel Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 • LINEAR SPATIAL FILTERING • • • • >> f=imread(fish.jpg’); %load in checkerboard figure % g=imfilter(f,w,filtering_mode, boundary_options,size_options) % f is the input image , w is the filter mask % Filtering mode: – – • % Boundary options: – – – – • % % % % P without quotes (default) - pad image with zeros ‘replicate’ - extend image by replicating border pixels ‘symmetric’ - extend image by mirroring it across its border ‘circular’ - extend image byrepeating it (one period of a periodic function) % Size options: – – • % ‘corr’ filtering is done using correlation % ‘conv’ filtering is done using convolution flips mask 180 degrees % % ‘full’ - output is the same size as the padded image ‘same’ - output is the same size as the input >> w=ones(9); • >> gd=imfilter(f,w); • >> imshow( gd, [ ]) – – • • • • % create a 9x9 filter (not normalized) % filter using default values % [ ] causes MATLAB to display using low and high % gray levels of input image % Good for low dynamic range >> gr=imfilter(f,w,’replicate’); % pad using replication >> figure, imshow(gr, [ ]) % >> gs=imfilter(f,w,’symmetric’); % pad using symmetry >> figure, imshow(gs, [ ]) % show this figure in a new window Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 • LINEAR SPATIAL FILTERING • >> f=imread(fig3.15(a).jpg’); • >> w=ones(9); • %load in checkerboard figure % create a 9x9 filter (not normalized) – % f is of type double in [0,1] by default >> f8=im2uint8(f); % converts image to uint8, i.e., integers in range [0,255] • >> g8r=imfilter(f8,w,’replicate’); • % pad using replication – % imfilter creates an output of same data class as input, i.e., uint(8) >> imshow( g8r, [ ]) % clipping caused data loss since filter was not normalized Tr Khoa Toán - Tin h c ng HKHTN Tp.HCM 2007 • >> f=imread(‘fish.jpg’); %load in checkerboard figure • >> w=fspecial(‘type’, parameters); % create filter mask • % filter types: – – – – – – • • • • • >> >> >> >> • • • • • >> >> >> >> >> % % % % % % ‘average’, default is 3x3 ‘gaussian’, default is 3x3 and sigma=0.5 ‘laplacian, default alpha=0.5 ‘prewitt’, vertical gradient, default is 3x3 Get horizontal by wh=w’ ‘sobel’, vertical gradient, default is 3x3 ‘unsharp’, default is 3x3 with alpha=0.2 f=imread(‘Moon.jpg’); %load in lunar north pole image w4=fspecial(‘laplacian’,0) % creates 3x3 laplacian, alpha=0 [0:1] w8=[1 1;1 -8 1;1 1] % create a Laplacian that fspecial can’t f=im2double(f); % output same as input unit8 so % negative values are truncated % Convert to double to keep negative values • g4=f-imfilter(f,w4,’replicate’); g8=f-imfilter(f,w8,’replicate’); imshow(f) imshow(g4) imshow(g8) Tr Khoa Toán - Tin h c % filter using default values % filter using default values % display original image % display g4 processed image % display g8 processed image ng HKHTN Tp.HCM 2007 [...]... Tp.HCM 2007 L c khụng gian b ng thụng cao c b n Dựng phộp toỏn LSI, c ci t b i m t n trung bỡnh, g m cỏc giỏ tr d ng v õm M t n cú tờn l m t n t o s c nột, quan tõm nh ng n i m c xỏm thay i t ng t trong nh M t n nờn cú giỏ tr d ng tõm v giỏ tr õm xung quanh, cỏc giỏ tr ny cú t ng b ng zero Tr Khoa Toỏn - Tin h c ng HKHTN Tp.HCM 2007 L c khụng gian b ng thụng cao c b n Vớ d : M t n t ng ng l c... i b t h n Tr Khoa Toỏn - Tin h c ng HKHTN Tp.HCM 2007 Vớ d nh ban u L c b ng thụng cao Tr Khoa Toỏn - Tin h c ng HKHTN Tp.HCM 2007 L c High-boost L c theo o hm Trung bỡnh quan tõm lm m cỏc chi ti t trong nh b ng cỏch xem xột quan h trung bỡnh hay tớch h p xung quanh M t cỏch t nhiờn, o hm cho tay cỏi nhỡn v s thay i d c Phộp toỏn o hm thụng d ng l gradient: f ( x , y ) = f ( x + 1, y ) f (... padded image same - output is the same size as the input >> w=ones(9); >> gd=imfilter(f,w); >> imshow( gd, [ ]) % create a 9x9 filter (not normalized) % filter using default values % [ ] causes MATLAB to display using low and high % gray levels of input image % Good for low dynamic range >> gr=imfilter(f,w,replicate); % pad using replication >> figure, imshow(gr, [ ]) % >> gs=imfilter(f,w,symmetric);