2011-05-08 56 views
1
cvHoughCircles(Mat& image, vector<Vec3f>& circles, int method, double dp, double minDist, double param1=100, double param2=100, int minRadius=0, int maxRadius=0) 

根據文檔:的OpenCV houghCircles

的param1 - 第一個具體方法參數(.... PARAM1 ?, PARAM2????)。 在CV_HOUGH_GRADIENT的情況下,它是 兩個傳遞 到的Canny()邊緣檢測器的較高的閾值(下側 之一將是小兩倍)

真不理解的param1param2和點。我嘗試了很多不同的價值觀,但仍然不知道。 任何人都可以請他解釋給我。 謝謝

回答

1

目前,cvHoughCircles()中唯一實施的方法是CV_HOUGH_GRADIENT

所以,

param1 - 指的是將通過Canny邊緣檢測器(施加到灰度圖像)中使用的邊緣閾值。 cvCanny()接受兩個閾值,並由cvHoughCircles()在內部調用。因此,較高(第一)閾值設置爲param1(作爲參數傳入cvHoughCircles()),而較低(第二)閾值設置爲該值的一半。

param2 - 是累加器閾值的值。該值用於必須到達的累加器平面中,以便檢索一條直線。

我建議你閱讀這個book,這在我看來是最好的描述OpenCv的。

我希望這會有所幫助。

+0

謝謝,它不是那麼複雜。閱讀文檔時,我應該多加註意:-) 不幸的是截止日期正在接近,我無法承受閱讀長期手冊。 – myro 2011-05-08 23:24:05

+0

@myro不客氣!這本書非常好。這是值得一讀的。 – bacchus 2011-05-08 23:44:01

相關問題