intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Giáo trình xử lý ảnh y tế Tập 2 P7

Chia sẻ: Cinny Cinny | Ngày: | Loại File: PDF | Số trang:8

72
lượt xem
5
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Kết quả của định lý lấy mẫu có thể dùng để tăng độ phân giải trên ảnh. Dù sao chăng nữa, dựa vào kết quả đã đạt được chúng ta có thể kết luận rằng nói chung thì không thể tăng độ phân giải của ảnh lên được.

Chủ đề:
Lưu

Nội dung Text: Giáo trình xử lý ảnh y tế Tập 2 P7

  1. -0.011698 0.013089 0.141409 0 .235352 0.141409 0.013089 -0.011698 -0.009179 -0.000057 0.079576 0 .141409 0.079576 -0.000057 -0.009179 -0.003200 -0.010464 -0.000057 0 .013089 -0.000057 -0.010464 -0.003200 0 .000517 -0.003200 -0.009179 -0.011698 -0.009179 -0.003200 0 .000517 166
  2. Chương 9 Bộ lọc có đáp ứng xung vô hạn hai chiều 9.1 Chỉ dẫn Trong các chương trước, chúng ta đ ã nghiên cứu lọc ảnh b ằng các bộ lọc FIR. Chúng ta cũng đ ã lọc ảnh trực tiếp từ miền tần số thông qua FFT. Hình như là không có một vấn đề nào rõ ràng với các bộ lọc kiểu FIR khiến chúng ta quan tâm đến các kiểu khác của hàm truyền đạt. Tuy vậy, rõ ràng lọc FIR là một xấp xỉ đối với đáp ứng xung vô hạn của hệ thống LSI bằng cách cắt giảm bớt. Các hệ thống với miền chuyển tiếp dần dần có thể xấp xỉ hoá bằng bộ lọc FIR bậc thấp. Nhưng dù thế nào đi chăng n ữa, thì hệ thống có miền chuyển đổi dốc cũng đòi hỏi các bộ lọc FIR bậc cao. Đấy là do sự hội tụ chậm của chuỗi Fourier. Biểu thức của chuỗi Fourier biểu diễn cho hệ số của bộ lọc FIR. Bằng cách cắt bớt chuỗi này, nhằm sử dụng các bộ lọc FIR bậc thấp đã dẫn đến các dao động Gibbs, đã được cho ở trong chương 8. Mặc dù các hàm cửa sổ có thể giảm thiểu các dao động này, nhưng rút cục là một bộ lọc có miền chuyển tiếp dốc hơn và các nhiễu gợn nhỏ hơn. Vì vậy, chúng ta chỉ có một lựa chọn duy nh ất là sử dụng các bộ lọc bậc cao để rút ra các miền chuyển tiếp dốc, nếu chúng ta kiên trì với các bộ lọc FIR. Điều n ày cũng có nghĩa là thời gian tính toán cho một ảnh lọc cũng nhiều hơn. Nếu chúng ta cần một bộ lọc với thời gian thực thì phần cứng cần phải đ ược được cung cấp đi kèm, và các bậc cao hơn th ì đẫn đến kết quả giá cả cao hơn. Như một sự lựa chọn, chúng ta sẽ bắt đầu với h àm chuyển đổi mà có đáp ứng xung vô hạn. Tất cả các hàm chuyển đổi này được biết d ưới cái tên bộ lọc có đáp ứng xung vô hạn (Infinite-Impulse-Response filter) hay là gọi là bộ lọc IIR. Các kiểu bộ lọc sẽ đạt được dải chuyển đổi dốc với bậc nhỏ hơn kiểu lọc FIR. Nếu như vậy, chắc bạn sẽ tự hỏi là tại sao chúng ta không bỏ lọc FIR đi mà sử dụng lọc IIR? Nguyên nhân là thiết kế và phần cứng bộ lọc FIR đ ã có sẵn, còn thiết kế cho bộ lọc IIR vẫn chưa có. Ví d ụ, nếu bộ lọc IIR có đáp ứng xung vô hạn, thì chúng có xu hướng ngày càng không ổn định. Vì vậy, đáp ứng xung có thể tăng lên rất lớn nếu ta không có một sự cẩn thận trong thiết kế. Pha tuyến tính, một yêu cầu cần thiết trong lọc ảnh, có thể đạt được dễ dàng từ lọc FIR h ơn là từ lọc IIR. Tuy nhiên, sự thuận lợi cung cấp bởi các hàm chuyển đổi IIR khiến cho chúng có đủ sức thu hút chúng ta quan tâm đến vấ đề này. Trong chương này chúng ta sẽ xem một số giả thiết đ ơn giản cho thiết kế bộ lọc IIR với đặc tuyến pha gần tuyến tính. 162
  3. 9.2 Bộ lọc IIR Hàm truyền đạt của bộ lọc cho bởi : N N    aij z1i z 2 j i 0 j 0 (9.1) H ( z1 , z 2 )  NN  bij z1 i z 2 j  i 0 j 0 Không mất tính tổng quát, b00 đặt bằng 1. Nếu y(m,n) và x(m,n) là dãy tín hiệu ra và vào, từ biểu thức (4.93) ta có thể viết NN N N y(m, n)    aij x(m  i, n  j )    bij x(m  i, n  j ) (9.2) i 0 j 0 i 0 j 0 i  j 0 Để bộ lọc thực hiện được và ổn định đáp ứng xung h(m,n) phải có những hạn chế sau (9.3) h (m, n)  0 (m < 0)  (n < 0)     h(m, n)   (9.4) m  0n  0 Biểu thức (9.4) dẫn đến kết luận khi xem xét kỹ thuật thiết kế cho các bộ lọc IIR là phương pháp dùng đáp ứng không gian thuận tiện hơn phương pháp dùng đáp ứng tần số. Nếu nh ư phương pháp đáp ứng không gian không hiệu quả khi m, n tăng, thì thiết kế một bộ lọc xấp xỉ nhưng ổn định là cần thiết. Vậy thì bộ lọc đó phải thoả mãn điều kiện cho bởi công thức (9.4). Bởi vì đáp ứng không gian và đáp ứng tần số liên hệ với nhau qua chuyển đổi Fourier, Ta có th ể rút ra kết luận là bộ lọc xấp xỉ với đáp ứng xung là tương đương với bộ lọc xấp xỉ với đáp ứng tần số tương ứng. Điều này nói chung là đúng. Tuy nhiên, như chúng ta đ ã thấy thiết kế của bộ lọc FIR, cái đặc trưng cơ bản nhất là phổ biên độ với điểm pha không. Câu hỏi sẽ là, với đặc điểm pha nào (1, 2) thì bộ lọc ổn định? Biết rằng chúng ta cần pha tuyến tính hoặc các hằng số trễ, ở đây các nhóm trễ được định nghĩa là  ( 1 ,  2 )  1 (1 ,  2 )   1 (9.5)  ( 1 ,  2 )  2 (1 ,  2 )   2 163
  4. công việc là lựa chọn ra các hằng số trễ. Trong phần tiếp theo chúng ta sẽ nghiên cứu một phương pháp phổ biến để thiết kế bộ lọc, tiếp đó là các thay đổi cần thiết bao gồm cả các điểm pha tuyến tính. 9.3 Phương pháp Shanks Đây là m ột trong những phương pháp đầu tiên đư ợc dùng trong thiết kế không gian bộ lọc IIR. Mặc d ù đây là một phương pháp tiếp cận trong miền không gian nhưng chúng ta sẽ bắt đầu xem xét phương pháp này trong miền tần số, sau đó nội suy sang miền không gian. Lý do của cách làm này được thể hiện qua một loạt các biểu thức. Đáp ứng tần số của các bộ lọc IIR đ ược mô tả ở b ằng biểu thức (4.93) có thể rút ra bằng cách đặt z1  e  j  , và z 2  e  j  . 1 2 Vì vậy, A(1 ,  2 ) (9.6) H (1 ,  2 )  B(1 ,  2 ) N N A(1 ,  2 )    a lk e  j1 e  j 2 ở đây (9.7) l 0 k 0 N N B(1 ,  2 )    blk e  j1 e  j 2 và (9.8) l 0 k 0 Nếu H d (1 ,  2 ) là phổ tần số mong muốn thì A(1 ,  2 )  (1 ,  2 )  H d (1 ,  2 )  (9.9) B(1 ,  2 ) Chu yển biểu thức (4.99) sang miền không gian ta có  (m, n)  h d (m, n)  h (m, n) (9.10) ở đ ây h(m,n) là đáp ứng xung của bộ lọc và có thể rút ra từ N N N N h(m, n)    aij  (m  i, n  j )   bij h(m  i, n  j ) (9.11) i 0 j 0 i  0 j  0( i  j )  0 Các hệ số {a mn} và {bmn} chưa được xác định. Xây dựng theo chuẩn L2 MM    2 ( m, n ) Q m 0n 0 (9.12) ở đ ây M  M là số các mẫu được cung cấp từ đáp ứng xung. Để rút ra các hệ số của bộ lọc ta cần tối thiểu hoá Q. Điều này đạt được nếu ta đạo h àm Q theo các hệ số của bộ lọc và cho kết quả sau khi đạo hàm bằng 0. 164
  5. MM Q  ( m, n)  2    ( m, n ) (9.13) a lk a lk m  0n  0 l, k = 0, 1, ..., N và MM Q  ( m, n)  2    ( m, n ) (9.14) blk blk m 0n 0 l, k = 0, 1, ..., N l + k  0. Biểu thức (9.13) tạo ra (N + 1)  (N + 1 ) phương trình phi tuyến với {a ij} và {b ij}. Biểu thức (9.14) tạo ra (N + 1 )  (N + 1) - 1 phương trình phi tuyến với {a ij} và {b ij}. Bởi vì số các hệ số của bộ lọc là 2(N + 1)  (N + 1) - 1, nên từ các phương trình này ta có thể tìm ra các hệ số và tìm được bộ lọc yêu cầu. Để tránh phải tính toán một loạt các phương trình phi tuyến mô tả ở trên, Shanks và một số người đưa ra phương pháp cho phép tối thiểu hoá một hàm lỗi đư ợc biến đổi. Mặc dù phương pháp này được xây dựng bởi Shanks, Treitel, Justice, nó vẫn được biết đến dưới tên là phương pháp Shanks. Nhân biểu thức (4.99) với B(1, 2) chúng ta rút ra  ( 1 ,  2 ) B ( 1 ,  2 )  B( 1 ,  2 ) H d ( 1 ,  2 )  A( 1 ,  2 ) (9.15) Thay thế sai số “tải trọng”  (1 , 2 ) B(1 ,  2 ) bằng  ( 1 ,  2 ) trong biểu thức (9.15) và chuyển kết quả sang miền không gian ta đ ược. N N N N  (m, n )    bij h d (m  i, n  j )    a ij (m  i, n  j ) (9.16) i 0 j  0 i 0 j 0 Cần nhắc lại là phép nhân trong miền tần số thì tương đương với tích chập trong miền không gian. Bây giờ ta xây dựng theo chuẩn L2 M M Q      2 ( m, n ) (9.17) m 0 n 0 Đã rõ ràng trong bước này lý do tại sao chúng ta bắt đầu định nghĩa của sai số trong miền tần số sau đó chuyển kết quả sang miền không gian. Biểu thức (9.17) cho ta giá trị tối thiểu thực sự của L2 dư ới dạng sai số “tải trọng”, và không ph ải sai số thực sự. Để tối thiểu hoá Q ta đạo hàm biểu thức này theo các hệ số của bộ lọc và cho kết quả bằng 0. M M N N  NN Q  2     aij  (m  i, n  j )    bij h d ( m  i, n  j )  a lk m 0n 0 i 0 j 0    i 0 j 0 (9.18)  (m  l , n  k )  0 l , k  0,1,2, ... , N Từ phương trình (9.18) ta có thể viết 165
  6. N N a mn    bij h d (m  i, n  j ) (9.19) i  0 j 0 m, n  R ở đây R là miền không gạch chéo ở hình (9.14). Bởi vậy, biểu thức (9.17) có thể được viết lại dư ới dạng 2 N N  Q      bij h d (m  i, n  j ) (9.20) m n  i 0 j 0  m, n  R Tối thiểu Q ta đ ạo hàm biểu thức và cho nó bằng không N N  Q  2    bij h d ( m  i, n  j )  h d (m  l , n  k )  0 (9.21) blk m n  i 0 j 0    m, n  R N N   bij   h d (m  i, n  j)h d (m  l, n  k )  i 0 j 0 mn -   h d ( m, n ) h d ( m  l , n  k ) (9.22) mn m, n  R. l , k  0,1,2,..., N lk 0 Phương trình (9.22) tạo ra (N + 1 )  (N + 1 ) - 1 các phương trình tuyến tính có thể giải ra được để tính các hệ số của bộ lọc. m (0,0) R (N,N) (M,M) n 166
  7. Hình 9.1 Miền R cho biểu thức (4.19). 9.4 Tính đáp ứng xung Thuật toán chúng ta dùng để tính đáp ứng xung sẽ cũng tương tự như các bước ta dùng trong tính toán với các hệ số của bộ lọc FIR. Thuật toán này theo các bước sau : 1 . Rút ra M  M đ iểm của phổ biên độ mong muốn, Hd(m,n), với đ iểm tần số (0,0) nằm tại trung tâm của mảng, cụ thể tại (M/2, M/2). M n ên là bội số của 2, Hd(m,n) n ên đối xứng một cách chặt chẽ. 2 . Rút ra IFFT của Hd(m,n)(-1)(m+n), bằng cách thừa nhận phổ pha không. 3 . Nhân kết quả thu được với (-1)(m+n). Điều này sẽ giúp thu đ ược đáp ứng xung với gốc toạ độ nằm tại (M/2, M/2). 1 (9.23) H (1 , 2 )  2  R(1 ,  2 )  1  0.414   c  ở đây R( 1 ,  2 )   12   2 , và tần số cắt là c = 1.0 rad/đơn vị. n đặc trưng 2 cho bậc của hàm Butterworth. Các bộ lọc có bậc càng cao, miền chuyển tiếp càng dốc, n không phải là b ậc của bộ lọc 2 -D. Bậc của bộ lọc 2-D sẽ được chọn khi thiết kế bộ lọc. Trong ví dụ n ày thì n được chọn bằng 2. Đáp ứng trong miền không gian được cho ở hình 9.2. Chương trình dùng đ ể tính đáp ứng xung từ đáp ứng tần số được cho ở chương trình 9.1. Trong chương trình này chúng tôi cho cung cấp một số tuỳ chọn như lựa chọn giữa lọc thông thấp và thông cao, lựa chọn dùng các hàm Butterworth hay là kiểu có miền chuyển tiếp dốc. Dựa trên các giả thiết ở trên chúng ta có th ể đưa ra được thu ật toán thiết kế bộ lọc 2-D có pha tuyến tính ổn định. Chương trình cho giải thuật này sẽ trình bày ở phần tiếp theo. 167
  8. H ình 9.2 Đặc tuyến không gian rút ra từ chương trình giải thích cho ví dụ của phần nói về đặc tuyến truyền đạt Butterworth. Chương trình 9.1 “IMPULSE.C”. Sinh đáp ứng xung từ đáp ứng tần số. /* Program for calculating impulse-response from frequency-specifications. Result is stored with the (0,O) point centered at the middle of the output 2-D array. You can either supply your own d ata or select from a set of standard functions. If you supply your own data the first two values should be the dimensions of the array e.g. 32 x32. The dimensions of the array should be a power of two. The data that follows is the magnitude specifications in "%f " format stored in a row by row fashion, with no return code after every row. */ #define pi 3.141592654 #include #include #include #include #include #include #include #include 168
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2