如何在像岩石这样的复杂图像上进行分割(在c ++中)

时间:2016-09-28 11:46:52

标签: c++ opencv image-processing

我正在尝试对岩石图片进行分割(我附上了样本)。最终目标是找到近似的岩石区域(不确定所需的方法是否为图像分割)。

我尝试了几种算法:

  • 纹理分割并没有帮助,因为所有岩石都相似。
  • 我可以获得相当多的错误。由于阴影。虽然可以使用。

以下是输入图像的示例(您可以忽略篮球): Sample image containing rocks

请尽可能具体。考虑到主题的复杂性,我有点新鲜。

1 个答案:

答案 0 :(得分:2)

稍微模糊图像并应用像分水岭一样的图像分割方法可以或多或少地解决问题。但由于岩石边界类似于岩石本身的纹理,这不是一件容易的事。我建议如下:

  • 如果您不需要高精度,请尝试使用上述方法,并使用一些手动注释的图像测量预期的误差。
  • 如果准确性非常重要并且您可以寻求用户帮助,请创建一个用户界面,用户可以在每个摇滚上放置标记。然后使用从这些标记(也称为种子点)开始的分水岭变体来执行种子分割。 (OpenCV中的分水岭实现可以做到这一点。)