霍夫变换-测试

xiaoxiao2025-07-23  35

2018年10月25日15:22:48

今天,通过测试霍夫圆变换参数。即

CV_EXPORTS_W void HoughCircles( InputArray image, OutputArray circles,                                int method, double dp, double minDist,                                double param1 = 100, double param2 = 100,                                int minRadius = 0, int maxRadius = 0 );

改函数为opencv库中的基于霍夫变换的圆变换。其中参数主要为:

InputArray image, 输入图像

OutputArray circles, 输出圆向量      

int method, 具体检测算法,HOUGH_STANDARD,HOUGH_PROBABILISTIC,HOUGH_MULTI_SCALE,HOUGH_GRADIENT

注,本次使用HOUGH_GRADIENT

double dp,  累加器大小,1为累加器等于输入大小,2为累加器等于输入大小的一半。使用1,2都不能正常显示圆

double minDist,     两个最近圆之间的距离 ,越小表示越精确              

double param1 = 100, 此参数设为200,数值越小圆越多,计算时间大量增加

double param2 = 100,  数值越小圆越多,计算时间基本不变                   

int minRadius = 0, 圆最小半径

int maxRadius = 0  圆最大半径

实验该函数主要是为了方便边缘检测时圆边缘的大概位置,其中需要注意,该函数对于圆形的要求度很高,也就是说,对于不完全的圆可以找到圆心,对于完整的椭圆(拍摄时位置偏移)检测效果较低。

转载请注明原文地址: https://www.6miu.com/read-5033605.html

最新回复(0)