Xem mẫu

  1. Theo định nghĩa: f ( x, y ) (4.3) r ( x, y )  i ( x, y ) (4.4) f ( x , y )  r ( x, y ) i ( x , y ) ở đ ây r(x,y) đặc trưng cho các vật thể trong ảnh. Khi các vật mang các chi tiết trong ảnh như đường viền giữa các vật thể, các đư ờng biên trong vật thể, ..., thì hàm r(x,y) sẽ chứa các tần số cao hơn i(x,y), hàm đặc trưng cho độ chói và thường có thay đổi khá đều đặn trên ảnh. Một ph ương pháp dùng để tăng cường chất lượng của ảnh là làm giảm sự tác động của yếu tố độ sáng và tăng cường các chi tiết của ảnh. Nó được thực hiện bằng cách chia ảnh th ành hai khối khi đi qua bộ nhấn tần số cao. Các bước xử lý tiếp được mô tả trong một loại bộ lọc đặc biệt gọi là bộ lọc đồng hình. 4.3 Lọc đồng hình Một giải pháp cung cấp độ nổi cho các vật th ể trong một ảnh đã cho là làm giảm tác động của độ chói. Nó được thực hiện bằng cách đầu tiên chia tín hiệu ảnh th ành hai thành ph ần r(x,y) và i(x,y), và sau đó tăng cường th ành phần tần số cao. Điều này có thể thực hiện bằng cách lấy logarit của h àm cường độ sáng f(x,y). Kết quả sau đó được lọc qua bộ lọc 2-D có đặc tính nh ư trong h ình 4.1. H(1,2 H L D0 D(1,2) Hình 4.1 Biểu diễn dạng bộ lọc đồng hình. Lấy đối lôgarit kết quả cho ta kết quả cuối cùng. Toàn bộ quá trình này được mô tả ở hình 4.2 hoặc theo các biểu thức sau: (4.5) ln( f ( x, y))  ln( r ( x, y))  ln(i ( x, y )) (4.6) o ( x, y )  ln( f ( x, y )) * h( x, y ) 44
  2. dấu * là tích ch ập. Ảnh nhận đ ược tại đầu ra được cho bởi: g ( x, y )  e o ( x , y ) (4.7) Thuật toán này sẽ làm giảm ảnh hưởng của những tín hiệu chói không đồng đều trong ảnh và làm nổi các chi tiết trên ảnh. Ba tham số trong hình 4.1 (H ,L ,,D0) được chọn từ thực nghiệm. Đặc tuyến trong hình 4.1 có thể được mô tả, cho ví dụ, bằng hàm Butterworth, cho tron g trường hợp này theo biểu thức: Cho D( 1 ,  2 )   12   2  D0 2 D(1 ,  2 ) 2  H   L  H ( 1 ,  2 )   H 2 1   H   L  D ( 1 ,  2 ) 2  D0 ( H   L ) các trường hợp còn lại (4.8) H ( 1 ,  2 )   H ảnh đã lọc f(x,y) o(x,y) o(x ,y) ln[f(x,y)] e H(1, 2) Hình 4.2 Lọc đồng hình. Bảng 4.1 Các hệ số của bộ lọc 5  5 được dùng theo kiểu lọc đồng hình. 0.02675 -0.001526 -0.007420 -0.001526 - .002675 - -0.034115 -0.059471 -0.034115 - 0.001526 .001526 - -0.059471 0.902895 -0.059471 - 0.007420 .007420 - -0.034115 -0.059471 -0.034115 - 0.001526 .001526 - -0.001526 -0.007420 -0.001526 0.00267 0.002675 5 Dùng chương trình (2.1) trong chương 2, chúng ta có th ể thiết kế bộ lọc FIR có đặc tuyến mô tả bằng biểu thức (4.8). Các hệ số của bộ lọc 5  5 có H = 1.0, L = 0.5 và D0 = 0.8  đư ợc cho ở bảng 4.1. Đáp ứng tần số đư ợc cho ở hình 4.3. Chương trình lọc ảnh dùng bộ lọc FIR được cho ở trong chương 3, chương trình 3.2, có thể thay đổi th ành lọc đồng hình. Chú ý rằng, nếu logarit của giá 45
  3. trị điểm ảnh đ ã đ ược chuyển vào bộ đệm, thì bộ đệm chuyển ảnh trong hình 3.1 phải có kiểu "float" thay cho kiểu "unsigned char". Kết quả của chương trình được chứa vào các biến con trỏ float thay thế cho các biến giá trị nguyên. Trước khi lấy logarit, tốt nhất là nên chia các m ức xám của ảnh đầu vào nằm trong khoảng giữa 0.0000001 đến 10. Điều này sẽ hạn chế đầu vào với ph ần chia của hệ số logarit, việc đó sẽ qui định sự phân ly giữa các giá trị điểm, ngaọi trừ giá trị không, giá trị n ày sẽ là  trong hệ số logarit. Bài tập 4.1 Thay đ ổi chương trình 3.2 để đưa ra bộ lọc đồng hình. Chúng ta sẽ kiểm tra khái niệm lọc đồng h ình. Hình 4.5 đưa ra một ảnh sẽ được sử dụng để kiểm tra. Hình 4.6 trình bày m ột ảnh sau khi áp dụng lọc đồng h ình với bộ lọc có hệ số cho trong bảng 4.1. Bạn chú ý rằng nhiều đặc điểm trong ảnh bây giờ trở nên rõ ràng hơn. Tuy nhiên, lọc đồng h ình đã không di chuyển một vài ảnh hưởng ánh sáng, cũng như các vùng phản chiếu và bóng tối. Bài tập 4.2 1. Thiết kế bộ lọc 7  7 dùng xấp xỉ hàm Butterword cho bởi biểu thức (4.8) với H = 1.0, L= 0.25 và D0 = 0.8  và H = 1.0, L= 0.25 và D0 = 0.6 . Thiết kế bộ lọc FIR 7  7 dùng xấp xỉ h àm bộ lọc thông cao Butterword được cho trong ví dụ 2.6 trong chương 2. 2. Dùng bộ lọc có các hệ số cho trong bảng 4.1 và thiết kế để lọc ảnh cho trên đĩa với file có tên là "TESH.IMG". 3. Bây giờ lọc ảnh "TESH. IMG" với bộ lọc thông cao có cùng đặc tuyến. 4. Lặp lại phần 2 và 3 trên ảnh "PISTON.IMG" có sẵn trên ảnh đi kèm 5. Giải thích các kết quả khác nhau thu được từ b ài tập này. 46
  4. H ình 4.3 Ảnh 3-D thiết kế bộ lọc 5  5 với D0 = 0.8 , L= 0.5. Hệ số được cho trong bảng 4.1. Hình 4.4 Đồ thị ln(x). 47
  5. Hình 4.5 Ảnh dùng kiểm tra lọc đồng hình. 48
  6. H ình 4.6 Ảnh đ ã lọc đồng h ình. 4.4 Lọc pha tương phản Giải pháp lọc pha tương phản được mô tả tốt nhất bằng biểu đồ hình 4.7. Ảnh I(x,y) đi qua bộ lọc thông to àn bộ với các đặc tuyến pha mô tả ở hình 4.8. g(x,y) I(x,y)  H(1 , 2)  Hình 4.7 Sơ đồ khối của lọc pha tương phản. (1 , 2) D(1 , 2) c  H (1 , 2) 1 D(1 , 2) 49
  7. Hình 4.8 Đặc tuyến pha và biên độ của PCF. Lọc pha tương ph ản (PCF) được dùng trong lọc không gian để ho àn trả lại các chi tiết có thể nhìn thấy đ ược với gradient pha. Phổ pha của ảnh mang theo nhiều tin tức về ảnh hơn là biên độ phổ. Chúng ta sẽ làm rõ đ iều này trong chương 7. Có lẽ sẽ là hợp lý hơn nếu chúng ta xử lý trực tiếp góc pha của ảnh để làm n ổi ảnh hơn là xử lý biên độ ảnh. Từ sơ đồ khối hình 4.7 ta có th ể viết : (4.9) g ( x, y )  I ( x , y )  h ( x, y ) I ( x , y ) Lấy biến đổi Fourier cả hai vế của (4.9) ta có : G( 1 , 2 )  I ( 1 , 2 )  H ( 1 , 2 ) I ( 1 , 2 ) ho ặc G( 1 ,  2 ) (4.10)  1  H ( 1 ,  2 ) I ( 1 ,  2 ) Khi H(1,2) = 1 với D(1,2) < c và H(1 ,2) = -1 với D(1,2)  c thì G( 1 ,  2 ) D(1, 2) với c < 0 I ( 1 ,  2 ) (4.11) G( 1 ,  2 ) D(1,2) với  c và 2 I ( 1 , 2 ) (4.12) thì đây là bộ lọc thông cao (HPF) đối xứng vòng tròn, với một sự với chuyển tiếp đột ngột từ giải thông sang dải chắn. 50
  8. Hình 4.9 (a) Bề mặt của Pít tông; (b) Lọc bằng bộ lọc PCF với điểm  c  1.25 (c) Lọc bằng bộ lọc PCF với điểm  c  1.4 ; (d) Lọc ảnh với bộ lọc HPF có miền chuyển tiếp dốc có điểm cắt  c  1.4 . 4.5 Thay đổi lược đồ mức xám Lược đồ mức xám (Histogram) trong một ảnh đư ợc định nghĩa bởi n (i ) h (i )  n (4.13) ở đây n (i) = tổng các mức xám trong ảnh có giá trị i và n = tổng số các mức xám trong ảnh. Sự phân bố p (i) hoặc n (i) có th ể cung cấp thông tin về dáng điệu của ảnh. Một ảnh có phân bố mức xám giống như h ình 4.10a thì có sắc m àu tối, một ảnh phân bố mức xám như hình 4.10b thì có sắc màu sáng. Vì lý do này, ta có thể làm nổi ảnh bằng cách thay đổi phân bố n(i) để chỉnh lại các sắc m àu của các mức xám trên ảnh. 4.5.1 Xử lý tương phản Việc mở rộng mức xám tuyến tính có thể thực hiện bằng cách ánh xạ mức xám của ảnh gốc qua hàm ánh xạ tuyến tính chỉ trên hình 4.11. Đó là: r  rmin (4.14) s 255 rmax  rmin ở đây, r là một mức xám trên ảnh gốc và s là mức xám đã qua ánh xạ. Ảnh ánh xạ sẽ có mức xám kéo dài trong kho ảng giữa 0 và 255. Điều này có thể đưa đến một vài cải thiện đối với ảnh, và được sử dụng như công đo ạn cuối cùng trong tất cả chương trình lọc được cung cấp trong quyển sách n ày. n(i) n(i) 51 0 i 0 i 255 255
  9. H ình 4.10 (a) Lược đồ mức xám của một ảnh có sắc m àu tối; (b) Lược đồ mức xám của một ảnh có sắc màu sáng. r rmax rmin 0 255 s Hình 4.11 Thang chia mức xám tuyến tính. 4.5.2 San bằng lược đồ mức xám Sự biến đổi biểu đồ phân bố các mức xám có thể đạt được một cách gần đúng b ằng cách xét hàm mật độ xác suất liên tục pr(r) thay cho h (i). Cái mà chúng ta cần đến là có được một phép đổi ánh xạ mức xám trên ảnh gốc, thay biến r bởi một biến mới s vì vậy sự phân bổ mức xám trên ảnh biến đổi theo công thức sau: s  T (r ) (4.15) Biến đổi ngư ợc được cho bởi r  T 1 ( s) (4.16) Trong đó T (r ) và T 1 ( s ) là hàm đơn giá trị đơn điệu tăng theo r và s. Nếu p s ( s) chỉ rõ hàm mật độ xác xuất của ảnh được biến đổi th ì từ lý thuyết xác xuất ta có thể viết: 52
  10. dr   p s ( s)   p r (r )  ds  r T 1( s)  (4.17) Chúng ta giả thiết rằng, tại một thời điểm, ảnh gốc và ảnh qua ánh xạ là các hàm liên tục với hai biến không gian độc lập x và y. Bây giờ hãy xem đến sự biến đổi r (4.18) s  T ( r )   p r ( ) d 0 Trong đó vế b ên phải đư ợc biết đến như hàm phân bố tích luỹ (cumulative distribution function - CDF). Từ công thức (4.18) chúng ta có thể viết: ds (4.19)  p r (r ) dr Thay th ế công thức (4.19) vào (4.17) chúng ta có 1 (4.20) p s ( s)  pr (r )  1.0 p r (r ) Vì vậy, phép biến đổi cho bởi công thức (4.18) cho ảnh mức xám có phổ đồng đều. Biến đổi trên có thể được viết dưới dạng tổng quát hoá như sau: k  n( j ) (4.21) sk  j 0 Ho ặc, chúng ta muốn ánh xạ ảnh mức xám nằm giữa 0 và 255, chúng ta có thể thay đổi s k như sau: s k  s0 (4.22) sk  255 s 255  s0 Chú ý rằng vì công thức (4.21) là một xấp xỉ của công thức (4.18) bằng cách cho rằng ảnh ánh xạ có thể có lược đồ mức xám không thực sự đồng đều. Một nhân tố khác cũng không được quan tâm trong quá trình biến đổi, đó là với một số ảnh mà các mức xám không phủ kýn các miền thì CDF sẽ giữ lại hằng số ở những miền không đ ược phủ kýn đó. Những nhân tố này sẽ cho kết quả trong ảnh ánh xạ mà ở đó lư ợc đồ mức xám là xấp xỉ gần nhất với lược đồ mức xám đồng đều được rút ra từ ảnh gốc. Chương trình 4.1 cho dưới đây dùng cho việc san b ằng lư ợc đồ mức xám. 53
  11. Chương trình 4.1 "UNI_HIST.C". /* PROGRAM 4.1 “UNI_HIST.C”. Histogram equalization. */ /* Histogram equalization. */ #define MAX 16384 #include #include #include #include #include #include void main() { int image_length,image_width,i,j,ch,true_length; unsigned long int histo[256],s[256]; char file_name[14]; unsigned char buff[MAX]; int k,n,ind; double nsq; float range; FILE *fptr,*fptr2; clrscr(); printf("Enter file name of image -->"); scanf("%s",file_name); fptr=fopen(file_name,"rb"); if(fptr==NULL) { printf("%s does not exist.",file_name); exit(1); } printf("Enter file name for storing mapped image-- >"); scanf("%s",file_name); gotoxy(1,3); printf(" "); ind=access(file_name,0); while(!ind) { 54
nguon tai.lieu . vn