代码之家  ›  专栏  ›  技术社区  ›  Juan

使用Tesseract识别彩色文本(Tess4J)

  •  1
  • Juan  · 技术社区  · 12 年前

    我使用Java和Tess4J进行文本识别。我识别黑色和红色的图像(分别),都是白色背景,非常清晰。对于黑色的,效果很好,但对于红色的,tesseract简直疯了。我尝试添加变量(“editor_image_text_color”,“RED”),但它根本没有帮助。 现在,我对红色像素所做的是扫描整个图像,并将每个红色像素设置为黑色,我发现这非常低效,因为我需要对每个像素进行一些计算,因为图片的红色强度不同,我必须保存。 谢谢!

    例如: http://imageshack.us/photo/my-images/593/3eu9.png/ 总是给我9分,但是 http://imageshack.us/photo/my-images/818/efxf.png/ 没有,就像它在预处理中丢失了数字一样,因为黑色的工作得非常好,但红色的并不比随机数好。

    2 回复  |  直到 12 年前
        1
  •  2
  •   nguyenq    12 年前

    尝试使用将彩色图像转换为灰度 ImageHelper.convertImageToGrayscale(BufferedImage image) 方法

        2
  •  1
  •   Juan    12 年前

    感谢nguyenq的回答,我尝试了这个函数,但效果不太好,但在检查了ImageHelper类后,我使用了以下方法:

    ImageHelper.convertImageToBinary(BufferedImage image)
    

    而且效果很好,谢谢!