我使用过tess4j,但没有得到正确的结果。 下面是我的代码。
public static String crackImage(String filePath) {
BufferedImage img = null;
try {
img = ImageIO.read(new File(filePath));
} catch (IOException e) {
}
ITesseract instance = new Tesseract();
instance.setLanguage("eng");
// instance.setPageSegMode((3));
img= ImageHelper.convertImageToGrayscale(img);
instance.setDatapath("C:\\tessdata");
try {
String result = instance.doOCR(img);
return result;
} catch (TesseractException e) {
System.err.println(e.getMessage());
return "Error while reading image";
}
}
我附上了示例图片。
我的输出是:
臂m方式:男人m fl / Vemmnh 1951 mm 8221 11m 3521 | \ | \ | II \ IIIIIIHIIIIIHIIIH
浮渣-万维网
%‘
请提出如何获得正确结果的建议
答案 0 :(得分:0)
这是最佳做法,
在运行该tess4j命令之前,您需要进行图像处理而更喜欢使用(OpenCV)。 https://github.com/tesseract-ocr/tesseract/wiki/ImproveQuality
或者您可以选择Google Ml KIT