如何在OpenCV中使用计算机视觉检测飞镖板上的飞镖



我是计算机视觉领域的新手。这是我需要做的。给定一张图像,在图像中包含物体a的所有位置周围画一个圆圈,换句话说,假设在射击板上有3个飞镖,我想返回它们的位置。我如何使用OpenCV做到这一点?我必须使用的技术的名称是什么?我想知道为了实现这个功能,需要熟悉库的哪些部分

所以本教程似乎涵盖了一些基本主题。你应该寻找模式识别,边缘检测…我不知道如果你将与静态图像或视频工作。可以将多种技术组合在一起,该方法的健壮性取决于您可以花费多少时间来处理给定的图像/帧。

在图像上画东西很简单,例如,一个圆是一个简单的函数调用和几个参数。

我不是这方面的专家,但我想你可以从静态图像开始,画一些圆圈,然后寻找一种方法来检测你的模式(例如,提取图像属性,你可以查看SURF)

如果您可以访问Matlab,它可以执行一些图像处理。

如果你有静态相机,从同一个地方拍摄,你可以提前拍摄,没有飞镖。在没有飞镖和有飞镖的图像之间做一个区别。在有飞镖的地方,会有明显的差异。

对diff图像的一些形态学操作应注意噪声

您应该阅读适当的文献以获得问题领域的背景知识,在本例中可能是对象识别和检测。

一个很好的参考是Szeliski的简历书或任何其他你的讲师可以推荐给你的材料。在Szeliski的书中见第14章。

整个主题当然不是微不足道的,如果不了解理论背景,只是跳到OpenCV不会帮助你太多。无论如何,这里有一个使用SURF的有趣示例。

最新更新