我正在使用 opencv 库为我的项目实时检测网球。我正在使用霍夫圆变换方法进行检测,它的作用是在图像中找到包括对象在内的多个圆。所以很难从图像中得到所需物体的中心和半径的正确坐标
所以有人有任何想法来解决这个问题............?
我正在使用 opencv 库为我的项目实时检测网球。我正在使用霍夫圆变换方法进行检测,它的作用是在图像中找到包括对象在内的多个圆。所以很难从图像中得到所需物体的中心和半径的正确坐标
所以有人有任何想法来解决这个问题............?
这里给你两个想法:
更通用的方法是按大小、圆形度或您能想到的其他一些属性过滤您找到的圆圈。这样,您只会找到您真正关心的圈子。这需要对您正在寻找的特定对象的最少了解。
更具体的方法是假设您只在寻找网球(对吗?)。由于这就是您要查找的内容,因此您可以在运行霍夫算法之前对图像(阈值、变形过滤器等)进行预处理,以消除一些噪声。例如,假设您有一个普通的老式霓虹绿色网球,这就是您所关心的:
第 1 步:将图像转换为 HSV 空间(不是必需的,但我更喜欢这种方式)
第 2 步:拆分频道
第 3 步:为每个通道设置阈值,寻找与您的特定网球相对应的色调、饱和度和值的特定值。您可能需要对这些数值进行试验,以查看哪个可以为您提供最佳的球图片。
第 4 步:bitwise_和通道阈值的结果一起,创建一个(希望是现在)网球的最终二值化图像
第五步:霍夫圆算法,照常进行。
我希望这对您的情况有所帮助。-JB