全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2737
推到 Plurk!
推到 Facebook!

canny edge detection 計算時錯誤的問題?

答題得分者是:wubelin
peterpeng
一般會員


發表:2
回覆:1
積分:0
註冊:2004-08-04

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-03-07 15:29:52 IP:211.75.xxx.xxx 訂閱
Canny edge的程式,我是依據此網頁改的 www.pages.drexel.edu/~nk752/cannyTut2.html#Step 1
程式執行時會發生 atan2:DOMAIN error 錯誤訊息!
發現是因為程式中

[code cpp]
thisAngle = (atan2(Gx,Gy)/3.14159) * 180.0; // Calculate actual direction of edge
[/code]

Gx與Gy同時為零,此時函式 atan2 就會發生錯誤。

假設一影像的灰階 p1 p2 p3
p4 p5 p6
p7 p8 p9

若 p1、p2、p3、p4、p6、p7、p8、p9灰階值皆相同,經sobel mask 後,Gx與Gy不就會為零嗎!
這樣我該如何計算 thisAngle ?

請問有人知道應該怎麼做嗎?

附加檔案:47d0eef0bbe9a_canny.rar
wubelin
一般會員


發表:2
回覆:14
積分:18
註冊:2007-10-04

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-03-07 16:50:13 IP:61.60.xxx.xxx 訂閱

[code cpp]
if ( Gx == 0 && Gy == 0 )
thisAngle = 0;
else
thisAngle = (atan2(Gx,Gy)/3.14159) * 180.0;
[/code]
系統時間:2024-04-19 3:39:53
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!