如何以编程方式删除黑色网格?

hhh*_*hhh 5 python graphics imagemagick image-recognition extraction

我的想法是:

  • 1.0. [未解决,硬图像检测] 将图像分成正方形并去除边框,当然还有其他技术!

  • 1.1. [未解决] Imagemagick:裁剪(这里有说明),去除某些边框——这可能需要很多时间来定位网格,图像检测问题(这里比较白/黑)——或者可能有一些魔术棒样式的过滤器。

  • 1.2. [未解决] Python:你可能需要这个from PIL import Image

显然,Gimp 的橡皮擦是解决这个问题的错误方法,因为它速度慢且容易出错。您将如何以编程方式删除网格?

在此处输入图片说明

PS这个问题在Graphics.SE休闲讨论这里包含多个物理和机械黑客。

小智 4

如果所有图像都由灰色网格上的黑线组成,您可以调整白色阈值以删除网格(例如使用 ImageMagick):

convert -white-threshold 80% with-grid.png without-grid.png
Run Code Online (Sandbox Code Playgroud)

您可能必须尝试使用​​确切的阈值。80% 的样本图像为我工作。这将使线条像素化。但也许重新采样可以将其减少到可接受的数量,例如:

convert -resize 200% -white-threshold 80% -resize 50% with-grid.png without-grid.png
Run Code Online (Sandbox Code Playgroud)