Bài giảng Xử lý ảnh số - Ngô Văn Sỹ

pdf 44 trang ngocly 3100
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Xử lý ảnh số - Ngô Văn Sỹ", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_xu_ly_anh_so_ngo_van_sy.pdf

Nội dung text: Bài giảng Xử lý ảnh số - Ngô Văn Sỹ

  1. Xử lý ảnh số Ts.NGÔ VĂNSỸ ĐẠIHỌC BÁCH KHOA ĐẠIHỌC ĐÀNẴNG
  2. Tín hiệuvàhệ thống số 2D „ Tín hiệusố hai chiều (2-Dimension) „ Số hoá tín hiệu hai chiều „ Hệ thống số hai chiều „ Biến đổi Fourier hai chiềuFT-2D „ Biến đổi Fourier hai chiềurờirạcDFT-2D „ Biến đổiZ haichiều(Biến đổiLauren) „ Các phép biến đổitrực giao 2D khác, ứng dụng trong xử lý ảnh số.
  3. Tín hiệusố hai chiều (2-Dimension) „ Định nghĩa: Tín hiệusố hai chiềulàhàm thựchay phứccủahaibiến nguyên độc lập ⎡ x(0,0) x(0,1) x(0,l) x(0, N −1) ⎤ ⎢ ⎥ ⎢ x(1,0) x(1,1) x(1,l) x(1, N −1) ⎥ ⎢ : : : : : : ⎥ x(m,n) = ⎢ ⎥ ⎢ x(k,0) x(k,1) x(k,l) x(k, N −1) ⎥ ⎢ : : : : : : ⎥ ⎢ ⎥ ⎣⎢x(M −1,0) x(M −1,1) x(M −1,l) x(M −1, N −1)⎦⎥ N kích thướcbức ảnh theo chiều ngang M kích thướcbức ảnh theo chiều đứng
  4. Các tín hiệusố hai chiềucơ bản „ Hàm Delta Kronecker „ Hàm bướcnhảy đơnvị 2D „ Hàm xung chữ nhật2D „ Hàm sin rờirạc2D „ Hàm cosin rờirạc2D „ Hàm mũ thực2D „ Hàm mũảo2D
  5. Hàm Delta Kronecker ⎧1 Khi (m = 0) ∧ (n = 0) δ (m,n) = ⎨ δ(m,n) n ⎩0 ∀ m,n ≠ 0 m
  6. Hàm bướcnhảy đơnvị 2D ⎧1 Khi (m ≥ 0) ∧ (n ≥ 0) u(m,n) = ⎨ 0 ∀ m,n < 0 u(m,n) ⎩ n m
  7. Hàm xung chữ nhật2D ⎧1 Khi (0 ≤ m < M -1) ∧ (0 ≤ n < N -1) rectMN (m,n) = ⎨ ⎩0 Khi (m < 0) ∨ (M ≤ m) ∨ (n < 0) ∨ (N ≤ n) rect (m,n) 32 n m
  8. Hàm sin và cosin rờirạc2D 2π 2π sinω ω (m,n) = sin( m)sin( n) Khi − ∞ < m,n < ∞ M N M N 2π 2π cosω ω (m,n) = cos( m)cos( n) Khi − ∞ < m,n < ∞ M N M N sinωN(n) n cosωM(m) m
  9. Hàm mũ thực2D e(m,n) = am.bn Khi - ∞ 1 dãy mộtchiềulàtăng n m e(m)=a |a|<1 dãy mộtchiềulàsuy giảm m
  10. Hàm mũảo2D E(m,n) = e jmωM e jnωN 2π 2π voi e jmωM = cos( m) + j sin( m) M M 2π 2π e jmωN = cos( n) + j sin( n) N N Như vậycóthể tổ hợpphức cho hàm sin và cosin rờirạc để thu đượchàmmũảo
  11. Số hoá tín hiệu hai chiều Lượng tử hoá và điều Mã hoá f(x,y) khiểnlogic fs(m∆xs,n∆ys)fq(m,n) f(m,n) Lấymẫutrênlướichữ nhật
  12. Định lý lấymẫu2D „ Tín hiệu f(x,y) có phổ tầnsố không gian đượchạnchế trong mộtmiền biên, có thể được đặctrưng một cách chính xác bởi các mẫu đượclấy đềutrênmộtlướichữ nhậtvới điềukiện chu kỳ lấymẫutheochiều ngang ∆xs (và chiều đứng∆ys) không vượtquámộtnửachukỳ của thành phầntầnsố không gian cực đạitheochiều ngang ∆xmin(và chiều đứng ∆ymin). 1 1 ∆x ≤ ∆x ; và ∆y ≤ ∆y s 2 min s 2 min ξ xs ≥ 2ξ xmax ; và ξ ys ≥ 2ξ y max 1 1 ξ xs = ; ξ ys = ∆xs ∆ys
  13. Chèn phổ „ Tốc độ lấymẫuthấp
  14. Chèn phổ „ Tầnsố lấymẫuthoả mãn định lý Nyquist
  15. Chèn phổ „ Tầnsố lấymẫu đủ lớn
  16. Khôi phục tín hiệulấymẫu „ Công thức khôi phục tín hiệu analog từ tín hiệulấymẫu2D là: ∞ ∞ sin(xξ xs − m)π sin(yξ ys − n)π f (x, y) = ∑∑f (m∆xs ,n∆ys )( )( ) mn=−∞ =−∞ (xξ xs − m)π (yξ ys − n)π
  17. Lướilấymẫu interlace (quin-cunx) „ Giảmtốc độ lấymẫumàvẫn không bị chèn phổ ξys ξxs
  18. Lướilấymẫulụcgiác „ Cho chấtlượng ảnh số tốtnhất
  19. Hệ thống số hai chiều „ Đượcmôhìnhhoábằng mô hình hộp đen vớimột đầuvàovàmột đầura „ Trong đóx(m,n) đượcgọi là tín hiệu vào hay tín hiệukíchthích, y(m,n) đượcgọi là tín hiệu ra hay tín hiệu đáp ứng. y(m,n) x(m,n) H[.] y(m,n) = H[x(m,n)]
  20. Hệ thống số hai chiều Đáp ứng xung „ Là đáp ứng củahệ thống 2D vớitínhiệu vào là hàm Delta Kronecker y(m,n) = x(m,n)*h(m,n) x(m,n) h(m,n) δ(m,n) h(m,n) ∞ ∞ x(m,n)*h(m,n) = ∑∑x(m − k,n − l).h(k,l) kl=−∞ =−∞ ∞ ∞ = ∑∑h(m − k,n − l).x(k,l) = h(m,n)* x(m,n) kl=−∞ =−∞ trong trường hợphệ thống là tuyến tính, bấtbiến
  21. Hệ thống số hai chiều Tính chấttuyến tính „ Hệ thống số 2D đượcgọilàtuyến tính nếuvàchỉ nếunóthoả mãn nguyên lý xếpchồng y1(m,n) x1(m,n) y(m,n) = x(m,n) = H[.] a1y1(m,n)+a2y2(m,n) a1x1(m,n)+a2x2(m,n) y2(m,n) x2(m,n) y(m,n) = H[x(m,n)]
  22. Hệ thống số hai chiều Tính chấtbấtbiến „ Hệ thống đượcgọilàbấtbiến đốivớiphéptịnh tiến trong không gian nếuvàchỉ nếu đáp ứng xung của nó không thay đổihìnhdạng, mà chỉ dịch chuyểntương ứng vớiphéptịnh tiến h(m,n) δ(m,n) H[.] δ(m-k,n-l) h(m,n ; k,l) h(m,n ; k,l) = h(m-k,n-l)
  23. Hệ thống số hai chiều Tínhnhânquả Mộthệ thống DSP-2D đượcgọi là nhân quả nếuvà chỉ nếu đáp ứng xung củahệ thống khác không ở ¼ mặtphẳng thứ I: xxxx xxxx xxxx xxxx Bánnhânquả nếu h(m,n) khác không ở mộtnửamặt phẳng Phi nhân quả trong trường hợp còn lại
  24. Hệ thống số hai chiều Tính ổn định „ Mộthệ thống DSP-2D đượcgọilàổn định nếuvàchỉ nếu đáp ứng xung củanólàhữu hạn ∞ ∞ ∑∑h(m,n) < ∞ mn=−∞ =−∞
  25. Hệ thống số hai chiều Tínhtáchrời „ Mộthệ thống DSP-2D đượcgọilàcóthể tách rờinếuvàchỉ nếu đáp ứng xung củanócóthể phân tích thành thừasố củahaiđáp ứng xung 1D. h(m,n)=h1(m)h2(n) x(m,n)=x1(m)x2(n) y(m,n)=y1(m)y2(n) H1[.] H2[.] y(m,n) = H2[H1[x(m,n) ]]
  26. Tổng chập2D „ Các bướcthựchiện: 0 „ Quay mặtnạ 180 . „ Dịch mặtnạ từ trái sang phảivàtừ trên xuống dưới, sao cho tâm lầnlượt điqua tấtcả các điểm ảnh. „ Ở mỗivị trí pixel trung tâm (m,n), lấytổng của tấtcả các tích hệ số mặtnạ lọc và pixel láng giềng, kếtquả đặt ở pixel (m,n) tương ứng trên bức ảnh ra.
  27. Tổng chập2D 1 -11 -10 -12 3 5 7 7 2 3 4 4 4 3 5 6 5 1 0 11 10 2 3 5 7 5 0 0 4 4 4 3 5 5 0 5 0 1 0 2 3 7 5 5 0 0 4 4 4 -1 7 5 1 1 0 2 3 5 -1 4 -1 6 6 2 0 4 4 4 3 -1
  28. Biến đổi Fourier hai chiều FT-2D Cặpbiến đổiFT-2D: jw1 jw2 Biến đổithuận X (e ,e ) = FT − 2D[x(m,n)] +∞ +∞ = ∑∑x(m,n)e− jw1m.e− jw2n mn=−∞ =−∞ −1 jw jw Biến đổingược x(m,n) = FT − 2D [X (e 1 ,e 2 )] = 1 jw jw jw m jw n = ∫∫ X (e 1 ,e 2 )e 1 e 2 dω dω 4π 2 1 2
  29. Các tính chấtcủaFT-2D „ Tuyếntính „ Dịch không gian „ Dịch tầnsố không gian „ Nhân „ Tổng chập
  30. Biểudiễnhệ thống 2D trong miền tầnsố không gian „ Đáp ứng tầnsố không gian jw1, jw2 X(ejw1, ejw2) Y(e e ) H(ejw1, ejw2) Y(ejw1, ejw2)= X(ejw1, ejw2).H(ejw1, ejw2) „ Đáp ứng biên độ H và đáp ứng pha argH củahệ thống 2D trong miền tầnsố không gian
  31. Biến đổi Fourier hai chiều rờirạc DFT-2D
  32. Biến đổi Z hai chiều(Biến đổiLauren)
  33. Các phép biến đổitrựcgiao2D khác, ứng dụng trong xử lý ảnh số. „ Biến đổisin rờirạc „ Biến đổicosinrờirạc „ Biến đổi Karuhnen-Louve „ Biến đổiHaar „ Biến đổi Gabor „ Biến đổi wavelet
  34. Bài tập: Viếtchương trình con tổng chập2D „ #define unsigned char BYTE „ Convolut-2D (BYTE *InImage, int M, int N, BYTE *Mask, int Hmask, int Vmask, BYTE *OutImage) { int m, n, i, j; for(i = 0; i <Vmask; i++) for(j = 0; j <Hmask; i++) /* Dao hang va cot */ Mask1[i][j] = Mask[M-i-1][N-j-1]; for(i = 0; i <Vmask; i++) { tam = Mask[i][j]; Mask[i][j] = Mask[M-i+1][j]; Mask[M-i+1][j] = tam; } for(j = 0; j <Hmask; i++) { tam = Mask[i][j]; Mask[i][j] = Mask[i][N-j-1]; Mask[i][N-j-1] = tam; }
  35. for(m = 0; i <M; m++) for(n = 0; n <N; n++) for(i = 0; i <Vmask; i++) for(j = 0; j <Vmask; i++) { *(InImage +m*N+n) }