【问题标题】:removing the white border around an image python opencv删除图像周围的白色边框 python opencv
【发布时间】:2017-10-28 02:54:26
【问题描述】:

我想去掉下图中的白色边框:

我已经设置了一个上下边界,逐行逐列遍历以去除白色边框,但结果不成功。图像中仍有白色区域:

我也尝试过轮廓边界框方法,但它不适用于某些车牌并且无法正确识别边界。

你能推荐我一种去除原始图像中白色区域的方法吗?

【问题讨论】:

  • 在您的第一个屏幕截图中,“边框”中没有任何“a”,否则它意味着完全不同的东西。
  • 您似乎提供了带有周围窗口框架和标题栏的图片图片,而不是图片本身 - 这不是很有帮助。

标签: python opencv image-processing


【解决方案1】:

您的白色边框是否从未路径连接到您的白色符号? 如果这是真的,我建议使用region growing 算法,例如 MS Paint 中的“填充颜色罐”。 您从 (0,0) 中的“种子点”开始,然后寻找相邻像素。如果它们也是白色的,你把它们涂成黑色,它们就变成了种子,……你迭代直到你没有更多的白人邻居。

如果你喜欢写更少的代码,你可以对图像取反(黑色变成白色,白色变成黑色),然后使用 findContours(),选择像素在 (0,0) 中的轮廓并将其填充为黑色,然后再次反转颜色。缺点是它执行的操作比需要的多,我不能 100% 确定后一种解决方案。

【讨论】: