Sobel問題 |
缺席
|
fish730622
一般會員 發表:7 回覆:5 積分:2 註冊:2007-07-05 發送簡訊給我 |
我只要作偵測直方向的直線,如紅色框起區域,我是不是使用sobel的時候只需要使用它的fy遮罩部份
http://210.240.242.172:7878/123321.BMP {-1 -2 -1 0 0 0 1 2 1} 那至於fy之後的計算是如何計算的我PO我程式碼希望大大能提供我意見 我是以計算出的fy 開根號是這樣用嗎? 還是直接將值放入陣列中 [code cpp] int i,j; int c0,c1,c2,c3,c4,c5,c6,c7,c8; int n0; int min=0; int max=255; for(i=0;i for(j=0;j c0= Panorama_Dis1[i-1][j-1]; c1= Panorama_Dis1[i-1][j]; c2= Panorama_Dis1[i-1][j 1]; c3= Panorama_Dis1[i][j-1]; c4= Panorama_Dis1[i][j]; c5= Panorama_Dis1[i][j 1]; c6= Panorama_Dis1[i 1][j-1]; c7= Panorama_Dis1[i 1][j]; c8= Panorama_Dis1[i 1][j 1]; n0= -c0-2*c1-c2 0*c3 0*c4 0*c5 c6 2*c7 c8; if(n0 n0=-n0; } n0=SimpleRoundTo(sqrt(n0),0); if(n0>max) n0=255; Panorama_Dis1[i][j]=n0; } } Byte *ptr; Graphics::TBitmap *B = new Graphics::TBitmap(); B->PixelFormat=pf8bit; B->Height=PANORAMA_Y; B->Width=PANORAMA_X; B->Palette=CreatePalette(&GrayPalette.lPal); for(i=0;i ptr=(Byte *)B->ScanLine[i]; for(j=0;j ptr[j]=Panorama_Dis1[i][j]; } } ImgPanorama->Picture->Assign(B); delete B; [/code] 編輯記錄
fish730622 重新編輯於 2008-10-29 03:40:43, 註解 無‧
fish730622 重新編輯於 2008-10-29 03:42:15, 註解 無‧ fish730622 重新編輯於 2008-10-29 03:45:45, 註解 無‧ fish730622 重新編輯於 2008-10-29 03:48:18, 註解 無‧ |
fish730622
一般會員 發表:7 回覆:5 積分:2 註冊:2007-07-05 發送簡訊給我 |
我懂了是我自己太白痴 ,主要原因是我把我計算的值又丟回原始陣列中,還有應該是直接將值丟回陣列就可以不用開根號
應該是這樣吧? 如果我程式寫的地方沒有很好也請大大指點指點 因為初學中
編輯記錄
fish730622 重新編輯於 2008-10-31 04:25:45, 註解 無‧
fish730622 重新編輯於 2008-10-31 04:26:44, 註解 無‧ fish730622 重新編輯於 2008-10-31 04:28:10, 註解 無‧ fish730622 重新編輯於 2008-10-31 04:28:47, 註解 無‧ fish730622 重新編輯於 2008-10-31 04:29:04, 註解 無‧ |
istillloving
高階會員 發表:33 回覆:182 積分:183 註冊:2008-10-09 發送簡訊給我 |
用陣列存也可以
[code cpp] int array{ { , , }, { , , }, { , , } }; [/code] 這種邊緣偵測法如果用在二值化的圖 邊緣會出現兩個像素感覺上好像有點粗 所以只要加上if是從黑變白的 這樣邊緣就會細一點(因為我開的圖蠻小張的...)
------
恩...
編輯記錄
istillloving 重新編輯於 2008-11-03 17:16:25, 註解 無‧
istillloving 重新編輯於 2008-11-05 16:40:46, 註解 無‧ istillloving 重新編輯於 2008-11-05 16:41:08, 註解 無‧ istillloving 重新編輯於 2008-11-05 16:41:23, 註解 無‧ istillloving 重新編輯於 2008-11-05 16:41:39, 註解 無‧ |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |