Bài giảng Xử lý ảnh số (Chương trình dành cho kỹ sư CNTT): Các phép biến đổi ảnh (tiếp theo). Bài này trình này những nội dung chủ yếu như: Biến đổi đơn nguyên (unitary), phép biến đổi Fourier đơn nguyên. Mời các bạn cùng tham khảo để biết thêm các nội dung chi tiết.
Xử lý ảnh số Các phép biến đổi ảnh Chương trình dành cho kỹ sư CNTT Nguyễn Linh Giang Các phép biến đổi ảnh • • • • • • Biến đổi đơn nguyên ( unitary ) Biến đổi Fourier Biến đổi sin, cosin Biến đổi Hadamar Biến đổi Haar Biến đổi K-L Biến đổi đơn nguyên ( unitary ) • Ma trận Unitar ma trận trực giao – Ma trận A trực giao A-1 = AT hay AAT = I • Ví dụ: 1 A= −1 – Ma trận A ma trận đơn nguyên ( unitary ) A-1 = A*T hay AA*T = I 1 j • Ví dụ: 1 A= A= j −1 – Ma trận A thực A = A*, tính trực giao tính đơn nguyên trùng – Ma trận A*T gọi AH – ma trận Hermitian Biến đổi đơn nguyên ( unitary ) • Biến đổi unitar chiều ( 1D-unitary ) – – – – A ma trận đơn nguyên, AA*T=I s(n) = { s(0), s(1), , s(n-1)} S = (s0, s1, , sn-1)T ⎧ V = AS Biến đổi đơn nguyên chiều: ⎨S = A*T V ⎩ S = A-1 V = A*T V = Σiai*T vi ai*T = (a*i,0, …, a*i,N-1)T – cội thứ i ma trận A*T hàng thứ i ma trận A* – ai*T gọi vector sở phép biến đổi đơn nguyên A – Phép biến đổi đơn nguyên A phân tích vector S thành tổ hơp tuyến tính vector sở với vector hệ số phân tích V Biến đổi đơn nguyên ( unitary ) – Ví dụ: • với A = I = ( , Ei, ), ta có s = ∑iaivi = ∑iEivi , Ei vector đơn vị sở bằng: Ei = ( 0, , 0, 1, 0, , ) Biến đổi đơn nguyên ( unitary ) • Tính chất phép biến đổi đơn nguyên: – Là phép biến đổi tuyến tính: S ⇒ V1 S ⇒ V2 a, b: const S = aS1 + bS2 ⇒ V = aV1+bV2 – Định thức giá trị riêng A 1; – Phép quay: phép biến đổi đơn nguyên phép quay vector khơng gian N chiều hay nói cách khác phép quay hệ trục tọa độ quanh gốc tọa độ không gian; Biến đổi đơn nguyên ( unitary ) – Bảo toàn lượng ( đẳng thức Parseval ): ||s||2 = ||v||2 – Năng lượng tập trung: • Đối với ảnh thông thường, lượng phân bố khơng đều; • Các thành phần biến thiên nhanh chiếm lượng nhỏ tín hiệu; • Nhiều phép biến đổi đơn nguyên tập trung lượng ảnh vào vài thành phần hệ số biến đổi; – Giải tương quan ( decorrelation ) • Đầu vào vector có thành phần tương quan mạnh, qua phép biến đổi nhận thành phần tương quan yếu; • Ma trận hiệp biến: E[ ( x – E(x))( x – E(x))*T ] – Các thành phần nhỏ cách xa đường chéo có tương quan yếu Biến đổi đơn nguyên ( unitary ) • Biến đổi đơn nguyên hai chiều(2D unitary transform ) – – – – – – A - ma trận đơn nguyên: AA*T = I s(m, n ): ma trận ảnh S; T ⎧ V = ASA v(k, l): ma trận hệ số biến đổi V; ⎨ *T * S A VA = Biến đổi đơn nguyên hai chiều: ⎩ N −1 N −1 Điều kiện trực chuẩn: ∑∑ ak ,l (m, n)ak* ,l (m, n) = δ (k − k ' , l − l ' ) m =0 n =0 Điều kiện đầy đủ N −1 N −1 ak ,l (m, n)ak*,l (m' , n' ) = δ (m − m' , n − n' ) ∑∑ k =0 l =0 hệ sở: N −1 N −1 ⎧ – Khai triển biến đổi hai chiều: ⎪v(k , l ) = ∑∑ s(m, n)ak ,l (m, n) ' ' ⎪ m =0 n =0 ⎨ N −1 N −1 ⎪ s (k , l ) = ∑∑ v(k , l )ak*,l (m, n) ⎪⎩ k =0 l =0 Biến đổi đơn nguyên ( unitary ) – Độ phức tạp: • Cần N2 phép tốn nhân số phức; • Cần N2 phép cộng số phức; • Độ phức tạp O(N4) ảnh NxN – Khi ma trận A có phần tử phân tách được: • ak,l(m,n) = ak(m) bl(n) , ak,l(m,n) = a(k,m) b(l,n) • {ak(m)}k {bl(n)}l tập hợp đầy đủ vector sở trực chuẩn 1-D – Sử dụng vector làm hàng ma trận đơn nguyên A=|a(k,m)| B=|b(l,n)| • • • • • Áp dụng vào hàng cột V , ta có: V = A X BT Trong nhiều trường hợp, A B chọn trùng Đối với ảnh vuông NxN: V = AXAT; S = AHYA* Đối với ảnh chữ nhật MxN: V = AMXANT; S = AMHYAN* Độ phức tạp tính tốn: ~ O(N3) Biến đổi đơn ngun ( unitary ) • Các hình ảnh sở – S = AHVA*, sau khai triển, ta có: s(m, n) =∑k ∑la*(k,m)a*(l,n)v(k,l) – Dưới dạng ma trận: • • • • a*k cột thứ k ma trận AH a*l cột thứ l ma trận AH Ak,l = a*k(a*l)T: ma trận hình ảnh sở S = ∑k ∑l Ak,lv(k, l): khai triển hình ảnh S thành tổ hợp tuyến tính hình ảnh sở với hệ số khai triển phần tử tương ứng ma trận V Phép biến đổi Fourier đơn nguyên • Phép biến đổi Fourier đơn nguyên chiều: – S = (s0, s1, , sN-1)T: vector tín hiệu – Ma trận Fourier đơn ngun WN=e-j2kπn/N: vector sở – Biến đổi Fourier đơn nguyên 1D: F= WNkn N ⎧ V = FS ⎨ *T ⎩S = F V – Khai triển phép biến đổi Fourier đơn nguyên 1D: ⎧ N −1 nk = v ( k ) s ( n ) W ∑ N ⎪⎪ N n =0 ⎨ N −1 − nk ⎪ s(n ) = v ( k ) W ∑ N ⎪⎩ N k =0 N ×N Phép biến đổi Fourier đơn nguyên – Ví dụ: s(n) = với 0≤ n ≤64 hệ số Fourier N=128 điểm: Phép biến đổi Fourier đơn nguyên • Phép biến đổi Fourier đơn nguyên hai chiều – – – – Ma trận đơn nguyên: F = FT; F* = F*T; F* = F-1 V = FSF S = F*VF* Khai triển phép biến đổi 2D Fourier đơn nguyên ⎧ ⎪⎪ v(k, l ) = N ∑ n=0 ⎨ N −1 ⎪s(m, n) = ∑ ⎪⎩ N k =0 N −1 N −1 km ln s ( m , n ) W ∑ N WN k m=0 N −1 −km −ln v ( k , l ) W ∑ N WN l =0 l Phép biến đổi Fourier đơn ngun • Tính chất phép biến đổi Fourier đơn nguyên – Tính tuyến tính; – Biến đổi Fourier tín hiệu bị dịch – Phép quay: tín hiệu bị quay góc θ, phổ tín hiệu bị quay góc; – Khai triển: ⎧ ⎪ g (m ' , n' ) = ⎨ ⎪⎩ , ⎛m n ⎞ f ⎜⎜ , ⎟⎟ , m, nM p ⎝ p p⎠ otherwise G(k , l ) = F (k mod N , l mod N ), (u, v) ∈ [(0,0), (nN , nN )] Phép biến đổi Fourier đơn nguyên • 2D UDFT số ảnh đơn giản – – – – Hàm hình sin Tín hiệu chữ nhật Hàm Gauss Lọc thơng thấp Phép biến đổi Fourier đơn nguyên .. .Các phép biến đổi ảnh • • • • • • Biến đổi đơn nguyên ( unitary ) Biến đổi Fourier Biến đổi sin, cosin Biến đổi Hadamar Biến đổi Haar Biến đổi K-L Biến đổi đơn nguyên ( unitary... chất phép biến đổi đơn nguyên: – Là phép biến đổi tuyến tính: S ⇒ V1 S ⇒ V2 a, b: const S = aS1 + bS2 ⇒ V = aV1+bV2 – Định thức giá trị riêng A 1; – Phép quay: phép biến đổi đơn nguyên phép quay... hình ảnh sở S = ∑k ∑l Ak,lv(k, l): khai triển hình ảnh S thành tổ hợp tuyến tính hình ảnh sở với hệ số khai triển phần tử tương ứng ma trận V Phép biến đổi Fourier đơn nguyên • Phép biến đổi