我尝试了tessnet库,它是我个人项目中Tessract OCR引擎的包装器。但我发现Tessnet当前版本有很多内存泄漏。在30次OCR时间之后,为我的应用分配的内存增加到500MB。你能告诉我如何克服这个内存泄漏问题吗?有没有更好的解决方案?我只知道C#并且只能在app中使用.NET库。 希望很快能听到专家们的意见。 提前致谢
答案 0 :(得分:1)
我通过在我创建的所有位图上调用.Dispose()解决了我的问题。我也为TessNetOCR对象中包含的位图做了同样的事情。
Bitmap bmp = new Bitmap(...);
TessNetOCR ocr = new TessNetOCR(tessnetlocation, lang, bmp, false, false);
(code using ocr and bmp)
ocr.Image.Dispose();
bmp.Dispose();
编辑:我应该注意到该程序使用了大量内存,并且在我的图像对象上调用dispose释放了这个内存,并解决了内存泄漏问题。