如何使用行进方块进行多个轮廓?

时间:2015-12-05 08:45:12

标签: c++ algorithm opengl-es-2.0 connected-components marching-cubes

如何在找到第一个轮廓后进行行进方格?

正在处理的图像中的轮廓将经常发生变化,因为我在嵌入式环境(android / ios)中,我想要一个快速性能解决方案。 并且不能选择使用外部库。

我尝试连接组件标签,但从来没有让它工作,因为我有一个非黑色和白色的PNG(没有阈值),如果没有错误,CCL只适用于黑白(二进制)图像。

我考虑将blob信息保存到另一个矢量并检查新发现的像素是否属于先前发现的斑点,但我认为这不够快,因为矢量越来越多,blob越来越多检查矢量中的每个blob都很昂贵。

这让我几乎完成了当前的方法,它正在消除我发现的轮廓并重复直到没有任何东西离开?但这是我目前使用的方法,看起来也很昂贵。

如果没有快速解决方案,那么任何人都可以提出不同的方法......即使这意味着不同的算法。

Mark1:我选择了行进方块,因为即使主题上有洞,我也只需要轮廓的轮廓。

1 个答案:

答案 0 :(得分:0)

我通过使用在chipmunk2d物理库中找到的行进平方算法的实现解决了我的问题。