python - 使用 OpenCV 计算骰子的点数

标签 python opencv

我正在做一个骰子值识别爱好项目,我想在 Raspberry Pi 上运行。目前,我只是在学习 OpenCV,因为这对我来说似乎是最难的事情。我已经走到这一步了,在这里我已经扩张、侵 eclipse 并精明地过滤掉了骰子。这给了我轮廓的层次结构。该图像显示父轮廓的边界矩形:

enter image description here

我的问题是:我将如何继续计算点数?是对面值进行一些模板匹配更好,还是我应该用数学方法测试 pip 是否位于边界框内的有效位置?

最佳答案

可以有多种方法:

  1. 使用空洞填充,然后使用形态学算子来过滤圆。
  2. 更简单的方法是使用白色像素密度(白色像素的百分比)。五个点将具有更高的白色像素密度。
  3. 使用图像矩(表示图像形状和结构的数学属性)针对不同种类的骰子面训练神经网络。

引用: 形态学 http://blogs.mathworks.com/pick/2008/05/23/detecting-circles-in-an-image/

关于python - 使用 OpenCV 计算骰子的点数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18211832/

相关文章:

c++ - FileStorage::WRITE .xml 标记在 opencv 上

python - 如何创建关键点来计算 SIFT?

python - 从 shell 脚本中执行 python 代码

python - 在cmd中使用帮助时如何过滤命令?

python - PL/Python 和 postgreSQL : What is the best way to return a table of many columns?

python - OpenCV 中的 PIL ImageChops.screen

java - OpenCV4Android 默认的 Mat 图像类型是什么?

python - 如何为不同的环境(开发、生产等)设置 settings.py

python - 在 python 中遍历巨大的范围

linux - 安装ridgerun sdk - Leopard board DM