tim*_*guy 3 java ocr tesseract tess4j
我正在使用 tess4j (net.sourceforge.tess4j:tess4j:4.4.0) 并在 pdf 文件上尝试 OCR。因此,据我所知,我必须首先将 pdf 转换为 tiff 或 png(任何建议?)我是这样做的:
tesseract.doOCR(PdfUtilities.convertPdf2Tiff(inputPdfFile));
Run Code Online (Sandbox Code Playgroud)
并得到以下警告:
Warning: Invalid resolution 0 dpi. Using 70 instead.
Run Code Online (Sandbox Code Playgroud)
题
convertPdf为我处理这个问题?如果图像元数据中没有分辨率信息,Tesseract 会尝试自行估计分辨率,以便在结果中计算字体大小信息。
您可以尝试使用以下 API 来设置输入图像分辨率:
instance.SetTessVariable("user_defined_dpi", "300");
或者
TessBaseAPISetSourceResolution(TessBaseAPI handle, int ppi);
您可以通过以下方式抑制控制台输出:
instance.setTessVariable("debug_file", "/dev/null");