Cơ bản về xử lý ảnh số
165
K = idct2(J);
% Biến đổi ngược DCT
imview(I)
%
Hiển thị ảnh gốc
imview(K,[0 255])
% Hiển thị ảnh sau khi nén
Kết quả được trình bày ở hình 11.16.
11.3.3. BIEÁN ÑOÅI RADON
Phép biến đổi Radon, được thực hiện bởi hàm radon trong MATLAB, biểu diễn ảnh dưới
dạng các hình chiếu của nó dọc theo các hướng xác định. Hình chiếu của một hàm hai biến
f(x,y) là một tập hợp các tích phân đường. Hàm radon tính các tích phân đường từ nhiều điểm
nguồn dọc theo các đường dẫn song song, gọi là các tia chiếu (beam), theo một hướng xác
định nào đó. Các tia chiếu này nằm cách nhau 1 pixel. Để biểu diễn toàn bộ ảnh, hàm radon sẽ
lấy nhiều hình chiếu song song của ảnh từ các góc quay khác nhau bằng cách xoay các điểm
nguồn quanh tâm của ảnh. Quá trình này được minh hoạ ở hình 11.17a.
(a)
(b)
Hình 11.17.
Ví dụ, tích phân đường của f(x,y) theo hướng thẳng đứng chính là hình chiếu của f(x,y) trên
trục x, còn tích phân đường của f(x,y) theo hướng nằm ngang chính là hình chiếu của f(x,y)
trên trục y (hình 11.17b).
Tổng quát, biến đổi Radon của f(x,y) ứng với góc quay
θ là tích phân đường của f dọc theo
trục y’:
( ')
( 'cos
'sin , 'sin
'cos )
'
R x
f x
y
x
y
dy
θ
θ
θ
θ
θ
+∞
−∞
=
−
+
∫
(11.8)
Trong đó (x’,y’) là hệ trục toạ độ có được bằng cách xoay hệ trục (x,y) đi một góc bằng
θ:
'
cos
sin
'
sin
cos
x
x
y
y
θ
θ
θ
θ
⎡ ⎤ ⎡
⎤ ⎡ ⎤
=
⎢ ⎥ ⎢
⎥ ⎢ ⎥
−
⎣ ⎦ ⎣
⎦ ⎣ ⎦
(11.9)
Hình 11.8
mô tả cách tính biến đổi Radon với góc quay
θ. Trong MATLAB, biến đổi Radon
được tính bằng hàm radon với cú pháp như sau:
>> [R,Xp] = radon(I,theta)
Trong đó:
theta
là một vector gồm các góc quay cần tính biến đổi Radon
R
là một ma trận mà mỗi cột của nó là biến đổi Radon R(x’) ứng với một góc quay
theta
.