我有一个简单的应用程序,我希望在屏幕上向用户呈现笔画(任意但可能非常简单的2D曲线路径),并要求用户再次使用一个笔划复制它。我想测量用户复制笔划的准确性。
我首次尝试使用cv :: matchShapes复制此功能,以将源曲线点的矢量与绘制曲线的矢量进行比较,正确地对形状相似性进行了很好的评分,但实际上太强大了。我希望用户将笔划复制到位,而不是在屏幕上以任意位置/比例绘制。
要清楚,
当你试图强健匹配任意输入时,我意识到这与大多数计算机视觉相反。在这种情况下,我想要将输入的正确性评分为非常精确的目标。任何人都可以建议一个更好的方法吗?我是计算机视觉的新手,虽然在图形开发方面经验丰富,但如果这是微不足道的话,请道歉。
答案 0 :(得分:0)
一个不错的选择是倒角匹配。它非常强大,但对于转换不是不变的,正如您所要求的那样。输入是一个点集,因此无论它是否为闭合曲线都无关紧要,并且笔划的方向也无关紧要。
虽然这是一种非常标准的方法,但我找不到维基百科的文章; this是我找到的最好的资源,尽管它实际上讨论的是扩展方法。
它应该在OpenCV中,但我再次找不到任何文档,只有this sample。但无论如何,如果你有一个distance transform的实现,那么写你自己是微不足道的。
Here是原始出版物,仅供参考。