c#:如何忽略来自Tesseract的日志?



我有一个运行在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;

相关内容

  • 没有找到相关文章

最新更新