使用 Image Magick 为 OCR 创建双色调图像

Posted

技术标签:

【中文标题】使用 Image Magick 为 OCR 创建双色调图像【英文标题】:Create a bitonal image for OCR using Image Magick 【发布时间】:2011-02-19 08:02:13 【问题描述】:
nice /usr/local/bin/convert \
  -colors 2 \
  -colorspace gray \
  -compress group4 \
   /var/www/html/uploads/pokemon.jpg \
   /var/www/html/uploads/pokemontest.jpg

此命令适用于真正旧版本的 Image Magick。

在最新版本中,此方法会生成全黑图像。

nice /usr/local/bin/convert \
  -colorspace gray \
  -compress group4 \
   /var/www/html/uploads/pokemon.jpg \
   /var/www/html/uploads/pokemontest.jpg

nice /usr/local/bin/convert \
   -colors 2 \
    /var/www/html/uploads/pokemontest.jpg \
    /var/www/html/uploads/pokemontestfinal.jpg

这会产生双色调的灰色和黑色图像,但它确实很粗糙。一点也不干净。

【问题讨论】:

我在 Ubuntu imagemagic 版本 6.6.2-6 2010-12-02 Q16 上测试了第一个命令,它工作正常。可能图片有问题。 我不知道如何用 ImageMagick 术语表达这一点,但我想通过使用自适应阈值而不是全局阈值可以获得更好的结果。也许默认实现已经改变? 您可以发布(链接到)您的示例输入文件吗? 【参考方案1】:

你可以尝试一个简单的

convert  input.jpg  -threshold 50%  output.jpg

(并尝试使用50% 设置的变体)看看这是否能让你更进一步。

另外,您可能想看看这些答案:

Image Preprocessing steps to improve the recognition rate

【讨论】:

以上是关于使用 Image Magick 为 OCR 创建双色调图像的主要内容,如果未能解决你的问题,请参考以下文章

使用 Image Magick 创建具有固定颜色图的 GIF 图像

将 Magick::Image 转换为 cv::Mat

Perl Image::Magick 方法创建投影(非命令行)

使用 Image Magick 进行图像压缩 mogrify 问题

R语言使用magick包的image_modulate函数image_fill函数改变图像的亮度饱和度色调渲染指定位置为特定颜色(Modulate and paint an image)

使用Image Magick转换图像并显示结果