intTypePromotion=1

Làm nổi ảnh và tách đường biên ảnh part 1

Chia sẻ: Asg Ahsva | Ngày: | Loại File: PDF | Số trang:10

0
169
lượt xem
55
download

Làm nổi ảnh và tách đường biên ảnh part 1

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Làm nổi và tách đường biên ảnh 5.1 Chỉ dẫn Các kỹ thuật xử lý ảnh đều quan tâm đến việc làm nổi hoặc tách lấy đường biên ảnh. Đường biên trong một ảnh đen trắng được định nghĩa là các đoạn rời rạc hoặc là thay đổi đột ngột của cường độ mức xám. Sự thay đổi này chứa các thông tin về ảnh, và phần đóng góp của chúng trong phổ ảnh sẽ tìm thấy cuối miền tần số cao....

Chủ đề:
Lưu

Nội dung Text: Làm nổi ảnh và tách đường biên ảnh part 1

  1. Ch­¬ng 5 Lµm næi vµ t¸ch ®­êng biªn ¶nh 5.1 ChØ dÉn C¸c kü thuËt xö lý ¶nh ®Òu quan t©m ®Õn viÖc lµm næi hoÆc t¸ch lÊy ®­êng biªn ¶nh. §­êng biªn trong mét ¶nh ®en tr¾ng ®­îc ®Þnh nghÜa lµ c¸c ®o¹n rêi r¹c hoÆc lµ thay ®æi ®ét ngét cña c­êng ®é møc x¸m. Sù thay ®æi nµy chøa c¸c th«ng tin vÒ ¶nh, vµ phÇn ®ãng gãp cña chóng trong phæ ¶nh sÏ t×m thÊy cuèi miÒn tÇn sè cao. Mét ®­êng biªn ¶nh, trong tr­êng hîp tæng qu¸t cã thÓ tr¶i theo bÊt kú h­íng nµo, vµ cã thÓ biÕn thiªn vÒ c­êng ®é s¸ng. Trong ch­¬ng nµy, chóng ta sÏ lÊy ra ®­êng biªn ¶nh b»ng ®Æc tuyÕn tÇn sè cña chóng. Ta sö dông bé läc FIR ®­îc thiÕt kÕ nh­ bé läc th«ng cao ®èi xøng vßng trßn vµo c«ng viÖc nµy. Sau ®ã, ta sÏ ®­a ra mét sè phÐp xö lý ®­êng biªn lÊy tõ ®Æc tuyÕn kh«ng gian cña ®­êng biªn ¶nh. 5.2 Lµm næi ®­êng biªn ¶nh qua bé läc FIR V× ®­êng biªn ¶nh chiÕm ë d¶i tÇn sè cao trong phæ cña ¶nh, nªn ta cã thÓ lµm næi hoÆc t¸ch ®­êng biªn ¶nh qua bé läc th«ng cao. Dïng cho chøc n¨ng nµy, ta cã thÓ dïng bé läc t­¬ng ph¶n pha cã ®iÓm c¾t tÇn sè ®ñ cao ®Ó lµm næi ®­êng biªn ¶nh vµ lµm mê c¸c chi tiÕt kh¸c cña ¶nh cã tÇn sè thÊp. VÊn ®Ò ®Æt ra lµ chóng ta t×m ra ®iÓm c¾t tÇn sè nµy nh­ thÕ nµo. §iÓm nµy ®­îc t×m ra b»ng ph­¬ng ph¸p thö nghiÖm vµ ®iÒu chØnh dÇn dÇn. VÝ dô, ta cã thÓ sö dông ¶nh ®· qua bé läc trung vÞ ë h×nh 4.19 trong ch­¬ng 4, ¶nh nµy thu ®­îc khi sö dông l­îc ®å møc x¸m vµ läc trung vÞ trªn ¶nh "ISLAM.IMG" cã trªn ®Üa ®i kÌm theo. H×nh 5.1a vµ h×nh 5.1b cho kÕt qu¶ dïng PCF thiÕt kÕ nh­ läc FIR kÝch th­íc 5  5 víi c¸c ®iÓm c¾t c lµ 1.7 vµ 2.0. C¸c kÕt qu¶ cho thÊy lµ trong tr­êng hîp nµy ®­êng biªn ¶nh næi tréi víi  c = 2.0 . Mét ph­¬ng ph¸p kh¸c hay dïng ®Ó lµm næi ®­êng biªn ¶nh lµ dïng bé läc Laplace, ®Þnh nghÜa nh­ sau:  2 f ( x , y )  2 f ( x, y ) (5.1)  2 f ( x, y )   2x 2 y ë ®©y f(x,y) lµ hµm c­êng ®é cña ¶nh. §Æc tÝnh tÇn sè cña Laplace ®­îc ®Þnh nghÜa nh­ sau: 62
  2. H ( 1 , 2 )   12   2 2 (5.2) §Ó hiÓu ho¹t ®éng cña ph­¬ng ph¸p Laplace trong viÖc trÝch ra ®­êng biªn, xem s¬ ®å vÝ dô h×nh 5.2. Chóng lµ sù ®¬n gi¶n ho¸ s­ên ©m vµ s­ên d­¬ng ®­êng biªn. H×nh 5.1 (a) KÕt qu¶ sö dông bé läc PCF víi  c  1.7 . (b) KÕt qu¶ sö dông läc PCF víi  c  2.0 . 63
  3. H×nh 5.2 §¹o hµm bËc nhÊt vµ bËc hai cña ®­êng biªn. Râ rµng lµ ®¹o hµm bËc hai cã thÓ dïng ®Ó ph¸t hiÖn ®­êng biªn ¶nh. Th«ng th­êng, c¸c ®iÓm c¾t zero cña ®¹o hµm bËc hai lµ n¬i cã ®­êng biªn ¶nh. CÇn ph¶i nhí r»ng ®¹o hµm cña mét hµm hai biÕn t¹i bÊt kú ®iÓm nµo còng phô thuéc vµo h­íng lÊy ®¹o hµm. C¸c bé läc FIR cã thÓ dïng xÊp xØ mét Laplace bëi dïng hµm cho bëi biÓu thøc (5.2) nh­ hµm läc trong ch­¬ng 2, ch­¬ng tr×nh 2.1 (hµm H(w1,w2)). ¶nh trong h×nh 5.3 cho ta kÕt qu¶ dïng Laplace thiÕt kÕ nh­ mét bé läc FIR 9  9 trªn ¶nh cho trong h×nh 4.19. Bµi tËp 5.1 ViÕt mét ch­¬ng tr×nh dïng ®Ó t¸ch ®­êng biªn ¶nh dïng: 1. Bé läc th«ng cao t­¬ng ph¶n pha dïng nh­ mét bé läc FIR. 2. Mét hµm Laplace dïng nh­ mét bé läc FIR. 5.3 T¸ch ®­êng biªn ¶nh qua c¸ch tiÕp cËn kho¶ng c¸ch Dïng ®Æc tuyÕn kho¶ng c¸ch ®­êng biªn, chóng ta cã thÓ ®­a ra mét sè c¸ch tiÕp cËn ®Ó ph¸t hiÖn ra ®­êng biªn. §Ó cung cÊp c¬ së vÒ kü thuËt nµy, chóng ta sÏ b¾t ®Çu xem xÐt mÉu sau ®©y: -1 2 -1 -1 2 -1 -1 2 -1 H×nh 5.3 KÕt qu¶ cña läc ¶nh trªn ¶nh h×nh 4.19. 64
  4. Gi¶ sö r»ng, trong tr­êng hîp nµy, ¶nh chØ cã hai møc x¸m lµ 0 vµ 1, vµ mét ®­êng biªn däc ¶nh cã chiÒu dµi tèi thiÓu lµ 3 ®iÓm ë mét n¬i nµo ®ã trªn ¶nh. §Ó t¸ch lÊy ®­êng biªn däc ¶nh th× chóng ta ph¶i chång lªn vµ quÐt mÉu lªn trªn bÒ mÆt ¶nh. T¹i bÊt kú vïng nµo chóng ta nh©n phÇn tö chøa trong mÉu víi víi møc x¸m t­¬ng øng ®­îc che bëi mçi phÇn tö cña mÉu, sau ®ã tÝnh tæng c¸c kÕt qu¶. Bëi v× tæng cña tÊt c¶ c¸c phÇn tö cña mÉu b»ng kh«ng, kÕt qu¶ sÏ lµ kh«ng cho nÒn vµ kh¸c kh«ng cho c¸c n¬i kh¸c. NÕu cét gi÷a cña mÉu trïng víi mét ®­êng biªn cã Ýt nhÊt ba ®iÓm theo chiÒu cao, cét gi÷a vµ ph¶i che c¸c gi¸ trÞ 1, cét tr¸i che c¸c gi¸ trÞ 0, chóng ta cã gi¸ trÞ lµ 3, theo (-1* 0) + (-1* 0) + (-1* 0) + 2*1 + 2* 1 + 2* 1 + (-1* 1) + (-1* 1) + (-1* 1) = 3 ThuËt to¸n trªn cã thÓ biÓu diÔn b»ng biÓu thøc sau ®©y: 1 1   h( k , k (5.3) y(n1 , n 2 )  ) I (n1  k1 , n2  k 2 ) 1 2 k1  1 k 2  1 ë ®©y h(k1,k2) lµ phÇn tö cña mÉu, víi h(0,0) ë trung t©m cña mÉu vµ I(n1,n2) lµ møc c­êng ®é s¸ng cña ¶nh. BiÓu thøc (5.3) biÓu thÞ cho t­¬ng quan chÐo gi÷a mÉu víi ¶nh. MÆc dï thuËt to¸n nµy chØ ¸p dông cho ¶nh nhÞ ph©n, mét ¶nh chØ cã hai møc x¸m, nã còng cã thÓ ¸p dông trong tr­êng hîp tæng qu¸t cho ¶nh cã nhiÒu møc x¸m nh­ chóng ta sÏ xem xÐt sau nµy trªn ¶nh thËt. Mét sè c¸c mÉu th­êng ®­îc gäi lµ mét ®­êng biªn hoÆc lµ mét mÆt n¹ xö lý, ®· ®­îc cho s½n trong tµi liÖu. C¸c lo¹i mÆt n¹ hay dïng nhÊt sÏ ®­îc ®Ò cËp sau. 5.3.1 To¸n tö Robert Nã bao gåm hai mÆt n¹ sau ®©y : W1 W2 0 -1 -1 0 1 0 0 1 §¸p øng tõ tÊt c¶ mÆt n¹ nµy ®­îc tÝnh tõ biÓu thøc (5.3). ChiÒu dµi ®­êng biªn ¶nh cã thÓ rót ra b»ng c¸ch dïng bÊt kú phÐp xö lý kh«ng tuyÕn tÝnh nµo sau ®©y. y1 (i , j ) 2  y2 (i , j ) 2 (5.4) y (i , j )  y (i , j )  max y1 (i , j ) , y2 (i , j )  (5.5) y (i , j )   y1 (i , j )  y 2 (i , j )  (5.6) 65
  5. Trong ®ã y1(i,j) vµ y2(i,j) lµ ®¸p øng rót ra tõ mÉu W1 vµ W2. Hai biÓu thøc cuèi cïng ®­îc dïng th­êng xuyªn nhÊt. H­íng cña ®­êng biªn (i,j), tÝnh theo ph­¬ng n»m ngang, cã thÓ rót ra bëi y (i, j )  tan 1 2  (i, j )  y1 ( i , j ) 4 (5.7) C¸c phÇn tö trong mÆt n¹ gäi lµ c¸c träng sè. 5.3.2 To¸n tö Sobel Ph­¬ng ph¸p Sobel ®­îc thiÕt kÕ ®Ó xÊp xØ hµm gradient rêi r¹c. MÆt n¹ xö lý Sobel cã d¹ng sau: W2 W1 1 0 -1 -1 -2 -1 2 0 -2 0 0 0 1 0 -1 1 2 1 Vµ ¶nh chiÒu dµi ®­êng biªn tÝnh ra tõ tÝnh to¸n dïng biÓu thøc (5.4), 5.5) hoÆc (5.6). H­íng cña ®­êng biªn tÝnh tõ: y 2 (i , j )  (i. j )  tan 1 (5.8) y1 (i , j ) Chó ý r»ng W1 dïng ®Ó t¸ch lÊy ®­êng biªn däc ¶nh, cßn W2 dïng ®Ó t¸ch lÊy ®­êng biªn ngang cña ¶nh. 5.3.3 C¸c mÆt n¹ gradient khÐp kÝn Chóng ®­îc ph¸t triÓn dùa trªn sù ®¸nh gi¸ tÊt c¶ c¸c h­íng cã thÓ cña mét ®­êng biªn ¶nh trong mét ¶nh rêi r¹c. Bëi vËy thay v× chØ ¸p dông hai mÆt n¹ nh­ hai ph­¬ng ph¸p tr­íc, t¸m mÆt n¹ ®· ®­îc dïng, mçi c¸i cung cÊp mét c¹nh ®­êng biªn däc theo mét trong t¸m h­íng cã thÓ cña vßng (xem h×nh 5.4). Bèn kiÓu kh¸c nhau cña c¸c mÆt n¹ cña ph­¬ng ph¸p nµy cho ë phÝa d­íi. Chóng lµ sù ph¸t triÓn dùa trªn m« h×nh d÷ liÖu c¬ së cho ®­êng biªn trong ¶nh. N 3 2 1 NE NW E 4 W 0 66 SW SE 6 5 7 S
  6. H×nh 5.4 C¸c h­íng xö lý. C¸c to¸n tö Prewitt. Cã hai kiÓu to¸n tö sau: KiÓu 1: 1 1 1 1 1 1 1 1  1 1  1  1  1  2 1  W  1  2  1 W  1  2  1 W  1  2  1 W0   1 2 3   1  1  1 1  1  1 1 1  1 1 1 1           1  1  1  1  1 1  1 1 1 1 1 1  1  2 1  W   1  2 1 W   1  2 1 W    1  2 1 W4   5 6 7     1 1  1 1 1   1  1 1 1 1 1 1      KiÓu 2: 1 1 1 1 1 0 1 0  1 0  1  1 W0   0  W  1 0  1 W  1 0  W  1 0  1 0 0 1   1 3   2   1  1  1 0  1  1 1 0  1 1 1 0          1  1  1   1  1 0  1 0 1 0 1 1 W4   0  W    1 0 1 W    1  W   1 0 1  0 0 5  0 1 7   6  1 1 0 1 1  1 0 1   1  1 0 1         Víi kiÓu thø 2 b¹n chØ cÇn bèn mÆt n¹ ®Çu tiªn v× tÝnh ®èi xøng gi÷a chóng víi bèn mÆt n¹ cuèi cïng. To¸n tö vßng Sobel. To¸n tö nµy ®­îc tÝnh theo t¸m mÆt n¹ sau: 1 2 1 2 1 0 1 0  1  0  1  2  0  W  1 0  1  W   2 0  2  W  1 0  1  W0   0 0 1  2 3   1  2  1  0  1  2 1 0  1  2 1 0         67
  7.   1  2  1   2  1 0   1 0 0 0 1 2 0  W    1 0 1 W    2 0 1  W    1 0 1 W4   0 0 5  6 7  1 1 0 1 2   1 0 2   2  1 0 2         còng do tÝnh ®èi xøng mµ b¹n chØ cÇn dïng bèn mÆt n¹ ®Çu tiªn . To¸n tö vßng Kirsh. C¸c to¸n nµy ®­îc xem nh­ lµ c¸c to¸n tö thuÇn nhÊt. Nã t¹o ra mét sù thay ®æi nhá trong gradient vµ t¹o ra c¸c sù so s¸nh lÇn l­ît nh­ c¸c ph­¬ng ph¸p tr­íc ®©y. T¸m mÆt n¹ nµy ®­îc m« t¶ nh­ sau: 5 5 5 5 5 3 5 3 3 3 3 3 W0   3 0 3 W1   5 0 3 W2  5 0 3 W   5 0 3 3  3 3 3 3 3 3 5 3 3 5 5 3         3 3 3 3 3 3 3 3 5 3 5 5 W  3 0 3 W5  3 0 5  W  3 0 5 W7  3 0 5 4 6 5 5 5 3 5 5 3 3 5 3 3 3         Trong ph­¬ng ph¸p xö lý tuÇn hoµn th× c¸c ®­êng biªn ¶nh cã thÓ ph¸t hiÖn ra theo: (5.9) y (i , j )  max{| y 0 (i , j ), ... , | y 7 (i , j )|} ë ®©y y0, y1 lµ c¸c söa l¹i qua c¸c mÆt n¹ W0, W1 trªn ¶nh. Gãc (i,j) tÝnh theo ph­¬ng n»m ngang x¸c ®Þnh b»ng:  (i , j )  h­íng trong ph¹m vi cña gi¸ trÞ lín nhÊt cña yk(i,j)  y k (i , j )  tan-1 =    y 0 (i , j )  (5.10) B©y giê chóng ta sÏ kiÓm tra mét sè phÐp xö lý nµy. Chóng ta sÏ ph¸t triÓn hai ch­¬ng tr×nh, mét cho c¸c xö lý cña Sobel (dïng hai mÆt n¹) vµ mét cho c¸c xö lý cña Kirsh. C¸c b­íc ph¸t triÓn cho ch­¬ng tr×nh nµy t­¬ng tù nh­ c¸c b­íc ph¸t triÓn cho ch­¬ng tr×nh läc FIR. Ch­¬ng tr×nh gèc cña xö lý Sobel ®­îc cho ë d­íi ®©y: Ch­¬ng tr×nh 5.1 SOBEL.C Ch­¬ng tr×nh ®Ó rót ra chiÒu dµi ®­êng biªn ¶nh dïng xö lý Sobel. 68
  8. /* This program is for obtaining the edges using the Sobel directional operator. */ #include #include #include #include #include #include #include /* Sobel masks. */ int S1[3][3]={{1, 0, -1}, {2, 0, -2}, {1, 0, -1}}; int S2[3][3]={{ -1, -2, -1}, {0, 0, 0}, {1, 2 , 1 }}; void main() { int i,j,n1,n2,image_width, image_length,k1,k2,ind; char file_name[14],ch; unsigned char **w; unsigned char *temp,tmp; int y1, y2; float nsq; unsigned int zn2; FILE *fptr, *fptr1; clrscr(); printf("Enter file name for input image ->"); scanf("%s",file_name); if((fptr=fopen(file_name,"rb"))==NULL) { printf("%s does not exist.", file_name ); printf("\nPress any key to exit."); getch() ; exit(1); } nsq=filelength(fileno(fptr)); printf("Is this a square image ?"); 69
  9. printf("\n i.e. Is image_length=image width (y or n)? -> "); while(((ch=tolower(getch()))!='y')&&(ch!='n')); putch(ch); switch(ch) { case 'y': image_length=image_width=sqrt(nsq); printf("\n Image size = %d x %d",image_length, image_width); break; case 'n': printf("\nEnter image_width-->"); scanf("%d",&image_width); image_length=nsq/image_width; printf("image length is %d", image_length); break; } printf("\nEnter file name for filtered image ->"); scanf("%s",file_name); ind=access(file_name,0); while(!ind) { gotoxy(1,6); printf("File exists. Wish to overwrite? (y or n)-->"); while(((ch=tolower(getch()))!='y')&&(ch!='n')); putch(ch); switch(ch) { case 'Y': ind=1; break; case 'n': gotoxy(1,6); printf(" "); gotoxy(1,5); printf(" "); gotoxy(1,5); printf("Enter file name -->"); scanf("%s",file_name); ind=access(file_name,0); } 70
  10. } fptr1=fopen(file_name,"wb"); gotoxy(70,25); textattr(WHITE+(GREEN
ADSENSE
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2