如何通过 Aspose.OCR 从扫描图像中提取文本

如何通过 Aspose.OCR 从扫描图像中提取文本

扫描合同、协议、书页或旧记录通常会产生图像文件,而不是可编辑的文本。

现实世界问题

纸质文件、书籍和档案经常被存储为图像,用于数字工作流、遵守或研究的内容可以缓慢、昂贵、如果手动完成,可能会出现错误。

解决方案概述

Aspose.OCR Scan to Text for .NET 将印刷页面的图像转换为可用的文本,处理单列、多列和复杂的布局。

原則

确保你有:

  • Visual Studio 2019 或以后
  • .NET 6.0 或更高版本(或 .Net Framework 4.6.2+)
  • Aspose.OCR 为 .NET 从 NuGet
  • 基本的C#知识
PM> Install-Package Aspose.OCR

步骤实施

步骤 1: 安装和设置 Aspose.OCR

添加 NuGet 包和参考 Aspose.OCR:

using Aspose.OCR;

步骤2:添加扫描图像

加载单或多个图像文件进行处理。

OcrInput input = new OcrInput(InputType.SingleImage);
input.Add("contract_page1.png");
input.Add("agreement_page2.jpg");

步骤3:设置识别设置

按需要编写文档语言和布局。

RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
// For complex or multi-column layouts:
settings.DetectAreasMode = DetectAreasMode.DOCUMENT;

步骤4:运行认可过程

AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);

步骤5:保存或处理提取的文本

foreach (RecognitionResult result in results)
{
    Console.WriteLine(result.RecognitionText);
    result.Save("scanned_text.txt", SaveFormat.Text);
    // Save to Word or PDF as needed
    result.Save("scanned_text.docx", SaveFormat.Docx);
    result.Save("scanned_text.pdf", SaveFormat.Pdf);
}

步骤6:添加错误处理

try
{
    AsposeOcr ocr = new AsposeOcr();
    List<RecognitionResult> results = ocr.Recognize(input, settings);
    // Use results...
}
catch (Exception ex)
{
    Console.WriteLine($"Error: {ex.Message}");
}

步骤7:优化文档配置

  • 对于书籍或文章,请使用 DetectAreasMode.DOCUMENT 或尝试 DetektAreaModa.AUTO。
  • 提前处理图像(草,草)以获得最佳准确性
  • 用于大档案的集成过程
foreach (string file in Directory.GetFiles("./scans", "*.jpg"))
{
    input.Add(file);
}

步骤8:完整的例子

using Aspose.OCR;
using System;
using System.Collections.Generic;

class Program
{
    static void Main(string[] args)
    {
        try
        {
            OcrInput input = new OcrInput(InputType.SingleImage);
            input.Add("contract_page1.png");
            input.Add("agreement_page2.jpg");

            RecognitionSettings settings = new RecognitionSettings();
            settings.Language = Language.English;
            settings.DetectAreasMode = DetectAreasMode.DOCUMENT;

            AsposeOcr ocr = new AsposeOcr();
            List<RecognitionResult> results = ocr.Recognize(input, settings);

            foreach (RecognitionResult result in results)
            {
                Console.WriteLine(result.RecognitionText);
                result.Save("scanned_text.txt", SaveFormat.Text);
                result.Save("scanned_text.docx", SaveFormat.Docx);
                result.Save("scanned_text.pdf", SaveFormat.Pdf);
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine($"Error: {ex.Message}");
        }
    }
}

使用案例和应用程序

合同和协议数字化

快速数字化法律或商业文件搜索,存档和数字工作流。

图书和档案处理

将书页或历史记录转换为可搜索、可编辑的格式。

符合和数据提取

允许自动遵守检查、审计或从遗产文件中提取文本。

共同挑战与解决方案

挑战1:低质量扫描或破碎的文本

** 解决方案:** 使用预处理或改进图像,以获得更好的 OCR 准确性。

挑战2:多列或复杂配置

** 解决方案:** 调整 DetectAreasMode 并测试最佳配置处理。

挑战3:Batch数字化

** 解决方案:** 使用集合处理和资源管理用于大规模工作。

绩效考虑

  • 快速和可扩展的Batch过程
  • 使用优质源图像
  • 使用后使用 OCR 物品

最佳实践

  • 在自动化或存档之前始终验证提取的文本
  • 使用文件类型的正确识别设置
  • 备份原始扫描参考
  • 测试 OCR 结果在生产前的样品包

先进的场景

场景1:多语言文档提取

settings.Language = Language.French;

场景2:出口到JSON进行集成

foreach (RecognitionResult result in results)
{
    result.Save("scanned_text.json", SaveFormat.Json);
}

结论

Aspose.OCR Scan to Text for .NET 是将扫描图像和纸质文件转换为可用、可编辑的文本的最快方式,适合法律、学术或企业项目。

查看更多示例和技术细节 ASPOSE.OCR 为 .NET API 参考 .

 中文