霍夫變換就是將平面影象轉換到霍夫空間(極座標)進行特徵計算
圓的幾何標準方程
( x−
a)2+
(y−b
)2=r
2(x-a)^2+(y-b)^2=r^2
(x−a)2
+(y−
b)2=
r2圓的極座標方程
x =a
+rco
s(θ)
x=a+rcos(\theta)
x=a+rc
os(θ)y=
b+rs
in(θ
)y=b+rsin(\theta)
y=b+rs
in(θ
)api
void houghcircles(inputarray image,outputarray circles, int method, double dp, double mindist, double param1=100,double param2=100, int minradius=0, int maxradius=0 )
引數介紹
#include #include #include #include #define pic_path "/home/image/pictures/my_picture/"
#define pic_name "cell.jpeg"
int main (void)
cv::namedwindow("原始",cv::window_autosize);
cv::imshow("原始",src);
//中值濾波 去除噪點
cv::mat mountput;
cv::medianblur(src,mountput,3);
//轉換為灰度
cv::mat gray_src;
cv::cvtcolor(mountput,gray_src,cv::color_bgr2gray);
cv::namedwindow("灰度",cv::window_autosize);
cv::imshow("灰度",gray_src);
//使用公式 進行圓檢測
cv::mat dst;
vectorcir ;
//引數1 輸入圖
//引數2 輸出陣列
//引數3 檢測型別
//引數4 dp
//引數5 圓到圓心的最小距離
//引數6 邊緣計算高閾值
//引數7 圓心疊加次數
//引數8 最小半徑
//引數9 最大半徑
OpenCV 霍夫變換圓檢測
在直角座標系下,圓的方程表示為 其中,r是圓的半徑,a,b 是圓心座標。那麼換一種表達方式 因為在直角座標系下,圓上的所有點都滿足圓的方程,所以直角座標系下的乙個圓對應到abr座標系下就是乙個點。直角座標系下經過乙個點的所有圓在abr座標系下就是一條三維曲線。那麼,直角座標系下圓上的所有點在abr座...
OpenCV 霍夫線變換 霍夫圓變換
關於霍夫變換在官方文件opencv249裡的描述如下 api如下 void houghlines inputarray image,outputarray lines,double rho,double theta,int threshold,double srn 0,double stn 0 vo...
opencv 霍夫圓變換
參考 1 官方文件api 2 d6 d00 tutorial py root.html 官方英文教程 3 4 高階教程 5 官方英文教程 6 7 8 opencv論壇 9 官方github 10 注 安裝的版本 opencv python 3.3.0 cp36 cp36m win amd64.whl...