OpenCV在地图上检测六边形网格

时间:2018-03-17 12:21:58

标签: android opencv image-processing detection

我正在尝试使用OpenCv检测桌面游戏的Android六角形字段。地图看起来像这样:

[示例地图]

我尝试仅使用来自HSV的Value来获取轮廓并且我设法获得了一些六边形,但不幸的是并非所有这些都是,我在检测有河流或道路穿过它们的六边形时遇到了大多数问题。

我设法得到了类似的东西:

[检测到的六边形]

我甚至试图让边框更厚,但它没有多大帮助。 为了检测所有六边形我想到平均检测到的近似尺寸,然后逐个像素地试图检测颜色的变化(接近黑色)。后来我想在地图的照片上检测六边形,所以我不能真正依赖其他六边形的大小。

您认为解决此问题的最佳方法是什么?

编辑: 谢谢 我刚刚开始实现你的想法并且效果很好,现在我得到了水平线: enter image description here

1 个答案:

答案 0 :(得分:1)

你处理常规网格,所以你只需要检测几个,甚至一个,来计算所有其他网格。更多会更好,因为你将能够计算平均值,并且它会更准确。要查找轮廓,找到颜色渐变可能很有用。