C# MODI 错误:图像中的 OCR 文本

Posted

技术标签:

【中文标题】C# MODI 错误:图像中的 OCR 文本【英文标题】:C# MODI ERROR: OCR text in image 【发布时间】:2018-05-30 12:15:57 【问题描述】:

我的应用在列表图像上使用 OCR (modi SharePoint 2017) 以返回包含此文本的所有图像。 这是工作,但应用程序错误并一次停止。例如:我选择了 32.000 张图像并调用了该方法,它工作了几个小时,有时它停止了,我不知道为什么。 该应用程序在停止之前引发 8 个错误,当我在出现错误的图像上重新启动时,它就可以工作了。

try

    modiDocument = new Document();
    modiDocument.Create(filePath);
    modiDocument.OCR(MiLANGUAGES.miLANG_FRENCH, false, false);

    MODI.Image modiImage = (modiDocument.Images[0] as MODI.Image);
    string extractedText = modiImage.Layout.Text;

    return extractedText;               

catch (Exception ex)
                
   Console.WriteLine(
        "Une exception a eu lieu : 0.",
        ex.Message);
    writeFileBug(filePath);
    return null;


finally

    modiDocument.Close();

错误:

Exception levée : 'System.Runtime.InteropServices.COMException' dans teste ocr.exe
Une exception a eu lieu : OCR running error.
Exception levée : 'System.Runtime.InteropServices.COMException' dans teste ocr.exe
Une exception a eu lieu : OCR running error.
Exception levée : 'System.Runtime.InteropServices.COMException' dans teste ocr.exe
Une exception a eu lieu : OCR running error.
Exception levée : 'System.Runtime.InteropServices.COMException' dans teste ocr.exe
Une exception a eu lieu : OCR running error.
Exception levée : 'System.Runtime.InteropServices.COMException' dans teste ocr.exe
Une exception a eu lieu : OCR running error.
Exception levée : 'System.Runtime.InteropServices.COMException' dans teste ocr.exe
Une exception a eu lieu : OCR running error.
Exception levée : 'System.Runtime.InteropServices.COMException' dans teste ocr.exe
Une exception a eu lieu : OCR running error.
Exception levée : 'System.Runtime.InteropServices.COMException' dans teste ocr.exe
Une exception a eu lieu : OCR running error.
Le programme '[15152] teste ocr.vshost.exe' s'est arrêté avec le code -1073740791 (0xc0000409).

【问题讨论】:

【参考方案1】:

您收到的错误-1073740791 (0xc0000409) 表示缓冲区溢出。(source)

检查在您的代码中创建的任何其他对象是否需要在您的 finally 块中处理。

【讨论】:

使用 OCR 提取文本的代码完全在第一篇文章中(公共字符串 ExtractTextFromImage(string filePath))。没有其他可处理的,因为它是唯一使用 OCR 的代码

以上是关于C# MODI 错误:图像中的 OCR 文本的主要内容,如果未能解决你的问题,请参考以下文章

使用 Modi OCR 从图像中提取文本

C# 中的异常处理 - 如何处理?

为啥 OCR(MODI.MiLANGUAGES.miLANG_ENGLISH, true, true) 会导致 OCR 运行错误?

如何在 C# 中使用 MODI (Microsoft Office Document Imaging) 进行连续 OCR

C# OCR tiff with MODI only ocr's the first page

[转老马的文章]MODI中的OCR模块