我有一个运行在Docker Linux映像上的API,它使用Tesseract包装器从映像中读取文本。每次Tesseract处理图像时,它都会记录大量警告并进行通信:
|估计分辨率为682
|空页!!
|估计分辨率为682
|空页!!
|警告:无效分辨率0 dpi。
|估计分辨率为1408
一个请求调用Tesseract多达50次,这会导致日志非常混乱。为了记录我需要的信息,我使用Microsoft.Extensions.Logging. 我尝试在应用设置中禁用Tesseract的日志记录。Json:
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information",
"Tesseract": "Error"
}
},
以及设置"Tesseract";但这些都无济于事。我也试着在宇宙魔方的文档中查找,但没有找到任何东西。有没有办法只禁用宇宙魔方的日志?
好了,我找到了一个解决这个问题的方法。初始化Tesseract引擎的实例后,删除
|警告:无效分辨率0 dpi。
我需要手动设置引擎的DPI:
_tesseractEngine.SetVariable("user_defined_dpi", "300");
并删除"空白页!!"debug_file
需要设置为NUL
,
_tesseractEngine.SetVariable("debug_file", "NUL");
或者DefaultPageSegMode
需要正确设置。
_tesseractEngine.DefaultPageSegMode = PageSegMode.SingleBlock;