[ImageMagick 学习] ImageMagick 消除文字图像噪声

根据 Fred's ImageMagick script 中的 TEXTCLEANER 和 2COLORTHRESH,以 abbott2.jpg 为例,做法如下:

(前提:ImageMagick 已安装)

  1. 下载 abbott2.jpg 到指定目录,如/home/yasi/pic 中
  2. 在TEXTCLEANER 和 2COLORTHRESH 中下载script:textcleaner 和 2colorthresh,到 /home/yasi/pic 中
  3. ./textcleaner -g -e stretch -f 25 -o 10 -u -s 1 -T -p 10 abbott2.jpg clean.jpg
  4. ./2colorthresh clean.jpg 2color.gif

下面是处理前后的对比:

原始图片:abbott2.jpg,79162 字节

[ImageMagick 学习] ImageMagick 消除文字图像噪声_第1张图片

去除背景噪声后的图片:clean.jpg,70392 字节

[ImageMagick 学习] ImageMagick 消除文字图像噪声_第2张图片

去除背景噪声并且而二值化后的图片:2color.gif,14316 字节,大小是原始文件的 18%

[ImageMagick 学习] ImageMagick 消除文字图像噪声_第3张图片

去除噪声后的图像中,文字的笔画还是连贯,但继续做完二值化之后,文字的笔画就出现了明显的断裂,很大程度上降低了主观和客观的可读性。这个问题需要解决。

用下面的方法也试过了,最终效果几乎是一样的。在 Fred's IM Script 主页上用 "b/w" 作关键字,可以找到好几个特效,可以从中选择最佳的,即选择笔画断裂最少的特效

./textcleaner -g -e stretch -f 25 -o 10 -u -s 1 -T -p 10 abbott2.jpg clean.gif
./2colorthresh clean.gif 2color.gif

还有一个问题就是, 虽然 2COLORTHRESH 命令名字叫做二值化,并且主观上从结果看,确实是白底黑字的, 但是查看 生成的gif 图像文件的属性,它的位深度竟然是8,而不是1!尝试了加 -depth 1 参数,不起作用,这个有待研究。

你可能感兴趣的:([ImageMagick 学习] ImageMagick 消除文字图像噪声)