我想使用一个模板图像在另一个图像中搜索目标。但是,目标有缩放和旋转变化,并且目标与噪声混合在一起,颜色与目标相同。就像以下图片所示: 我想使用椭圆而不是矩形来获取目标。就像第二张图片一样。我应该如何做呢?我尝试使用matchtemplate函数,但结果不太好。同时,我还试图使用matchShapes()来完成这个任务,但该函数需要输入两个轮廓以进行比较。由于目标与噪声混合在一起,来自目标图像的轮廓并不是我需要的轮廓。我不知道该怎么办。您能帮帮我并给我一些建议吗?非常感谢!
你可以尝试使用广义霍夫变换(GHT)来使用模板查找轮廓。就我所记得的,opencv(gpu)示例中有现成的实现。(在我的机器上是opencv / samples / gpu / generalized_hough.cpp)这里也有一个有用的链接,包含源代码:http://www.itriacasa.it/generalized-hough-transform/instructions.html
你需要计算尺度和旋转不变的特征。有几种特征描述符声称具有这些属性。尺度不变性通常通过匹配目标的不同尺度集来模拟。另一种方法是先对目标进行尺度和旋转归一化。请看这里:https://dsp.stackexchange.com/questions/4893/scale-and-rotation-invariant-feature-descriptors