Bài giảng Xử lý ảnh - Chương 11: Thiết kế bộ lọc
11.1. GIỚI THIỆU
Trong chương chương 9 và 10, chúng ta đã đặt nền móng cho việc phân tích và thiết
kế các phép toán lọc tuyến tính. Trong chương này, chúng ta sẽ đề cập đến kỹ thuật đối
với việc thiết kế các bộ lọc để thực hiện các mục đích đặc thù. Để trình bày sự hiểu biết
rõ bên trong quá trình, đầu tiên chúng ta nghiên cứu hoạt động của một vài bộ lọc đơn
giản, nhưng hữu ích trong miền thời gian và miền tần số. Phần sau của chương này,
chúng ta sẽ tiếp cận vấn đề thiết kế các bộ lọc tối ưu dùng để cho việc thực hiện một
công việc đặc biệt.
Theo như chương 9 và chương 10, chúng ta đã thực hiện việc phân tích tín hiệu (thời
gian) một chiều, cho các vấn đề toán học và đồ hoạ đơn giản. Tổng quát đối với trường
hợp hai chiều là điều dễ hiểu. Như đã thảo luận về các bộ lọc đơn giản, chúng ta đã gắn
bó với những phép nhân chập của hệ thống tuyến tính đã giới thiệu trong chương trước.
(Xem lại hình 10-3) Tuy nhiên, tập các tên biến khác nhau được dùng trong việc thảo
luận các bộ lọc tối ưu.
Trong phần dưới đây, chúng ta sẽ xem xét một vài bộ lọc mà ta quan niệm là đơn
giản để minh hoạ các đặc tính trong miền thời gian và miền tần số của các bộ lọc và các
kết quả xử lý tín hiệu của chúng.
Tóm tắt nội dung tài liệu: Bài giảng Xử lý ảnh - Chương 11: Thiết kế bộ lọc
166 Ch¬ng 11 THIẾT KẾ BỘ LỌC 11.1. GIỚI THIỆU Trong chương chương 9 và 10, chúng ta đã đặt nền móng cho việc phân tích và thiết kế các phép toán lọc tuyến tính. Trong chương này, chúng ta sẽ đề cập đến kỹ thuật đối với việc thiết kế các bộ lọc để thực hiện các mục đích đặc thù. Để trình bày sự hiểu biết rõ bên trong quá trình, đầu tiên chúng ta nghiên cứu hoạt động của một vài bộ lọc đơn giản, nhưng hữu ích trong miền thời gian và miền tần số. Phần sau của chương này, chúng ta sẽ tiếp cận vấn đề thiết kế các bộ lọc tối ưu dùng để cho việc thực hiện một công việc đặc biệt. Theo như chương 9 và chương 10, chúng ta đã thực hiện việc phân tích tín hiệu (thời gian) một chiều, cho các vấn đề toán học và đồ hoạ đơn giản. Tổng quát đối với trường hợp hai chiều là điều dễ hiểu. Như đã thảo luận về các bộ lọc đơn giản, chúng ta đã gắn bó với những phép nhân chập của hệ thống tuyến tính đã giới thiệu trong chương trước. (Xem lại hình 10-3) Tuy nhiên, tập các tên biến khác nhau được dùng trong việc thảo luận các bộ lọc tối ưu. Trong phần dưới đây, chúng ta sẽ xem xét một vài bộ lọc mà ta quan niệm là đơn giản để minh hoạ các đặc tính trong miền thời gian và miền tần số của các bộ lọc và các kết quả xử lý tín hiệu của chúng. 11.2. CÁC BỘ LỌC THÔNG THẤP (LOWPASS) Một tín hiệu hay một ảnh thường hay tập trung năng lượng ở vùng tần số thấp và trung bình của phổ biên độ của nó. Tại tần số cao, thông tin cần thiết thường bị nhiễu phá huỷ. Vì thế, bộ lọc làm giảm biên độ các thành phần tần số cao có thể làm giảm những ảnh hưởng có thể nhìn thấy của nhiễu. 11.2.1. Các bộ lọc thông thấp đơn giản Bộ lọc hộp. Cách đơn giản để làm giảm nhiễu tần số cao bằng cách lấy trung bình tại chỗ. Cách này được thực hiện bằng cách nhân chập tín hiệu với xung vuông, (x), như minh hoạ trong hình 9-16. Nó được gọi là bộ lọc trung bình-di chuyển (moving- average). Mức xám tại mỗi điểm ảnh được thay thế bằng trung bình các mức xám bên trong hình vuông hay hình chữ nhật các điểm lân cận. Nhắc lại chương 10, biến đổi Fourier của xung vuông có dạng sin(x)/x (Hình 10-2). Hình 11-1 minh hoạ kết quả của các vấu sườn âm của hàm truyền đạt bộ lọc hộp. Bảng kiểm tra chứa thanh dọc tần số biến thiên. Đáp ứng xung là xung vuông có chiều rộng khác nhau đặt theo hướng ngang. Theo định lý về sự đồng dạng (chương 10), độ rộng của hàm truyền đạt tỷ lệ nghịch với bề rộng của đáp ứng xung. Miễn là bộ lọc hộp không rộng quá hai điểm ảnh, điểm zero giao nhau đầu tiên của hàm truyền đạt nằm tại hay trên tần số cao nhất trong dữ liệu được lấy mẫu (xem thêm ở chương 12). Tuy nhiên, nếu bộ lọc hộp rộng hơn hai điểm ảnh thì sẽ gây nguy hiểm phân cực đảo cho những cấu trúc nhỏ trong ảnh, như đã thấy trong hình 11-1. 167 HÌNH 11-1 Hình 11-1 Ảnh đảo ngược do bộ lọc hộp: bảng kiểm tra được nhân chập với xung vuông Bộ lọc tam giác. Chúng ta có thể sử dụng bộ lọc tam giác, (x), như một đáp ứng xung của bộ lọc thông thấp. Đôi khi nó còn được gọi là bộ lọc trung bình có trọng số (weighted-average). Trong không gian hai chiều, nó xuất hiện ở dạng hình chóp. Phổ của xung tam giác có dạng [sin(x)/x]2, không âm và tắt dần với tần số nhanh hơn nhiều so với bộ lọc hộp. Vì thế, các vấu sườn nhỏ hơn (âm) ít tập trung ở ảnh đầu ra. Bộ lọc này có thể được dùng an toàn trong các kích thước lớn mà không lo ngại sự phân cực đảo. Người ta cũng có thể tạo ra kết quả tương tự như bộ lọc tam giác bằng hai ứng dụng liên tiếp của bộ lọc vuông. Bởi vì tính đơn giản của bộ lọc hộp nên đây có thể có hiệu quả về mặt tính toán hơn việc sử dụng (x). Thực tế, việc dùng từ ba ứng dụng của trở lên (x) mô phỏng (emulate) các bộ lọc, giống hàm Gauss, có tác dụng làm nhẵn trong miền tần số. Ngưỡng tần số cao (High-Frequency Cutoff). Một phương pháp lọc thông thấp có phần “bắt ép thô bạo” (brute force) thỉnh thoảng được dùng để (a) tính biến đổi Fourier của tín hiệu hay ảnh, (b) đặt phần phổ biên độ có tần số cao về 0, và (c) tính biến đổi Fourier ngược của kết quả. Điều này tương đương với việc nhân phổ với một xung vuông và cũng tương đương với việc nhân chập tín hiệu hay ảnh với hàm sin(x)/x. Việc nhân chập với hàm sin(x)/x khiến cho ringing (phần 9.5.2) xuất hiện trong vùng lân cận của các đỉnh nhọn và các cạnh. Vì lý do này mà ngưỡng nhọn trong miền tần số có ích bị giới hạn. 11.2.2. Bộ lọc thông thấp Gauss Bởi vì biến đổi Fourier của hàm Gauss cũng là một hàm Gauss nên hàm này tạo thành một bộ lọc thông thấp với tác dụng làm nhẵn trong cả hai miền. Dĩ nhiên nó có thể được thực hiện bằng phép nhân chập trong miền thời gian hay không gian hoặc bằng phép nhân trong miền tần số. 11.3. CÁC BỘ LỌC THÔNG DẢI VÀ CHẮN DẢI Trong vài trường hợp, các thành phần của một tín hiệu hay một ảnh mong muốn và không mong muốn xảy ra chủ yếu là trong các vùng phổ có tần số khác nhau. Khi các thành phần có thể phân biệt theo cách này thì hàm truyền đạt, mà hàm này cho qua hay chặn lại các tần số riêng biệt có thể có ích. 11.3.1. Bộ lọc thông dải lý tưởng Giả sử chúng ta mong muốn thực hiện, bằng phép nhân chập, một bộ lọc chỉ cho nămg lượng tại các tần số giữa f1 và f2, trong đó f2 > f1, đi qua. Hàm truyền đạt mong muỗn được cho bởi 168 l¹i cßn 0 1 )( 21 fsf sG (1) Và được trình bày trong hình 11-2. Bởi vì G(s) là một cặp xung vuông chẵn nên nó có thể được xem là một xung vuông nhân chập với một cặp xung chẵn. Nếu chúng ta đặt HÌNH 11-2 Hình 11-2 Hàm truyền đạt thông dải lý tưởng )()( 2 1 12210 ffsffs vµ (2) chúng ta có thể viết hàm truyền đạt của bộ lọc thông dải như sau )()()()( 00 sssss ssG (3) Với dạng biểu diễn này của hàm truyền đạt, chúng ta có thể dễ dàng có được đáp ứng xung: )2cos()sin(2)2cos(2)sin()( 00 tsst ststs st ststg (4) Bởi vì s < s0, nên biểu thức (4) diễn tả hàm cosin của tần số f0 bao bọc bởi hàm sin(x)/x có tần số s/2. Đáp ứng xung này được vẽ trong hình 11-3. Số chu kỳ hàm cosin giữa các giao điểm zero bao quanh phụ thuộc vào mối quan hệ giữa s0 và s. Chú ý rằng nếu f0 là hằng số và s nhỏ dần (dải thông hẹp chẳng hạn), thì đường bao sẽ mở rộng thêm nhiều chu kỳ cosin giữa các giao điểm zero hơn. Khi s tiến đến 0 thì đáp ứng xung tiến đến một hàm cosin. Trong trường hợp hạn chế, phép nhân chập thực tế sẽ trở thành sự tương quan chéo (cross-correlation) giữa đầu vào với hàm cosin tại tần số s0. HÌNH 11-3 169 Hình 11-3 Đáp ứng xung thông dải lý tưởng 11.3.2. Bộ lọc chắn dải lý tưởng Hàm truyền đạt của bộ lọc cho nămg lượng tại mọi tần số đi qua, ngoại trừ tần số nằm trong dải tần từ f1 đến f2 được cho bởi l¹i cßn 0 1 )( 21 fsf sG (5) Và thể hiện trong hình 11-4. Để thuận lợi, chúng ta lại đặt s0 là tần số trung tâm và s là độ rộng dải chắn (stopband) [biểu thức (2)]. Bây giờ chúng ta có thể viết hàm truyền đạt giống như ta trừ bộ lọc thông dải, chẳng hạn, )()()(1)( 00 sssss ssG (6) Từ đó, ta có đáp ứng xung là )2cos()sin(2)()( 0tsst ststtg (7) HÌNH 11-4 Hình 11-4 Hàm truyền đạt chắn dải lý tưởng Đáp ứng xung này được thể hiện trong hình 11-5. Hoạt động của nó đối với sự thay đổi độ rộng dải (bandwidth) và tần số trung tâm tương tự như hoạt động của bộ lọc thông dải mà nó tương đồng. Nếu s nhỏ, bộ lọc này gọi là bộ lọc mức (notch filter). HÌNH 11-5 170 Hình 11-5 Đáp ứng xung chắn dải lý tưởng 11.3.3. Bộ lọc thông dải tổng quát Bây giờ chúng ta sẽ xem xét một lớp các bộ lọc thông dải cấu trúc theo cách dưới đây: Chúng ta chọn một hàm đơn thức (unimodal) K(s) không âm và nhân chập nó với một cặp xung chẵn tại tần số s0. Hành động cho ta một hàm truyền đạt, như trong hình 11-6. Hàm truyền đạt đó có dạng )()()()( 00 sssssKsG (8) Và đáp ứng xung )2cos()(2)( 0tstktg (9) HÌNH 11-6 Hình 11-6 Bộ lọc thông dải tổng quát Đáp ứng xung này là hàm cosin tần số s0 trong đường bao nghịch đảo biến đổi Fourier của K(s). Ví dụ, giả sử rằng K(s) là hàm Gauss )()()( 002/ 22 ssssAesG s (10) Khi đó đáp ứng xung trở thành )2cos( 2 2)( 2 1 0 2/ 2 22 tseAtg t (11) Đáp ứng xung này, hàm cosin trong đường bao Gauss, được thể hiện trong hình 11-7. Chú ý rằng chúng ta cũng có thể dễ dàng tạo ra một lớp các bộ lọc chắn dải bằng kỹ thuật này. HÌNH 11-7 171 Hình 11-7 Bộ lọc thông dải tổng quát 11.4. CÁC BỘ LỌC TĂNG CƯỜNG TẦN SỐ CAO Thuật ngữ bộ lọc tăng cường tần số cao (high-frequency enhancement filter), hay bộ lọc thông cao (highpass filter) được dùng đến để mô tả một cách tổng quát một hàm truyền đạt, bằng một đơn vị tại tần số 0 và tăng lên với sự gia tăng tần số. Một hàm truyền đạt như trên có thể có mức vượt ra ngoài giá trị nào đó lớn hơn giá trị đơn vị hoặc, phổ biến hơn, rơi trở về 0 tại các tần số cao hơn. Trong trường hợp sau, bộlọc tăng cường tần số cao thực chất là một kiểu của bộ lọc thông dải với giới hạn số gia đơn vị tại tần số không. Thực tế, đôi khi người ta mong muốn có được số gia đơn vị bé hơn ở tần số không, để giảm sự tương phản của các thành phần không ổn định tương đối lớn trong ảnh. Nếu hàm truyền đạt đi qua gốc toạ độ, nó được gọi là bộ lọc Laplace. 11.4.1. Bộ lọc hiệu các hàm Gauss (Difference of Gaussians) Chúng ta có thể tạo ra hàm truyền đạt tăng cường tần số cao bằng cách biểu diễn nó như hiệu của hai hàm Gauss có độ rộng khác nhau: 21 2/2/ ,)( 2 2 22 1 2 BABeAesG ss (12) Điều này được trình bày rtong hình 11-8. Đáp ứng xung của bộ lọc trên là i tt eBeAtg 2 1 22 )( 2 2 22 1 2 2/ 2 2 2/ 2 1 i (13) và được thể hiện trong hình 11-9. Chú ý rằng hàm Gauss chính trong miền tần số tạo ra một hàm Gauss hẹp hơn trong miền thời gian và ngược lại. Đáp ứng xung cho trong hình 11-9 là đặc trưng của các bộ lọc thông cao và thông dải, có một xung dương ở vị trí lõm âm. HÌNH 11-8 Hình 11-8 Hàm truyền đạt tăng cường tần số cao Gauss Nếu chúng ta cho tiến đến vô cực, hàm Gauss hẹp trong miền thời gian sẽ thu hẹp hơn nữa thành xung, và bộ lọc có dạng như trong hình 11-10. Chú ý rằng sự khác nhau giữa một bộ lọc chạy lại (quay về phía 0) tại những tần số cao và bộ lọc không chạy lại là độ rộng của xung trung tâm trong miền thời gian. Thực tế, nó rộng hơn xung trung tâm và nhanh hơn hàm truyền đạt của bộ lọc. 172 11.4.2. Các quy tắc ngắn gọn đối với thiết kế bộ lọc thông cao Trong phần này, chúng ta sẽ trình bày hai quy tắc được áp dụng gần đúng cho việc đánh giá hoạt động của các bộ lọc tăng cường tần số cao. Giả sử đáp ứng xung của bộ lọc biểu diễn như một xung hẹp trừ đi một xung rộng, ví dụ, )()()( 21 tgtgtg (14) Như minh hoạ trong hình 11-11. Chúng ta biết rằng hàm truyền đạt G(s) sẽ hình thành trạng thái của bộ lọc tăng cường tần số cao. Chúng ta sẽ đánh giá hàm truyền đạt tại tần số 0 để xác định ảnh hưởng của nó đối với sự tương phản của các đối tượng lớn bên trong ảnh. Chúng ta cũng sẽ đánh giá giá trị hàm truyền đạt cực đại đạt được tại tần số bất kỳ. HÌNH 11-9 Hình 11-9 Đáp ứng xung tăng cường tần số cao Gauss Giá trị cực đại. Nếu ta viết biến đổi Fourier của biểu thức (14) và thay giá trị s = 0 vào, ta được 2121 )()()()0( AAdttgdttgdttgG (15) Trong đó A1 và A2 biểu diễn diện tích bên dưới hai hàm thành phần. Chúng ta có thể thay thế biên trên của độ lớn hàm truyền đạt nếu chúng ta giả thiết rằng G2(s) tiến đến 0 trước khi G1(s) từ giá trị cực đại giảm xuống; tức là, 111max )()0( AdttgGG (16) Bây giờ chúng ta có hai quy tắc đơn giản đối với các bộ lọc tăng cường tần số cao bao gồm hiệu hai xung: 1max21)0( AGAAG vµ (17) HÌNH 11-10 173 Hình 11-10 Bộ lọc thông cao Gauss HÌNH 11-11 Hình 11-11 Bộ lọc thông cao tổng quát Nếu g1(t) là một xung (Xem hình 11-10), thì tiến hành như nhau đối với cả hai quy tắc trong biểu thức (17). Đáp ứng tần số thấp. Bây giờ chúng ta xem xét ảnh hưởng của bộ lọc tác động lên trên các đối tượng lớn và các vùng mức xám không đổi bên trong ảnh. Giả sử đáp ứng xung g(t) bị giới hạn về thời gian-tức là, giá trị không nằm bên ngoài khoảng hữu hạn. Cũng giả thiết rằng tín hiệu vào f(t) không đổi trong khoảng rộng hơn khoảng thời gian của g(t). Tình huống này được trình bày trong hình 11-12. Đầu ra của hệ thống là tích phân của phép nhân chập dxgfxh )()()( (18) Tuy nhiên, trên toàn bộ khoảng đang xét, tín hiệu vào là hằng số, và biểu thức (18) trở thành dgcdxcgxh )()()( (19) Chú ý rằng nếu ta thay s = 0 vào định nghĩa của phép biến đổi Fourier, ta sẽ có dttgG )()0( Nghĩa là )0()( cGxh (20) Vì thế, nếu G(0) = 1, bộ lọc sẽ không thay đổi biên độ các diện tích rộng và là hằng số của f(x). Tổng quát hoá cho trường hợp hai chiều, điều này có nghĩa là bộ lọc không thay đổi sự tương phản trên các vùng bằng phẳng, rộng lớn trong phạm vi ảnh đầu vào. Nếu G(0) 1, bộ lọc sẽ trở thành hệ số gia tăng việc điều khiển toàn bộ biên độ mối quan hệ giữa các thành phần lớn h(t) và f(t). 174 HÌNH 11-12 Hình 11-12 Đáp ứng tần số thấp 11.5. THIẾT KẾ BỘ LỌC TUYẾN TÍNH TỐI ƯU Trong phần này, chúng ta sẽ trình bày những kỹ thuật để thiết kế các bộ lọc mà, trong một ý nghĩa nào đó, là tối ưu đối với việc thực hiện một công việc đặc biệt. Đầu tiên, chúng ta tiến hành bằng cách thiết lập đặc tính tiêu chuẩn và sau đó mở rộng tiêu chuẩn đó bằng cách chọn đáp ứng xung thích hợp (hay hàm truyền đạt) cho bộ lọc. Lịch sử xử lý ảnh số đã xem việc thiết kế bộ lọc, giống như chuyến bay được thực hiện trong Chiến tranh Thế giới I, “bằng đũng quần” (by the seat of the paints). Các bộ lọc được chọn do các nguyên nhân đơn giản, thành công trong quá khứ, thuận lợi, lôi cuốn thẩm mỹ, lời đồn đại và ý thích bất chợt, nhờ sử dụng máy tính. Bộ lọc thiết kế như vậy có thể chứng minh sự thành công, nhưng nó mang tiếng xấu gần điểm cực thuận (suboptimal). Nó hầu như không tạo ra một bộ lọc tốt nhất và có thể hết sức nguy hiểm. Các bộ lọc gần điểm cực thuận-những bộ lọc riêng biệt dễ dàng thực hiện bằng máy tính-có thể đưa những đồ tạo tác (artifact) vào trong ảnh, thường thì không có dấu hiệu báo trước. Các bộ lọc bao gồm xung vuông trong một miền, được người lập trình máy tính ưa chuộng, hoạt động không mấy kết quả trong miền ngược lại do chuyển động sóng vô hạn của hàm sin(x)/x. Những người sử dụng các bộ lọc có cạnh vuông trong một miền thường bị quấy rầy bởi ringing và các hiện tượng đồ tạo tác khác trong miền khác. Đôi khi họ nhìn nhận một cách sai lầm các đặc tính không mong muốn vốn có trong xử lý số, hay họ than vãn thiếu máy tính có đủ khả năng cần thiết để thực hiện công việc một cách chính xác. Trong phần này, chúng ta trình bày những kỹ thuật thiết kế các bộ lọc tối ưu và chứng minh, một cách tổng quát, rằng chúng hoạt động rất tốt. Trang bị bằng kiến thức này, người sử dụng có thể lựa chọn một cách thông minh giữa tính tối ưu và sự tính toán dễ dàng mà không chuốc lấy những đồ tạo tác tai hại. Đầu tiên chúng ta xem lại khái niệm biến ngẫu nhiên và sau đó trình bày các kỹ thuật thiết kế hai bộ lọc tối ưu: ước lượng Wiener, tối ưu đối với việc khôi phục tín hiệu chưa biết từ nh ... thấy đồ thị mức xám của một dòng fi(x) từ hình 11-27. Nhiễu rõ rệt phổ biến trong kỹ thuật chụp X quang chủ yếu là vì hạt film và tính thống kê của chùm phô tôn tới. Rõ ràng, vi phân đường cong này không tạo ra các đỉnh đáng tin cậy tại các điểm uốn do nhiễu. Giả thiết tín hiệu s(x) và nhiễu n(x) không tương quan, bộ lọc Wiener yêu cầu phổ năng lượng tín hiệu và phổ năng lượng nhiễu. Chúng ta có thể ước lượng phhỏ năng lượng của tín hiệu bằng cách lấy trung bình dòng, bởi vì, với ống làm trơn, tất cả các dòng fi(x) không nhiễu đều như nhau. Vì thế, 2 1 2 )( 2 1)()( N i is xfxssP (123) Sẽ làm giảm nhiễu với hệ số . Hình 11-29 đưa ra kết quả của phép lấy trung bình 60 dòng trong hình 11-27 và phổ biên độ kết quả của tín hiệu. N/1 197 HÌNH 11-27 Hình 11-27 Ảnh X quang đã số hoá của một ống làm trơn HÌNH 11-28 Hình 11-28 Dòng 100, hình 11-27 Một khi tín hiệu đã được ước lượng, thì phổ năng lượng của nhiễu cũng có thể được ước lượng từ hình 11-27 bằng cách lấy trung bình phổ năng lượng từng dòng sau đó trừ đi tín hiệu; tức là, N i in ssxfsP 1 2)()( 2 1)( (124) HÌNH 11-29 Hình 11-29 (a) Tín hiệu không nhiễu ước lượng được bằng cách lấy trung bình theo hình 11-17; (b) Fourier phổ biên độ của (a) Theo hướng này, biểu thức (124) đã xem phổ năng lượng của nhiễu là ước lượng không đổi của tần số. 198 Hình 11-30(a) trình bày hàm truyền đạt H0(s) của bộ lọc Wiener được tính bởi biểu thức (59). Hàm truyền đạt này có giá trị gần bằng 1 tại các tần số thấp mà tín hiệu chiếm ưu thế và tiến dần đến 0 tại các tần số cao. Chúng ta có thể biến đổi ngược hàm truyền đạt trong hình 11-30(a) để có được đáp ứng xung đối với quá trình làm trơn tiền vi phân (predifferentiation). Tuy nhiên, có một vài nghiên cứu thực tế đáng chú ý. Các khe trong hàm truyền đạt ở hình 11-30(a) được tạo ra bởi các chéo 0 trong phổ tín hiệu [Hình 11-29(b)]. Theo định lý đồng dạng, vị trí các khe này sẽ dịch chuyển tuỳ theo những thay đổi bề rộng mạch (vessel). Điều này chỉ ra một vấn đề là tín hiệu của ta không thực sự là một quá trình ngẫu nhiên ergodic như các giả thiết khi phát triển bộ lọcWiener. Các hàm thành viên trong toàn bộ tín hiệu tương ứng với các mạch có bề rộng khác nhau và vì thế không thực hiện trên toàn bộ những tín hiệu có phổ năng lượng giống nhau. Khi nó xảy ra, chúng ta bắt buộc phải vi phạm một trong các giả thiết đã đặt ra cho bộ lọc Wiener. Nếu chúng ta tính đến những khe phiền phức trong thiết kế, thì bộ lọc sẽ rất nhạy với sự thay đổi ánh sáng theo độ rộng của mạch. Điều này chỉ tối ưu đối với độ rộng chính xác của mạch được dùng trong thiết kế và sẽ nhanh chóng trở thành gần tối ưu khi độ rộng bị thay đổi. Đây là do miền tần số của hàm truyền đạt thay đổi khá đột ngột. Chúng ta chọn thay vì bỏ qua các khe bằng cách lấp một đường bao trơn nhẵn lên hàm truyền đạt. Hình 11-30(b) cho thấy hàm làm trơn H(s) xấp xỉ với hàm truyền đạt bộ lọc Wiener. H(s) được lựa chọn nhờ hai tính chất đáng kể: nó xấp xỉ một cách hợp lý với đường bao hình 11-30(a) và đáp ứng xung của nó làm cho phép nhân chập số đúng là một phép tính hiệu quả. HÌNH 11-30 Hình 11-30 (a) Hàm truyền đạt bộ loc Wiener; (b) làm trơn xấp xỉ với (a) Hình 11-31 cho thấy đáp ứng xung h(x) tương ứng là một phần của parabol và h’(s), đạo hàm bậc nhất của nó, là tuyến tính từng đoạn. Bởi vì phép vi phân giao hoán với phép nhân chập nên tốt nhất là kết hợp với việc làm trơn và phép vi phân vào một bước. Hơn nữa, phép nhân chập số dùng đáp ứng xung tuyến tính từng đoạn có thể được lập trình để thực hiện một cách rất hiệu quả. Hình 11-32 trình bày kết quả của việc sử dụng hai đáp ứng xung trong hình 11-31 trên dòng ảnh ở hình 11-28. Đáp ứng xung thứ nhất làm trơn chỉ giảm được nhiễu, trong khi đáp ứng xung thứ hai kết hợp việc làm trơn với vi phân. Trong trường hợp này, mức độ giảm nhiễu thật là vừa ý. Nên chú ý rằng các điểm uốn trong đồ thị bên trên tạo ra các đỉnh phân biệt ở đồ thị bên dưới, ám chỉ rằng sự phát hiện biên mạch bây giờ chỉ là công việc đơn giản. 199 Đáp ứng xung tuyến tính từng đoạn h’(x) là một kết quả tính toán xấp xỉ với bộ lọc Wiener vi phân của ứng dụng này. Mặc dù tín hiệu là phi ergodic, nhưng hàm truyền đạt không có khe H(s) phải hoạt động khá tốt dưới điều kiện gần tối ưu, bởi vì nó không có hành động đột ngột trong miền tần số. Hơn nữa, hình 11-32 gợi ý rõ ràng rằng chúng ta có một giải pháp đầy đủ cho bài toán phát hiện biên này. Bộ lọc Wiener vi phân được thiết kế trên ống làm trơn đã chứng minh tính hữu ích trên sơ đồ tia mạch thông thường. HÌNH 11-31 Hình 11-31 (a) Đáp ứng xung; (b) HÌNH 11-32 Hình 11-32 Kết quả việc làm trơn dòng trong hình 11-28: (a) với h(x); (b) với h’(x) 11.6. CÁC BỘ LỌC SẮP XẾP THỐNG KÊ (ORDER-STATISTIC) Theo định nghĩa, nếu kiểm tra một bộ lọc không đúng là tuyến tính (chương 9) thì nó là phi tuyến. Nhiều kiểu bộ lọc phi tuyến đã được miêu tả, thử nghiệm và sử dụng. Người ta có thể cho rằng cách tiếp cận phi tuyến có thể giải các bài toán xử lý ảnh tốt hơn các bộ lọc tuyến tính. Tuy nhiên, chúng không đủ ảnh hưởng sâu rộng và nền tảng lý thuyết tương đối dễ hiểu làm cơ sở cho các bộ lọc tuyến tính. Đối với một nghiên cứu mở đầu, chúng ta sẽ chỉ ra một trong những lớp hữu dụng nhất, các bộ lọc sắp xếp thống kê (order-statistic filters), gọi như vậy bởi vì chúng căn cứ trên tính thống kê xuất phát từ việc sắp xếp các phần tử của một tập các phương tiện tính toán. Bộ lọc trung vị (median) là một trong những bộ lọc kiểu này. 200 11.6.1. Bộ lọc trung vị Kỹ thuật lọc phi tuyến mà có lẽ được sử dụng phổ biến nhất không phải là trung bình tổng trọng số. Mà là, các điểm ảnh lân cận được sắp xếp theo thứ tự các mức xám của chúng và giá trị giữa của nhóm được lưu vào điểm ảnh đầu ra. Đối với bộ lọc trung vị N N, trong đó N lẻ, thì mức xám đầu ra là mức xám của điểm ảnh đầu vào mà lớn hơn hay bằng mức xám của (N2 - 1)/2 điểm ảnh lân cận và bé hơn hay bằng mức xám của (N2 - 1)/2 điểm ảnh trong cửa sổ lọc. Bình thường lọc trung vị xử lý có phần hơi chậm hơn phép nhân chập, vì nó đòi hỏi phải sắp xếp các điểm ảnh trong mỗi lân cận theo mức xám. Tuy nhiên, có các thuật giải làm tăng tốc độ xử lý. Bộ lọc trung vị phổ biến bởi vì nó chứng tỏ khả năng làm giảm nhiễu ngẫu nhiên mà không làm mờ các cạnh nhiều như bộ lọc thông thấp tuyến tính. Điều này được minh hoạ trong hình 11-33. Ở đây, tín hiệu là một cạnh thêm vào tín hiệu sin tại 1/4 tần số lấy mẫu và trung vị được tính dựa trên ba điểm lân cận. Trong ví dụ này, bộ lọc trung vị loại bỏ tín hiệu sin hoàn toàn, mà vẫn bảo toàn cạnh. Nói chung, các đối tượng sáng hay tối chiếm ít hơn một nửa diện tích bộ lọc trung vị đều cần phải loại bỏ, trong khi các đối tượng lớn hơn được bảo toàn hầu như nguyên vẹn. Vì thế, phạm vi không gian của bộ lọc trung vị phải được “điều chỉnh” với vấn đề sắp tới. Có quá ít lý thuyết hướng dẫn thiết kế các bộ lọc trung vị so với lý thuyết hướng dẫn thiết kế bộ lọc tuyến tính. Thử nghiệm thường thay thế cho phân tích. Hiệu quả giảm nhiễu của bộ lọc trung vị trên ảnh phụ thuộc vào hai vấn đề liên quan, nhưng hoàn toàn tách biệt: phạm vi không gian của các điểm lân cận (mặt nạ), như đã đề cập, và số các điểm ảnh dùng để tính toán trung vị. Trường hợp đơn giản là một mặt nạ vuông N N (trong đó N thường là lẻ), dùng tất cả N2 điểm để tính. Tuy nhiên, người ta có thể dùng một mặt nạ có mật độ thưa, như trình bày trong hình 11-44, để tiết kiệm thời gian. Với những mặt nạ lớn, hiệu quả giảm nhiễu của việc sử dụng nhiều điểm ảnh trong tính toán trung vị có thể bị ảnh hưởng. Hình 11-35 trình bày hiệu quả giảm nhiễu của bộ lọc trung vị phụ thuộc như thế nào vào số lượng các điểm ảnh sử dụng trong tính toán. Ở đây, các mặt nạ lọc trung vị có mật độ thưa khác nhau được sử dụng trên ảnh có nhiễu trắng ngẫu nhiên. Đồ thị độ lệch quân phương (standard deviation) của ảnh ra ngược với số lượng điểm ảnh dùng để tính trung vị. Trường hợp nhiều hơn 9 hoặc 13 điểm, thời gian đòi hỏi thêm để sắp xếp lượng lớn các điểm ảnh được chứng minh bằng sự cải tiến trong vấn đề giảm nhiễu. Vì thế, nếu bài toán yêu cầu một bộ lọc lớn về không gian, ta có thể thu được kết quả bằng một mặt nạ trung vị phân bố thưa. 11.6.2. Các bộ lọc sắp xếp thống kê khác Bộ lọc trung vị chỉ là một thành viên trong lớp các bộ lọc sắp xếp thống kê. Nếu các điểm ảnh vào lân cận được sắp xếp thì trung vị là kết quả của nhóm thứ 50, các nhóm còn lại cũng có thể được sử dụng. 0% và 100% tương ứng với các bộ lọc cựu tiểu và cực đại. Việc sử dụng các nhóm ngoài 50% ngả về phía ảnh tối hay ảnh sáng. Mặc dù các bộ lọc này ít được sử dụng rộng rãi, nhưng chúng rất có ích trong một vài ứng dụng. 201 HÌNH 11-34 Hình11-34 Các bộ lọc trung vị 5 5 mật độ thưa HÌNH 11-35 Hình11-35 Kết quả của bộ lọc trung vị 5 5 trên nhiễu trắng: độ lệch quân phương của ảnh ra ngược với số điểm ảnh trong mặt nạ 5 5 dùng để tính trung vị 11.7. TỔNG KẾT NHỮNG ĐIỂM QUAN TRỌNG 1. Đáp ứng xung của bộ lọc tăng cường tần số cao có thể được thiết kế như một xung dương hẹp trừ đi một xung âm rộng. 2. Hàm truyền đạt của bộ lọc tăng cường tần số cao tiến dần đễn giá trị cực đại, giá trị này là diện tích bên dưới xung dương hẹp. 3. Hàm truyền đạt của bộ lọc tăng cường tần số cao có đáp ứng tần số 0 bằng với hiệu của các diện tích bên dưới hai xung thành phần. 4. Đáp ứng tần số 0 của một bộ lọc xác định sự tương phản của các tính chất lớn bị ảnh hưởng như thế nào. 5. Các bộ lọc được thiết kế để làm nhẹ việc tính toán chứ không phải để thực hiện tối ưu. 6. Quá trình ngẫu nhiên ergodic là một tín hiệu mà ta đã biết phổ năng lượng và hàm tự tương quan biểu thị tất cả những hiểu biết có thể có về tín hiệu. 7. Ước lượng Wiener là tối ưu, theo nghĩa sai số bình phương trung bình, đối với việc khôi phục một tín hiệu có phổ năng lượng đã biết từ nhiễu cộng cũng đã biết phổ năng lượng. 8. Hàm truyền đạt bộ lọc Wiener nhận các giá trị gần 1 trong các dải tần có tỷ lệ tín hiệu trên nhiễu cao và gần 0 trong các dải bị nhiễu. 9. Bộ phát hiện tương xứng là tối ưu đối với việc phát hiện sự xuất hiện của tín hiệu đã biết trên nền nhiễu cộng. 10. Trong trường hợp nhiễu trắng, đầu vào của bộ lọc tương xứng tương quan với dạng đã biết của tín hiệu. 202 11. Hàm truyền đạt bộ lọc Wiener là thực, chẵn và bị chặn giữa 0 và 1. 12. Hàm truyền đạt của bộ lọc phát hiện tương xứng, nói chung, là phức, Hermite và không bị chặn. 13. Các bộ lọc sắp xếp thống kê là phi tuyến và hoạt động bằng cách sắp xếp các điểm ảnh trong một lân cận. 14. Một bộ lọc trung vị về cơ bản là khử các đối tượng ít hơn một nửa kích thước của nó, trong khi vẫn bảo toàn các đối tượng lớn hơn. Điều này cần thiết cho việc giảm nhiễu mà vẫn phải giữ lại biên. 15. Mặt nạ mật độ thưa có thể làm giảm thời gian tính toán cho các bộ lọc trung vị lớn về không gian. BÀI TẬP 1. Chứng minh biểu thức (48). 2. Một tín hiệu có phổ năng lượng Ps(s) = 10/|s|, và nhiễu trắng không tương quan với biên độ phổ bằng 2. Phác hoạ hàm truyền đạt H(s) của bộ lọc Wiener và tỷ lệ năng lượng tín hiệu trên nhiễu R(s) với |s| < 20. Đây là bộ lọc thông thấp, thông dải hay thông cao? 3. Một mẫu gần đúng của tín hiệu s(x) = a sech( ax) và phổ năng lượng nhiễu là trắng với biên độ N0. Phác hoạ hàm truyền đạt bộ lọc Wiener với 0 < s < a. 4. Một mẫu gần đúng của tín hiệu s(x) = a sech( ax) và phổ năng lượng nhiễu là xấp xỉ N(s) = exp(-|s|/2a). Phác hoạ hàm truyền đạt bộ lọc Wiener với 0< s <fmax = a. 5. Tín hiệu s(t) = 4cos(2 ft)exp(-t2/22), trong đó f = 1/8 và = 12. Nhiễu là trắng với biên độ phổ bằng 1. Thiết kế bộ lọc Wiener để khôi phục tín hiệu. Phác hoạ s(t) với –64 t 64 và Ps(s), Pn(s), H0(s) và tích phân của MSE với 0 s 0.5. 6. Tín hiệu s(t) = 4cos(2 ft)sech( t/a), trong đó f = 1/8 và a = 6. Nhiễu phổ năng lượng là Pn(s) = 4sech( s/0.3125). Thiết kế bộ lọc Wiener để khôi phục tín hiệu. Phác hoạ s(t) với –64 t 64 và Ps(s), Pn(s), H0(s) và tích phân của MSE với 0 s 0.5. DỰ ÁN 1. Phát triển một chương trình thiết kế bộ lọc Wiener một chiều. Sử dụng chương trình để ước lượng dạng sóng (waveshape) của một từ phát âm ngắn (hay một âm thanh ngắn khác) trong chuỗi âm thanh số hoá có nhiễu. 2. Tạo một tín hiệu số 512 điểm chứa xung Gauss có biên độ là 20 và độ lệch quân phương là 5 điểm được định vị tại một vị trí nào đó không nguyên bên trong phạm vi. Thêm các số ngẫu nhiên rải đều từ 0 đến 20. Mô tả chính xác vị trí của xung, niêm phong thông tin trong một phong bì và gửi nó đến một công ty kế toán ở New York để bảo vệ an toàn (hoặc khoá nó trong bàn làm việc của bạn). Thay đổi vị trí các xung nhiễu bằng sinh viên khác, người cùng thực hiện. Phát triển một chương trình thiết kế bộ lọc tương xứng một chiều. Sử dụng chương trình để xác định chính xác vị trí xung thu được bởi sinh viên cùng thực hiện với bạn. Cố gắng xác định vị trí xung chính xác hơn bạn đồng nghiệp của bạn. Cuối cùng, mở các phong bì ra và xenm ai là người xác định vị trí xung chính xác nhất. Đón nhận vinh dự chiến thắng với một nghi lễ thích hợp, phù hợp với phong tục đại phương. 3. Phát triển một chương trình thiết kế bộ lọc Wiener hai chiều. Sử dụng chương trình để giảm nhiễu trong một bức ảnh bị sần sùi. Giả sử rằng nhiễu là trắng, và 203 sử dụng một lược đồ mức xám tính trong một khu vực bằng phẳng của ảnh để ước lượng biên độ của nó. 4. Phát triển một chương trình thiết kế bộ lọc tương xứng hai chiều. Số hoá một ảnh của sự sắp xếp các viên thuốc, các vỉ thuốc và các viên con nhộng có kích thước và hình dạng khác nhau lên một nền tương phản. Vị trí các đối tượng là ngẫu nhiên, nhưng không có liên quan với nhau, và tất cả được sắp thành hàng cùng một cách. Sử dụng chương trình của bạn để làm nổi bật lên tất cả các dược phẩm cùng loại. 5. Phát triển một chương trình giải chập Wiener hai chiều. Sử dụng chương trình để khôi phục một ảnh bị mờ do bộ lọc hộp 3 3 và bị nhiễu ngẫu nhiên thêm vào. 6. Phát triển một chương trình giải chập Wiener hai chiều. Sử dụng chương trình để khôi phục một ảnh bị mờ sự di chuyển camera và bị nhiễu hạt film. Ước lượng hàm làm mờ từ hình dạng của một cạnh sắc nét trong ảnh và ước lượng biên độ nhiễu từ lược đồ mức xám tính trong một khu vực bằng phẳng của ảnh. 7. Sử dụng khả năng nhân chập của một chương trình xử lý ảnh như một bộ phát hiện tương xứng để đếm số lần chữ “A” (hoặc một chữ mà bạn thích) xuất hiện trên một trang văn bản. Làm nổi bật chữ đó lên và lấy nó làm hạt nhân phép nhân chập. Sau khi nhân chập, lấy ngưỡng và đếm các điểm. Nếu ngưỡng được đặt quá thấp, thì chữ nào khác sẽ được đếm? Tại sao? 8. Thực hiện Dự án 7, nhưng số hoá một trang văn bản in hay đánh máy thực sự với khoảng cách điểm ảnh sao cho các chữ cao từ 8 đến 10 điểm ảnh. Tỷ lệ ảnh phải tốt để có thể in. Diễn giải việc thực hiện kỹ thuật. 9. Thực hiện Dự án 8 với khoảng cách điểm ảnh lớn hơn sao cho các chữ chỉ còn cao khoảng 5 điểm ảnh. Diễn giải việc thực hiện kỹ thuật.
File đính kèm:
- bai_giang_xu_ly_anh_chuong_11_thiet_ke_bo_loc.pdf