我正在做一个骰子价值识别爱好项目,我想在 Raspberry Pi 上运行。目前,我只是在学习 OpenCV,因为这对我来说似乎是最难的事情。我已经走到了这一步,我已经扩张、侵蚀和精巧地过滤掉了骰子。这给了我一个轮廓层次结构。图像显示了父轮廓的边界矩形:
我的问题是:我将如何计算点数?为面值做一些模板匹配更好,还是我应该在数学上测试一个点是否在边界框中的有效位置?
可能有多种方法可以做到这一点:
参考:形态学 http://blogs.mathworks.com/pick/2008/05/23/detecting-circles-in-an-image/
正如 Sivam Kalra 所说,有许多有效的方法。
我会选择模板匹配,因为它应该是健壮的并且相对容易实现。
所有步骤中最小值最低的骰子图案是正确的。
轮廓层次结构可能是一个很好且非常简单的选择,但您需要一个垂直的视野。
所以你可以用轮廓来做,但用 som 阈值拟合圆圈
(对不起我糟糕的英语)