Bài giảng Xử lý ảnh - Chương 12: Xử lý dữ liệu lấy mẫu
lượt xem 9
download
Trong các chương trước, chúng ta đã đề cập đến xử lý ảnh số mà không đặc biệt chú ý đến các ảnh hưởng của việc lấy mẫu. Chúng ta đã giả thiết rằng, được thực hiện một cách hoàn chỉnh, việc lấy mẫu sẽ không làm mất hiệu lực các kết quả thu được từ việc phân tích các hàm liên tục. Nhưng lấy mẫu vốn thuộc xử lý số. Cho nên, chúng ta sẽ sử dụng các công cụ mà chúng ta đã phát triển trong các chương trước để tiếp cận việc lấy mẫu một cách súc tích và hiệu quả trong chương này
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Xử lý ảnh - Chương 12: Xử lý dữ liệu lấy mẫu
- Ch¬ng 12 XỬ LÝ DỮ LIỆU LẤY MẪU 12.1. GIỚI THIỆU Trong các chương trước, chúng ta đã đề cập đến xử lý ảnh số mà không đặc boiệt chú ý đến các ảnh hưởng của việc lấy mẫu. Chúng ta đã giả thiết rằng, được thực hiện một cách hoàn chỉnh, việc lấy mẫu sẽ không làm mất hiệu lực các kết quả thu được từ việc phân tích các hàm liên tục. Nhưng lấy mẫu vốn thuộc xử lý số. Cho nên, chúng ta sẽ sử dụng các công cụ mà chúng ta đã phát triển trong các chương trước để tiếp cận việc lấy mẫu một cách súc tích và hiệu quả trong chương này. Trước hết, chúng ta điều tra nghiên cứu các nhánh (ramification) lấy mẫu ảnh liên tục và xử lý dữ liệu lấy mẫu. Đặc biệt, chúng ta sẽ trả lời những câu hỏi sau đây: (1) Trong phạm vi nào thì việc lấy mẫu sẽ làm mất mát thông tin? (2) Khi lấy mẫu một hàm liên tục thì có thể khôi phục lại một cách đầy đủ được không và nếu có thig như thế nào? (3) Chúng ta phải lấy mẫu một hàm chi tiết đến mức nào để có thể bảo toàn được nó? (4) Việc lấy mẫu có ảnh hưởng gì lên phổ của một hàm? (5) Nếu chúng ta coi một hàm được lấy mẫu như thể một hàm liên tục thì phải gồm những giả thiết, những giá trị xấp xỉ, những lỗi gì? 12.2. LẤY MẪU VÀ PHÉP NỘI SUY Trước khi chúng ta có thể miêu tả các kết quả lấy mẫu một cách định lượng, chúng ta phải thiết lập một thủ tục toán học để mô hình hoá quá trình. Để thực hiện điều này, chúng ta sử dụng một hàm đặc biệt gọi là hàm Shah. 12.2.1. Hàm Shah Một công cụ quan trọng cho việc mô phỏng quá trình lấy mẫu là dãy (train) xung vô hạn, III(x), đọc là “Shah của x” và được định nghĩa III ( x) ( x n) n (1) III(x) là chuỗi các xung đơn vị biên độ nằm cách đều nhau trên trục x. Thật may mắn cho chúng ta, hàm Shah cũng chính là biến đổi Fourier của nó; tức là, {III ( x)} III (s ) (2) Chúng ta sẽ sử dụng hàm này để mô phỏng quá trình lấy mẫu một tín hiệu liên tục. 12.2.1.1. Tính đồng dạng Nếu chúng ta thay thế lý thuyết đồng dạng 1 s { f (ax )} F (3) a a 203
- Vào biểu thức (2), chúng ta sẽ được x III III (s ) (4) Trong đó phổ là dãy các xung nằm cách đều nhau một khoảng 1/ trên trục s (Hình 12-1). Nên nhớ rằng do tính đồng dạng, xung có tính chất kỳ lạ đó là 1 (ax) ( x) (5) a Bởi vì III(x) là dãy vô hạn các xung có khoảng cách bằng nhau [biểu thức(1)] nên nó cũng biểu hiện tính chất này dưới sự giãn ra và nén lại. Đặc biệt, n III (ax) (ax n) a x a (6) n n Nghĩa là 1 n III ax x a (7) a n HÌNH 12-1 Hình 12-1 Hàm Shah và phổ của nó Nếu ta đặt a = 1/ thì ta sẽ có x III x n (8) n Hay các xung nằm cách nhau từng khoảng . Chú ý rằng khoảng cách giữa các xung chứ không phải các đơn vị khoảng cách nhân với hệ số cường độ xung . Biến đổi biểu thức (8) ta được x n III III s s (9) n 204
- Hai biểu thức sau cùng chỉ rõ rằng một dãy các xung cường độ đặt cách nhau từng khoảng trong miền thời gian tạo ra một dãy xung đơn vị đặt cách nhau một khoảng 1/ trong miền tần số. Dĩ nhiên, chúng ta có thể chia biểu thức (8) cho để được các xung đơn vị cường độ trong miền thời gian và các xung cường độ 1/ tương ứng trong miền tần số. 12.2.2. Lấy mẫu bằng hàm Shah Giả sử hàm Shah bị giới hạn dải tần tại tần số s0; tức là, F ( s) 0 s s0 (10) Điều này được cho thấy trong hình 12-2. Nếu chúng ta lấy mẫu f(x) tại các khoảng cách bằng nhau, chúng ta sẽ triệt tiêu toàn bộ hàm f(x) ngoại từ tại điểm x = n. Chúng ta có thể mô phỏng quá trình lấy mẫu như phép nhân đơn giản giữa hàm f(x) với III(x/) để tạo thành hàm được lấy mẫu g(x). Quá trình triệt tiêu hàm giữa các điểm lấy mẫu bằng cách chia nó cho 0 và nhưng vẫn bảo toàn giá trị hàm tại các điểm lấy mẫu trong cường độ các xung kết quả. Hình 121-3 minh hoạ cho một hàm được lấy mẫu. Sự thuận tiện về toán học khiến cho mô hình này được lựa chọn làm phương pháp lẫy mẫu. HÌNH 12-2 Hình 12-2 Hàm giới hạn dải HÌNH 12-3 Hình 12-3 Hàm được lấy mẫu 205
- 12.2.3. Lấy mẫu và phổ Bây giờ chúng ta xem xét việc lấy mẫu phổ của f(x) sẽ cho ta cái gì. Lý thuyết phép nhân chập cho rằng khi chúng ta nhân f(x) với III(x/), chúng ta sẽ nhân chập F(s) với III(s). Nhắc lại III(s) là chuỗi xung đơn vị cường độ nằm cách nhau khoảng 1/ trên trục s. Cũng cần nhắc lại rằng phép nhân chập một hàm với một xung đơn thuần chỉ tạo ra một bản sao của hàm đó. Vì thế, phép nhân chập trong miền tần số tái tạo F(s) tại từng khoảng 1/ trên trục s. Như đã chỉ ra trong hình 12-3, G(s) bao gồm vô vàn các bản sao phổ F(x) đặt bằng nhau trên trục s từ - đến . Lưu ý phổ của hàm được lấy mẫu là tuần hoàn với tần số . Cho nên, bất kỳ hàm nào được lấy mẫu tại các khoảng cách bằng nhau đều có phổ tuần hoàn với tần số. 12.2.4. Lý thuyết lấy mẫu Bây giờ hàm f(x) đã được lấy mẫu, thông tin giữa các điểm lấy mẫu đã bị mất.nhưng chúng ta có thể khôi phục lại hàm ban đầu nguyên vnj từ các điểm lấy mẫu này không? Rõ ràng, chúng ta có thể phục hồi (reclaim) f(x) từ g(x) nếu chúng ta có thể phục hồi F(s) từ G(s). Chúng ta có thể thực hiện phần sau đơn thần bằng cách loại trừ tất cả các mô hình của F(s), ngoại trừ hàm F(s) đặt gữa gốc. Có một cách để thực hiện điều này là nhân G(s) với (s/2s1), trong đó 1 s 0 s1 s0 (11) Khi đó s G s F s (12) 2 s1 Và chúng ta lấy lại được phổ của f(x) từ phổ của tín hiệu lấy mẫu g(x). hàm ban đầu được cho bởi s f x 1 F s 1 G s (13) 2s1 Áp dụng lý thuyết nhân chập vào vế phải biểu thức (13) ta được sin 2s1 x f x g x 2s1 (14) 2s1 x Biểu thức này cho biết cách thức khôi phục f(x) từ g(x): Chúng ta chỉ cần nhân chập hàm được lấy mẫu với một hàm nội suy của dạng hàm sinc(x) = sin(x)/x. Quả thực biểu thức (14) cho thấy rằng chúng ta có thể khôi phục f(x) từ g(x) và cho ta biết cách thực hiện điều đó. Đầu tiên, f(x) phải được giới hạn dải tần tại s0 [xem biểu thức (11)] vf thứ hai, mối quan hệ giữa khoảng cách lấy mẫu và dải giới hạn s0 phải thoả mãn biểu thức (11). Điều mà chúng ta thực hiện đã chứng minh lý thuyết lấy mẫu biểu diễn một hàm lấy mẫu với khoảng cách giống nhau và có thể khôi phục hoàn toàn từ các giá trị lẫy mẫu, với điều kiện là 1 (15) 2s0 206
- Trong đó hàm được giới hạn dải tần tại s0. 12.2.5. Phép nội suy Kết quả nhân chập g(x) với hàm nội suy cho trong biểu thức (14) đã tạo ra một mô hình hàm sin(x)/x tại mỗi một điểm lấy mẫu, giống như hình 12-4. Biểu thức (14) bảo đảm rằng tổng các hàm sin(x)/x chờm lên nhau sẽ tái tạo lại hàm ban đầu một cách chính xác. Hình 12-4 minh hoạ cho trường hợp s1 = 1/2, nhưng biểu thức (11) cho phép chọn tần số hàm sin(x)/x tuỳ ý nếu hàm nghịch đảo của khoảng cách lấy mẫu lớn hơn nhiều so với giới hạn dải tần s0. Biểu thức đó cho phép chúng ta đặt s1 tại bất kỳ vị trí nào giữa s0 và 1/ - s0. Để cho thuận tiện, chúng ta có thể đặt s1 tại trung điểm: 1 s1 (16) 2 Sau đó hàm nội suy sẽ trở thành x sin 1 (17) x HÌNH 12-4 Hình 12-4 Nội suy hàm sin(x)/x 12.2.6. Dưới lấy mẫu và trùm phổ (Undersampling and Aliasing) Biểu thức (15) xác định rõ cách mà người ta lấy mẫy một hàm khi nó có khả năng khôi phục hoàn toàn từ các giá trị lấy mẫu của nó. Bây giờ chúng ta hãy xem xét điều gì sẽ xảy ra nếu điều kiện đó không thoả mãn. Giả sử >1/2s0. Tiếp theo khi F(s) được tái tạo thành dạng G(s), các mô hình riêng lẻ sẽ chờm lên và cộng lại với nhau (Hình 12-5). Sau đó nếu chúng ta nội suy, dùng hàm trong biểu thức (17), ta sẽ không khôi phục được f(s) một cách chính xác, bởi vì s G s F s (18) 2 1s 207
- HÌNH 12-5 Hình 12-5 Chờm phổ Kết quả chờm các mô hình phổ có thể quan sát như sau. Năng lượng cao hơn tần số s1 được hạ thấp xuống dưới s1 và thêm vào phổ. Việc hạ thấp năng lượng này gọi là trùm phổ, và hiệu số giữa f(x) và hàm nội suy là do sai số trùm phổ. Chú ý rằng nếu f(x) chẵn thì F(s) cũng chẵn và trùm phổ có hiệu quả tăng năng lượng phổ. Nếu f(x) lẻ, xảy ra điều trái ngược, năng lượng phổ sẽ giảm. Nếu f(x) không chẵn và cũng không lẻ thì trùm phổ sẽ tâưng phần chẵn và giảm phần lẻ, tạo thành hàm và phổ của nó chẵn hơn trước đó. 12.2.7. Ví dụ về sự lấy mẫu Các ví dụ sau đây sẽ minh hoạ trùm phổ trong miền tần số và kết quả của nó trong miền thời gian. Giả thiết rằng ta có hàm f t 2 cos2f 0 t (19) Có phổ F s s f 0 s f 0 (20) Như trong hình 12-6. Cũng giả thiết rằng chúng ta lấy mẫu f(t) tại các khoảng cách t bằng nhau. Chu kỳ của f(t) là 1/f0. Trên lấy mẫu (Oversampling). Đối với trường hợp 1, giả sử rằng 1 1 t (21) 4 f 0 HÌNH 12-6 Hình 12-6 Hàm cosin và phổ của nó Có nghĩa tần số lấy mẫu là 208
- 1 fN 2 f0 (22) 2t Và chúng ta có bồn điểm mẫu trên một chu kỳ của f(t). Hình 12-7 cho thấy hàm được lấy mẫu và phổ của nó. Hình này cũng trình bày hàm nội suy và phổ của nó. Bởi vì F(s) không chứa năng lượng lơn hơn fN, nên f(t) có thể hoàn toàn được khôi phục từ các điểm mẫu của nó. HÌNH 12-7 Hình 12-7 Lấy mẫu hàm cosin, trường hợp 1 Lấy mẫu tới hạn (Critical Sampling). Trong trường hợp 2, giả thiết rằng 1 1 t (23) 2 f 0 Có nghĩa là fN f0 (24) Và chúng ta có hai điểm mẫu trên một chu kỳ. Trường hợp này được minh hoạ trong hình 12-8. Ở đây, chúng ta đang lấy mẫu hàm cosin tại các đỉnh dương và âm của nó và hàm này vẫn có thể khôi phục lại bằng phép nội suy, như trường hợp 1. Trong miền tần số, các xung từ các mô hình liên tiếp nhau kết hợp tại s = f0, còn phổ của hàm nội suy nhận giá trị 1/2 tại điểm đó, vì vậy hàm được khôi phục nguyên vẹn. Dưới lấy mẫu (Undersampling). Đối với trường hợp 3, ta đặt 2 1 t (25) 3 f 0 Nghĩa là 3 fn f0 (26) 4 209
- HÌNH 12-8 Hình 12-8 Lấy mẫu hàm cosin, trường hợp 2 HÌNH 12-9 Hình 12-9 Lấy mẫu hàm cosin, trường hợp 3 Trường hợp này được minh hoạ trong hình 12-9. Ở đây, phổ tập trung tại s = 2fN tạo ra xung trái nằm giữa 0 và fN tại điểm s = f0/2. Nhờ vào phép nội suy, năng lượng tại s = f0 được hạ xuống đến tần số f0/2. Hình 12-9 cho thấy phép nội suy làm khít một hàm cosin có tần số f0/2 qua các điểm mẫu. Điều này mô tả sinh động thông tin tần số cao được làm như thế nào để nó xuất hiện như thông tin tần số thấp. Dưới lấy mẫu chặt (Severe Undersampling). Trong trường hợp 4, ta đặt 1 t (27) f0 để 1 fn f0 (28) 2 Trường hợp này được minh hoạ trong hình 12-10. Năng lượng tại f0 hạ xuống tần số 0. Hàm cosin chỉ được lấy mẫu tại các đỉnh dương và khi các điểm mẫu này được nội suy thì biên độ hàm kết quả sẽ không đổi. 210
- HÌNH 12-10 Hình 12-10 Lấy mẫu hàm cosin, trường hợp 4 Trường hợp 5 tương tự trường hợp 3, chỉ khác hàm là f t 2 sin( 2f 0 t ) (29) Như trình bày trong hình 12-11. Ở đây, tại s = fN, các mô hình phổ liêp tiếp chờm nhau và các cặp xung lẻ bị loại bỏ. Hình vẽ cho thấy tại sao mà hàm được nội suy lại bằng 0. Trường hợp này tương ứng với việc lấy mẫu hàm sin tại các giao điểm 0 của nó. HÌNH 12-11 Hình 12-11 Lấy mẫu hàm sin, trường hợp 5 12.2.7.1. Trùm phổ trong sự số hoá ảnh Hình 12-12 trình bày một ví dụ về trùm phổ rõ rệt trong một ảnh số hoá. Ảnh này thu được từ một camera CCD với độ rộng điểm ảnh nhỏ hơn khoảng cách điểm ảnh một cách đáng kể. Chiếc áo sơ mi có mẫu dệt đẹp mà, trong (a), bị biến thành trùm phổ trong các tần số thấp hơn, tạo ra hiệu ứng Moiré. Trong (b), camera được đặt cách rất gần tiêu điểm để làm mờ mẫu dệt, theo cách đó trùm phổ được loại bỏ. 12.3. TÍNH TOÁN PHỔ Một ứng dụng quan trọng của xử lý ảnh số là tính toán phổ của một tín hiệu hay một ảnh. Trong phần này, chúng ta sẽ miêu tả cách tính phổ của một tín hiệu và so sánh phổ tính toán với phổ thực tế của tín hiệu. 12.3.1. Cắt trong miền thời gian Giả sử tín hiệu f(t) được biểu diễn bởi N điểm mẫu tách biệt nhau một khoảng t không đổi, như đã trình bày trong hình 12-13. Khoảng cách tổng cộng mà tín hiệu được lấy mẫu trên đó là 211
- T Nt (30) Trong đó T là độ rộng của cửa sổ cắt. Bởi vì một tín hiệu chỉ có thể được lấy mẫu với một số hữu hạn các điểm, quá trình lấy mẫu cắt tín hiệu bằng cách bỏ qua phần bên ngoài cửa sổ cắt. việc này chung qui là để đặt tín hiệu hướng đến 0 ra ngoài cửa sổ. HÌNH 12-13 Hình 12-13 Tính toán phổ Chúng ta muốn sử dụng các giá trị mẫu của f(t) để tính các điểm trên phổ F(s) của nó. Chúng ta có thể thực hiện việc này bằng cách lập trình biến đổi Fourier như một phép tích phân số học. Tuy nhiên, đầu tiên chúng ta phải lựa chọn số điểm mà chúng ta sẽ tính toán trên phổ, khoảng cách giữa các điểm mẫu, và phạm vi tần số mà chúng ta sẽ tính phổ trên đó. Bởi vì tín hiệu lấy mẫu bao gồm N phép đo độc lập nên việc tính tổng N điểm trên phổ là hợp lý. Việc tính toán thêm các điểm sẽ dẫn đến dư thừa, mặc dù việc tính toán it điểm cũng không mang lại thuận lợi cho tất cảt những thông tin về f(t) mà ta có. Vì thế, một chương trình máy tính đa năng cho việc tính biến đổi Fourier phải làm N điểm mẫu thành N điểm trên phổ. Để thuận tiện, các điểm tính toán thường được đặt cách đều nhau theo trục s. 12.3.2. Cắt trong miền tần số Vì f(t) là hàm được lấy mẫu với khoảng cách lấy mẫu t, nên phổ F(s) của nó tuần hoàn với chu kỳ là 1/t. Rõ ràng, chúng ta chỉ nên hạn chế sự tính toán trong một chu kỳ của F(s). Thực tế thường chọn N điểm mẫu đều nhau trên một chu kỳ của F(s). Nghĩa là, chúng ta chỉ tính các điểm trong khoảng 1 1 s (31) 2 t 2t Nếu chúng ta trải N điểm mẫu cách đều nhau trên một chu kỳ của F(s), khi đó 1 Ns (32) t Trong đó 1 1 s (33) Nt T 212
- Là khoảng cách lấy mẫu trong miền tần số. Vì thế, đối với mục đích của chúng ta, cách lựa chọn tốt nhất để tính phổ của f(t) là tính các điểm có khoảng cách bằng nhau, cho bởi biểu thức (33), trên phạm vi tần số từ -sm đến sm, trong đó 1 sm (34) 2t Lưu ý rằng tần số tối đa mà chúng ta có thể tính có quan hệ ngược lại với khoảng cách lấy mẫu trong miền thời gian [biểu thức (34)]. Khoảng cách lấy mẫu trong miền thời gian, xác định mức độ tính phổ, có quan hệ nghịch đảo với độ rộng cửa sổ cắt trong miền thời gian [biểu thức (33)]. 12.3.3. Tính phổ Tóm lại, khoảng cách lấy mẫu trong một miền bức chế (hay bị bức chế bởi) sự cắt bớt độ rộng trong một miền khác. Nếu chúng ta muốn tính các thành phần tần số cao của phổ, chúng ta phải lấy mẫu trong miền thời gian. Hơn nữa, nếu chúng ta cần nhấn mạnh độ phân giải cao của phổ (s nhỏ), ta phải dùng một cửa sổ cắt rộng rong miền thời gian, ngay cả đối với hàm hẹp. Quan hệ giữa việc lấy mẫu trong miền thời gian và miền tần số và các tham số cắt được tổng kết trong bảng 12-1. Nếu f(t) là phức và chúng ta tính phổ của nó, N giá trị thực và N giá trị ảo được biến đổi để tạo ra N giá trị thực và N giá trị ảo của phổ. Nếu f(t) là thực, thì N giá trị thực và N giá trị 0 (phần ảo) gây ra N/2 giá trị thực và N/2 giá trị ảo trong nửa bên phải của phổ. Vì F(s) là Hermite, nên nửa trái của phổ là hình phản chiếu của nửa phải. Vì thế, N/2 giá trị thực và N/2 giá trị ảo trong nửa phổ bên phải, xét về khía cạnh nội dung thông tin, là dư thừa. Chú ý rằng, trong cả hai trường hợp, số các điểm lấy mẫu không bị giới hạn trong cả hai miền là như nhau. BẢNG 12-1 LẤY MẪU VÀ CÁC THAM SỐ CẮT Bảng 12-1 12.4. TRÙM PHỔ Bây giờ chúng ta xem xét kỹ lưỡng hơn hiện tượng trùm phổ để xác định phạm vi ảnh hưởng có thể điều khiển được của nó và cách thức hiện. 12.4.1. Tính tất yếu của hiện tượng trùm phổ Lý thuyết lấy mẫu chỉ ra rằng một sự lựa chọn khoảng cách lấy mẫu đúng đắn có thể tránh được trùm phổ khi ta lấy mẫu một hàm giới hạn dải. Vì thế, nếu sự lựa chọn sáng suốt cho phép ta làm việc với các hàm giới hạn dải, thì ta có thể tránh được hiện tượng trùm phổ. Nói cách khác, nếu chúng ta bị bắt buộc phải làm việc với các hàm vốn đã không có giới hạn dải, thì ta buộc phải làm việc dưới hiện tượng trùm phổ không thể tránh được. Thật không may, thực tế chúng ta làm việc trong thế bất lợi: các kế hoạch của chúng ta bị thất bại bởi quá trình cắt. Để hiểu rõ hơn, giả sử một hàm giới hạn dải được cắt theo một khoảng T hữu hạn. Quá trình có thể được mô phỏng như việc nhân một hàm với một xung chữ nhật chiều rộng T. Nhắc lại rằng, diều này có tác dụng đến việc nhân chập phổ với hàm sin(x)/x không giới hạn trong miền tần số. Bởi vì tích chập của hai hàm có thể không hẹp hơn cả hai, chúng ta kết luận rằng phổ của các hàm bị cắt là phạm vi vô hạn trong miền tần số. Vì thế, sự cắt cụt phá hỏng tính giới hạn dải và khiến cho quá trình xử lý số tạo ra hiện tượng trùm phổ 213
- trong mọi trường hợp. Thật may mắn, mặc dù trùm phổ nói chung là không thể tránh, nhưng sai số cuối cùng có thể giới hạn và giảm xuống một giá trị xấp xỉ có thể chấp nhận. 12.4.2. Giới hạn sai số trùm phổ Ví dụ dưới đây sẽ minh hoạ cách mà người ta đặt giới hạn sai số trùm phổ và các tham số số hoá để có được độ chính xác cần thiết bất chấp sự trùm phổ không thể tránh. Giả sử chúng ta muốn nhận biết hệ thống tuyến tính cho trong hình 12-14 bằng cách tính phổ tương ứng với xung chữ nhật của nó. Nếu f(t) là xung đầu vào và g(t) là đầu ra của hệ thống, thì hàm truyền đạt là G s H s (35) F s Giả sử rằng, đối với trường hợp này, chúng ta biết rằng hệ thống là một bộ lọc thông thấp, và vì thế đầu ra của hệ thống là một xung chữ nhật với các góc hơi tròn. HÌNH 12-12 Hình 12-14 Nhận biết hệ thống tuyến tính Nếu chúng ta ước lượng biểu thức (35) bằng tính toán số, chúng ta phải số hoá f(t) và g(t), sau đó tính phổ của chúng. Chúng ta phải chọn khoảng cách lấy mẫu t và chu kỳ lấy mẫu T sao cho độ phân giải phổ tốt với sai số trùm phổ nhỏ một cách đáng kể. Để thực hiện điều này, chúng ta phải xác định phạm vi độ phân giải phổ và sai số trùm phổ và quan hệ giữa hai con số này với các tham số lấy mẫu. Sau đó, chúng ta có thể thực hiện một sự lựa chọn thông minh với N, T và t. Tín hiệu đầu ra và phổ của nó cho trong hình 12-15. Vì F(s) trải dài từ - đến +, nên không thể chọn được một t để tránh được trùm phổ hoàn toàn. Tuy nhiên, F(s) nằm gọn trong một đường bao có dạng 1/s và điều này đảm bảo rằng biên độ đỉnh của hàm giảm dần khi tần số tăng. Nếu chúng ta bỏ qua những biến đổi sin và chỉ xem xét đường bao, thì nên nhớ rằng biên độ phổ có khả năng lớn nhất xảy ra hiện tượng trùm phổ tại tần số sm. Chúng ta có thể cho đây là trường hợp trùm phổ xấu nhất và định nghĩa, giống như lượng sai số trùm phổ, tỷ số của F(sm) với F(0). Vì F(0) là duy nhất và đường bao là 1/2as, chúng ta có thể viết phần nằm bên dưới giới hạn trùm phổ như sau 214
- 1 2t t A (36) 2as0 2a a Lưu ý rằng giới hạn sai số trùm phổ này, như ta đã định nghĩa, xấp xỉ với t, nhưng độc lập với T. Vì thế, chúng ta có thể làm cho sai số trùm phổ nhỏ như mong muốn bằng cách làm cho t nhỏ so với xung có độ rộng 2a. 12.4.3. Độ phân giải phổ F(s) có những biến thiên sin tần số a. Ta ký hiệu M là số các điểm lấy mẫu của F(s) trên một chu kỳ để tính phổ và sử dụng như là đơn vị độ phân giải phổ. Tham số M cho biết cách tính phổ lấy mẫu F(s). Chu kỳ biến thiên sin của F(s) là 1/a và 1 MS (37) a Hay 1 T M (38) as a Nghĩa là chúng ta có thể có nhiều điểm lấy mẫu trên một chu kỳ của F(s) như mong muốn nếu chúng ta làm cho chu kỳ lấy mẫu T lớn so với nửa độ rộng xung. Chú ý rằng nếu chúng ta quan tâm đến cả sai số trùm phổ lẫn độ phân giải phổ tần số cao, thì t sẽ nhỏ, T lớn và số lượng các điểm mẫu đòi hỏi là rất lớn. 12.5. SỰ CẮT BỚT Giống như việc lấy mẫu, sự cắt bớt có thể làm cho phổ được tính khác hẳn phổ thực tế của một hàm. Giống như khoảng cách lấy mẫu, cửa sổ cắt phải được chọn khôn khéo để tạo ra các kết quả chính xác thích hợp. Ví dụ tiếp theo sẽ minh hoạ cho tác dụng này. 12.5.1. Tính phổ của một biên Giả sử chúng ta muốn tính phổ của một biên (xấp xỉ hàm bậc thang). Kỹ thuật này thường được sử dụng để xác định hàm truyền đạt của bộ lọc tác động lên trên ảnh có chứa đường biên. (Xem phần 16.6) Vì việc cắt bớt một biên đúng là một sự biến đổi đầy ý nghĩa, ví dụ dưới đây minh hoạ cho kết quả của việc cắt bớt. Trong ví dụ, chúng ta sử dụng hàm sign(x) được cho trong hình 12-16. Để tính phổ, đầu tiên chúng ta phải cắt f(t) theo một khoảng T hữu hạn. Vì hàm sign(x) tiến đến vô cùng với biên độ không đổi, chúng ta thừa nhận ví dụ này nhậy cảm với sự cắt bớt. HÌNH 12-16 215
- Hình 12-16 Hàm nhảy bậc và phổ của nó Nếu chúng ta cắt hàm bằng cửa sổ cắt có độ rộng T, hàm kết quả sẽ là x x 1 x 1 g x f x (39) T T / 2 2 T /2 2 Như minh hoạ trong hình 12-17. Vì hàm được cắt là cặp xung chữ nhật lẻ nên nó có thể được viết lại như sau x T T g x x x (40) T / 2 4 4 Biến đổi biểu thức (40) thành phổ của hàm biên bị cắt: T sin(sT / 2) G s 2 j sin s (41) 2 s Và sắp xếp lại để được 2j sT 1 1 G s sin 2 2 F s cos(sT ) (42) s 2 2 2 HÌNH 12-17 Hình 12-17 Hàm nhảy bậc đã cắt và phổ của nó Một đồ thị của nó được chỉ ra trong hình 12-17. Phổ của tín hiệu bị cắt là hình sin được bao bọc bởi một đường bao là hai lần phổ F(s). Sự biến đổi đáng kể về tính chất của phổ này một kết quả của sự cắt bớt - trong trường hợp này là sự thay đổi cơ bản hàm ban đầu. Bởi vì cái mà chúng ta làm thực sự là tính các điểm trên G(s), nên chúng ta có thể cần đến những vị trí, nơi mà những điểm đó định vị, bằng cách chú ý tới những biến đổi sin trong G(s). Các điểm mẫu trên G(s) sẽ được tính tại các tần số rời rạc i N s i i s i 0,1,2,...., (43) T 2 216
- HÌNH 12-18 Hình 12-18 Phổ hàm nhảy bậc đã được tính Và các điểm được tính sẽ là 1 1 G si 2 F s i cos(i ) (44) 2 2 Thành phần cosin nhận giá trị +1 với i chẵn và -1 với i lẻ, vì vậy 2 F s i i lÎ G si (45) 0 i ch½n Xem hình 12-18. 12.5.2. Các tác dụng của sự cắt bớt Chú ý tác dụng kỳ lạ của sự cắt bớt trong ví dụ trước đây. Những điểm được đánh số lẻ là chính xác, mặc dù gấp đôi kích thước bình thường, trong khi các điểm đánh số chẵn là 0. Nó có vẻ như là sự cắt bớt đã phân bố lại năng lượng giữa các điểm chẵn và điểm lẻ. Trong ví dụ này, biên được đặt giữa cửa sổ cắt. Độc giả tự xác định kết quả trên các điểm mẫu của G(s) nếu biên hơi cách xa tâm của cửa sổ cắt. Người ta có thể thu được kết quả mong đợi bằng cách nhân chập G(is) với một bộ lọc tam giác, trung bình cục bộ, hẹp ví dụ như [1/4, 1/2, 1/4]. Điều này tương đương với việc nhân biên bị cắt với một hàm cửa sổ dạng (sin(x)/x)2. Do đó tránh được những điểm gián đoạn tại T/2 và ngăn ngừa được sai số cắt. 12.6. XỬ LÝ SỐ Bây giờ chúng ta đặt mình vào một vị trí để xem xét toàn bộ, các kết quả tích luỹ của quá trình xử lý số trên tín hiệu hay ảnh liên tục. Chúng ta thừa nhận kết quả của việc lấy mẫu, cắt bớt, nội suy, thực hiện nhân chập số và biến đổi Fourier. Trong phần này, chúng ta chỉ yêu cầu số hoá một hàm và sau đó tái tạo lại nó mà không cần xử lý. Chúng ta bắt đầu với hàm liên tục f(t), như trình bày trong hình 12- 19. Hàm trong ví dụ này có phổ biên độ tam giác nhưng pha ngẫu nhiên. HÌNH 12-19 217
- Hình 12-19 Một tín hiệu và phổ của nó 12.6.1. Cắt bớt Khi chúng ta số hoá tín hiệu, chúng ta phải cắt nó theo một khoảng T hữu hạn. Cửa sổ cắt (t/T) và phổ của nó được minh hoạ trong hình 12-20. Hình này cũng cho thấy hàm đã cắt và phổ của nó. Cắt f(t) bằng cách nhân chập phổ của nó với hàm sin(x)/x hẹp. HÌNH 12-20 Hình 12-20 Cắt tín hiệu 12.6.2. Ống kính lấy mẫu Bộ số hoá có một ống kính lấy mẫu có độ rộng hữu hạn mà trên đó tín hiệu được tính trung bình tại từng điểm mẫu. Như đã đề cập trong chương 9, phép lấy trung bình tại chỗ này có thể được mô phỏng bằng tích chập với một hàm ống kính lấy mẫu thích hợp. Đối với một bộ số hoá ảnh, hàm ống kính lấy mẫu mô phỏng tính nhạy cảm không gian của điểm quét. Các tín hiệu điện tử thường được lấy mẫu bằng một mạch điện tích hợp trên toàn bộ một chu kỳ cố định. Trong hình 12-21, chúng ta mô phỏng ống kính lấy mẫu bằng một xung chữ nhật nhỏ có độ rộng xung là . Như trình bày trong hình, việc nhân chập tín hiệu đã cắt với một hàm ống kính lấy mẫu sẽ tương đương với việc nhân phổ với hàm sin(x)/x rộng. Cho ví dụ, nếu ống kính lấy mẫu là hàm Gauss thì phổ của tín hiệu đã cắt sẽ được nhân với một hàm Gauss rộng. Trong các trường hợp khác, tác dụng của ống kính lấy mẫu là làm giảm năng lượng tần số cao trong tín hiệu. Lưu ý trong hình 12-21 rằng tại các tần số vượt quá s = 1/ thì chiều phân cực của năng lượng sẽ đảo lại. HÌNH 12-21 218
- Hình 12-21 Nhân chập ống kính lấy mẫu 12.6.3. Lấy mẫu Quá trình lấy mẫu được minh hoạ trong hình 12-22. Tín hiệu bị cắt, được làm nhẵn bằng ống kính lấy mẫu, được nhân với III(t/T) để thực hiện việc lấy mẫu. Như đã minh hoạ, lấy mẫu tín hiệu khiến cho phổ của nó tuần hoàn bằng cách thay thế phổ ban đầu tại các khoảng cách 1/t. 12.6.4. Nội suy Giả sử chúng ta đơn thuần chỉ muốn nội suy hàm đã lấy mẫu trở lại thành hàm càng gần f(t) càng tốt. Hình 12-23 minh hoạ phép nội suy bằng cách nhân chập hàm đã lấy mẫu với một xung tam giác. Trong hình, độ rộng xung tam giác là 2t0. Phép nhân chập hàm đã lấy mẫu với hàm nội suy tương đương với phép nhân phổ của nó với một hàm dạng sin2(x)/x2. Vì thông thường hàm này giảm khi tần số tăng, nó có chiều hướng làm cho tất các mô hình thành 0, ngoại trừ mô hình đầu tiên được định vị tại s = 0. Nhắc lại, hàm nội suy lý tưởng là sin(x)/x, nhân phổ với một xung chữ nhật có tâm tại s = 0. Tuy nhiên, xung tam giác trong hình 12-23 tạo ra kết quả xấp xỉ như vậy. HÌNH 12-22 Hình 12-22 Lấy mẫu tín hiệu Nếu chúng ta ký hiệu h(t) là hàm thu được bằng nội suy hàm lấy mẫu đã cắt thì t 1 t t 1 t h(t ) f (t ) III (46) T t t 0 t 0 Và phổ của nó là 2 sin(sT ) sin(s ) sin(st 0 ) H s F ( s ) T s tIII ( s t ) st (47) sT 0 12.6.5. Tác dụng của xử lý số Rõ ràng, câu hỏi không phải là xử lý số có tác dụng lên tín hiệu hay không, mà là nó có hiệu quả như thế nào. 219
- Trong ví dụ trước đây, ống kính lấy mẫu và hàm nội suy được chọn khá bao quát để chứng minh hiệu quả của chúng. Cụ thể = t0 = 2t. Các tham số này, mặc dù là tuỳ ý, nhưng thường thì nên chọn theo mối quan hệ thích hợp với một tham số khác. Ví dụ, ống kính lấy mẫu nên có độ rộng là xấp xỉ bằng khoảng cách lấy mẫu t. Ngoài ra, đối với nội suy tuyến tính, nên chọn t0 = t. Sự cắt cụt nhân chập phổ với hàm sin(x)/x hẹp. Nếu cửa sổ cắt rộng thì phổ của nó sẽ trở nên hẹp, gần giống như xung đơn vị, và điều này làm giảm ảnh hưởng của nó. Ngoài ra, nếu bên ngoài cửa sổ cắt, giá trị của hàm bằng 0 thì phép cắt không có hiệu quả. HÌNH 12-23 Hình 12-23 Nội suy tín hiệu đã lấy mẫu Ống kính lấy mẫu, như đã minh hoạ trong hình 12-21, có xu hướng làm giảm năng lượng tần số cao trong phổ. Theo cách thực hiện như vậy, nó có thể giảm bớt hiện tượng trùm phổ tiếp theo. Ống kính lấy mẫu cũng có thể đảo cực năng lượng tần số cao nếu hàm truyền đạt của nó âm. Dĩ nhiên, việc lấy mẫu khiến cho phổ tuần hoàn. Việc này tạo ra hiện tượng trùm phổ năng lượng bên trên tần số bao trùm, 1/2t. Phép nội suy khôi phục phổ thành mô hình giống gần với ban đầu. Tuy nhiên, điều này chỉ được thực hiện một cách chính xác nếu sin(x)/x được sử dụng như một hàm nội suy. Các hàm nội suy khác không loại bỏ hoàn toàn những mô hình phổ, giảm bớt thành phần năng lượng tần số cao của mô hình cơ bản, hoặc cả hai. Các tham số số hoá thường có được từ thiết kế thiết bị số hoá. Ví dụ, cửa sổ cắt biểu diễn khoảng cực đại mà bộ số hoá ảnh bao quát. Ống kính lấy mẫu chỉ đơn thuần là hàm cảm nhận của điểm quét. Khoảng cách lấy mẫu thường có thể điều chỉnh và thiết lập sao cho nó có liên quan đến đường kính của điểm. Đối với việc hiển thị một ảnh, hàm nội suy hiển thị chính bản thân điểm mẫu. 12.7. ĐIỀU CHỈNH SAI SỐ TRÙM PHỔ Có hai tham số mà chúng ta có thể sử dụng để ngăn ngừa hiện tượng trùm phổ do sự gián đoạn thông tin trong ảnh: ống kính lấy mẫu và khoảng cách lấy mẫu. 12.7.1. Bộ lọc chống trùm phổ Hình 12-24 minh hoạ cách thức người ta sử dụng một ống kính lấy mẫu hình chữ nhật để giảm trùm phổ. Độ rộng của ống kính gấp đôi khoảng cách lấy mẫu. Điều 220
- này sẽ đặt chéo 0 đầu tiên của hàm truyền đạt của nó tại fN = 1/2t. Vì thế, năng lượng tại các tần số lớn hơn fN sẽ được làm suy giảm đi rất nhiều. HÌNH 12-24 Hình 12-24 Giảm trùm phổ bằng ống kính hình chữ nhật Ống kính lấy mẫu hình tam giác được sử dụng trong hình 12-25 rộng bốn điểm mẫu và cũng có chéo 0 đầu tiên của nó tại fN. Vì phổ của nó triệt tiêu cùng tần số nhanh hơn xung chữ nhật, nên nó chống trùm phổ hiệu quả hơn. Tuy nhiên, giống như xung chữ nhật, nó giảm bớt năng lượng trong F(s) xuống fN. HÌNH 12-25 Hình 12-25 Giảm trùm phổ bằng ống kính tam giác Trong hình 12-12, xảy ra hiện tượng trùm phổ do camera CCD có các kẽ hở khá lớn giữa các điểm ảnh trên chip cảm biến của nó. Vì thế, ống kính lấy mẫu (phần tử cảm biến chẳng hạn) là quá hẹp để hoạt động như một bộ lọc chống trùm phổ và loại bỏ thông tin tần số cao trước khi lấy mẫu. Trong phần (b), camera đặt khá gần tiêu điểm và vì vậy thấu kính làm việc như một bộ lọc chống trùm phổ. 12.7.2. Lấy mẫu chồng (Oversampling) Các biểu thức (46) và (47) cho biết rằng một hàm liên tục không thể xử lý số mà không bị méo và những trình bày của chúng ta trước đây là vô ích. Tuy nhiên, có một lối ra - đó là lấy mẫu chồng. Nếu chúng ta khiến cho khoảng cách lấy mẫu nhỏ, thì chúng ta có thể đặt fN vượt xa hơn các tần số mà ta quan tâm trong phổ. Sau đó, khi hiện tượng trùm phổ làm 221
- hỏng phần trên của phổ, có ảnh hưởng ít hoặc không ảnh hưởng đến dữ liệu xử lý. Theo quy tắc ngón tay cái, lấy mẫu chồng theo thừa số của hai là đủ cho hầu hết các ứng dụng, mặc dù trong mỗi trường hợp nên có một bước phân tích. Ngoài ra, cửa sổ cắt phải đủ rộng để phần hỏng của phổ tín hiệu là nhỏ nhất. Bằng cách lấy mẫu chồng thích hợp, ta có thể làm giảm hiện tượng trùm phổ và kết quả cắt với biên độ bất kỳ. Dĩ nhiên, mọi khoản chi phí cho các tài ngiuyên máy tính cần phải được trả đầy đủ. 12.8. LỌC TUYẾN TÍNH THỰC HIỆN SỐ Lọc tuyến tính có thể thực hiện số theo hai cách khác nhau. Đầu tiên, quá trình lọc cho trong hình 12-26 có thể được thực hiện bởi tích chập số hàm được lấy mẫu f(t) với h(t) để tạo ra g(t). HÌNH 12-26 Hình 12-26 Một hệ thống tuyến tính Như một sự lựa chọn, người ta có thể biến đổi f(t) và h(t) trong miền tần số bằng một thuật giải biến đổi Fourier được thực hiện bởi phép tích phân số học. Tiếp theo, phổ đầu ra G(s) có thể được thực hiện bằng phép nhân và tín hiệu đầu ra được tạo ra bằng một phép biến đổi ngược. Nếu một hay cả hai tín hiệu đầu ra tích chập tồn tại trong khoảng ngắn, thì phương pháp tích chập số sẽ đơn giản hơn về mặt tính toán. Nói cách khác, các thuật giải biến đổi Fourier có khả năng làm cho phương pháp thứ hai thực tế hơn. Trong phần này, chúng ta sẽ so sánh hai cách tiếp cận liên quan đến trùm phổ và sai số cắt. 12.8.1. Lọc tích chập Như đã đề cập trước đây, lấy mẫu f(t) và h(t) khiến cho phổ của chúng tuần hoàn. Nếu cả hai tín hiệu đều được lấy mẫu cùng khoảng t như nhau, thì phổ của chúng sẽ tuần hoàn với cùng chu kỳ 1/t. Tích chập của hai tín hiệu được lấy mẫu nhân với hai phổ trong miền tần số để tạo ra G(s) và nó cũng tuần hoàn với chu kỳ t. Khi g(t) được nội suy, phổ của nó bị suy giảm xuống thành mô hình thu nhỏ tại gốc, như đã đề cập trong phần trước. Nếu f(t) hay h(t) bị giới hạn dải dưới s = 1/2t, thì g(t) cũng sẽ bị giới hạn dải tương tự và phép nội suy sẽ tái tạo lại nó một cách chính xác. Tuy nhiên, phép cắt sẽ phá huỷ tính giới hạn dải và một vài hiện tượng trùm phổ là không thể tránh khỏi. Hiện tượng trùm phổ biểu diễn chính nó trong g(t) theo một khía cạnh dễ hiểu. Vì 222
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Xử lý ảnh - PGS.TS. Đỗ Năng Toàn
113 p | 443 | 84
-
Bài giảng Xử lý ảnh - Đại học Hàng hải Việt Nam
70 p | 260 | 41
-
Bài giảng Xử lý ảnh số: Chương 7 - TS. Ngô Quốc Việt
71 p | 186 | 32
-
Bài giảng Xử lý ảnh số: Chương 1 - TS. Ngô Quốc Việt
43 p | 186 | 32
-
Bài giảng Xử lý ảnh số: Chương 2 - TS. Ngô Quốc Việt
60 p | 205 | 30
-
Bài giảng Xử lý ảnh số: Phân tích ảnh (Phân vùng ảnh) - Nguyễn Linh Giang
29 p | 167 | 25
-
Bài giảng Xử lý ảnh số: Chương 3 - TS. Ngô Quốc Việt
36 p | 144 | 25
-
Bài giảng Xử lý ảnh số: Chương 4 - TS. Ngô Quốc Việt
24 p | 165 | 23
-
Bài giảng Xử lý ảnh số: Giới thiệu - TS. Ngô Quốc Việt
8 p | 136 | 16
-
Bài giảng Xử lý ảnh: Chương 3 - Hoàng Văn Hiệp (p1)
103 p | 91 | 9
-
Bài giảng Xử lý ảnh số: Giới thiệu – ThS. Võ Quang Hoàng Khang
8 p | 144 | 8
-
Bài giảng Xử lý ảnh: Chương 4 - Nguyễn Thị Hoàng Lan
6 p | 57 | 7
-
Bài giảng Xử lý ảnh số: Phân tích ảnh (Xử lý ảnh nhị phân) - Nguyễn Linh Giang
16 p | 115 | 7
-
Bài giảng Xử lý ảnh: Chương 1 - Hoàng Văn Hiệp
14 p | 128 | 6
-
Bài giảng Xử lý ảnh số: Phân tích ảnh (Xử lý ảnh đường biên) - Nguyễn Linh Giang
33 p | 94 | 6
-
Bài giảng Xử lý ảnh: Chương 1 - Nguyễn Thị Hoàng Lan
13 p | 83 | 6
-
Bài giảng Xử lý ảnh số (Chương trình dành cho kỹ sư CNTT): Xử lý ảnh nhị phân - Nguyễn Linh Giang
16 p | 79 | 5
-
Bài giảng Xử lý ảnh: Chương 2 - Nguyễn Linh Giang
25 p | 85 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn