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, IIIx, đọc là “Shah của x” và được định nghĩa IIIx là chuỗi các xung đơn vị biên độ nằm các
Trang 1Trướ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) 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
f( )} 1
Trang 2Vào biểu thức (2), chúng ta sẽ được
)
( s
III
x III
1)
a
ax
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,
ax ax
x III
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
III
x III
Trang 3Hai 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ố s 0; tức là,
0
0)
Đ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
Trang 412.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/2s 1 ), trong đó
0 1
0
1
s s
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
2s
s s G s
F x
Áp dụng lý thuyết nhân chập vào vế phải biểu thức (13) ta được
x s
x s s
x g x f
1
1 1
2
2sin2
[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 s 0 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à
Trang 5Trong đó hàm được giới hạn dải tần tại s 0
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 s 1 = 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 s 0 Biểu thức đó cho phép chúng ta đặt s 1 tại bất kỳ vị trí
nào giữa s0 và 1/ - s 0 Để cho thuận tiện, chúng ta có thể đặt s 1 tại trung điểm:
(17)
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/2s 0 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
s s
Trang 6HÌ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ố s 1 được hạ thấp xuống dưới s 1 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 đó
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/f 0
Trên lấy mẫu (Oversampling) Đối với trường hợp 1, giả sử rằng
Trang 722
1
f t
f N
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 f N, 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
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 = f 0, 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
Trang 8HÌ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 = 2f N tạo ra xung trái nằm giữa 0 và f N tại điểm s = f 0 /2 Nhờ vào phép nội suy, năng lượng
tại s = f 0 được hạ xuống đến tần số f 0 /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ố f 0 /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
Trường hợp này được minh hoạ trong hình 12-10 Năng lượng tại f 0 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
Trang 9HÌ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à
t 2sin(2 f0t)
Như trình bày trong hình 12-11 Ở đây, tại s = f N, 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
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à
Trang 10t N
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
(31)
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 đó
t s N
s 1 1
Trang 11Là 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ừ -s m đến s m, trong đó
t
s m
2
1
(34)
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ổ
Trang 12trong 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à
s F
s G s
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ố s m 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(s m ) 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