Tess4j - Pdf 到 Tiff 到 tesseract - “警告:无效分辨率 0 dpi。使用 70 代替。”

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)

  • 它对我的扫描结果有什么影响吗?(如果没有,好的 - 我可以关闭警告)
  • 有没有办法手动设置 DPI 或者应该convertPdf为我处理这个问题?

ngu*_*enq 5

如果图像元数据中没有分辨率信息,Tesseract 会尝试自行估计分辨率,以便在结果中计算字体大小信息。

您可以尝试使用以下 API 来设置输入图像分辨率:

instance.SetTessVariable("user_defined_dpi", "300");

或者

TessBaseAPISetSourceResolution(TessBaseAPI handle, int ppi);

您可以通过以下方式抑制控制台输出:

instance.setTessVariable("debug_file", "/dev/null");