C# 中的 OCR 图像到文本和拼写更正

我们可以对图像或扫描的文档执行 OCR,并使用 C# 以编程方式提取文本数据。然后,我们可以运行拼写检查器来纠正已识别文本中的拼写错误。在本文中,我们将学习如何在 C# 中执行 OCR 图像到文本和拼写校正。

本文将涵盖以下主题:

  1. OCR 图像到文本和拼写校正 C# API
  2. OCR 图像转文本并获取拼写错误
  3. 使用拼写校正将图像转换为文本
  4. 使用更正的拼写保存识别的文本
  5. 拼写检查自定义文本

OCR 图像到文本和拼写校正 C# API

我们将使用 Aspose.OCR for .NET API 对图像、文本提取和拼写校正执行 OCR。它可以识别扫描的图像、智能手机照片、屏幕截图、图像区域和扫描的 PDF。它以最流行的文档和数据交换格式返回可识别的文本结果。该 API 还允许将图像转换为文本并通过扫描创建可搜索的 PDF。此外,它允许自动更正已识别文本中的拼写错误。

AsposeOcr 类是 Aspose OCR 库的主要 API。它提供了各种方法来执行 OCR 操作。此类的 RecognizeImage() 方法可识别 支持的格式 图像上的文本。 API 的 CorrectSpelling() 方法将文本中的拼写错误的单词替换为正确的单词。 RecognitionResult 类表示图像识别的结果。此类的 Save(string, SaveFormat, bool, SpellCheckLanguage, string) 方法将文档保存为纯文本 PDFMicrosoft Word Document。所有支持的拼写检查语言都在 SpellCheckLanguage 枚举中定义。

下载 API 的 DLL 或使用 NuGet 安装它。

PM> Install-Package Aspose.OCR

OCR 图像到文本并在 C# 中获取拼写错误

我们可以按照以下步骤对图像执行 OCR 并获取已识别文本中的拼写错误列表:

  1. 首先,创建 AsposeOcr 类的实例。
  2. 接下来,初始化 RecognitionSettings 类的对象。
  3. 然后,通过调用 RecognizeImage() 方法获取 RecognitionResult。它将图像路径和 RecognitionSettings 对象作为参数。
  4. 之后,调用 GetSpellCheckErrorList() 方法以获取包含建议的拼写错误单词列表。
  5. 最后,遍历 SpellCheckError 列表并显示结果。

以下示例代码显示了如何从 C# 中识别的文本中获取拼写错误列表。

// 此代码示例演示如何从识别的文本中获取拼写错误的单词列表。
// 要识别的图像路径
string imagePath = @"C:\Files\OCR\sample.png";

// 创建 OCR API
AsposeOcr api = new AsposeOcr();

// 初始化识别设置
RecognitionSettings settings = new RecognitionSettings();

// 识别图像           
RecognitionResult result = api.RecognizeImage(imagePath, settings);

// 获取带有建议的拼写错误单词列表
List<SpellCheckError> errorsList = result.GetSpellCheckErrorList(SpellCheckLanguage.Eng);

foreach (var word in errorsList)
{
    Console.WriteLine($"Misspelled Word - {word.Word}");
    foreach (var suggest in word.SuggestedWords)
    {
        Console.WriteLine($"Suggested word - {suggest.Word}");
    }

    Console.WriteLine();
}
OCR 图像到文本并在 C# 中获取拼写错误

获取 C# 中的拼写错误列表

在 C# 中使用拼写更正将图像转换为文本

我们可以按照以下步骤将图像转换为文本并自动更正拼写错误:

  1. 首先,创建 AsposeOcr 类的实例。
  2. 接下来,初始化 RecognitionSettings 类的对象。
  3. 然后,通过调用 RecognizeImage() 方法获取 RecognitionResult。它将图像路径和 RecognitionSettings 对象作为参数。
  4. 之后,调用 GetSpellCheckCorrectedText() 方法来获取带有拼写纠正的文本。
  5. 最后,展示结果。

以下示例代码显示了如何从 C# 中识别的文本中自动更正拼写错误。

// 此代码示例演示如何自动更正已识别文本中的拼写错误。
// 要识别的图像路径
string imagePath = @"C:\Files\OCR\sample.png";

// 创建 OCR API
AsposeOcr api = new AsposeOcr();

// 初始化识别设置
RecognitionSettings settings = new RecognitionSettings();

// 从图像中识别文本    
RecognitionResult result = api.RecognizeImage(imagePath, new RecognitionSettings());

// 得到更正的结果
string correctedResult = result.GetSpellCheckCorrectedText(SpellCheckLanguage.Eng);

// 显示结果
Console.WriteLine(correctedResult);
在 C# 中使用拼写更正将图像转换为文本

在 C# 中使用拼写更正将图像转换为文本

在 C# 中使用更正的拼写保存已识别的文本

我们可以按照以下步骤在拼写校正后从图像中保存识别的文本:

  1. 首先,创建 AsposeOcr 类的实例。
  2. 接下来,初始化 RecognitionSettings 类的对象。
  3. 之后,通过调用 RecognizeImage() 方法获取 RecognitionResult。它将图像路径和 RecognitionSettings 对象作为参数。
  4. 最后调用 Save(string, SaveFormat, bool, SpellCheckLanguage) 方法保存文本。它将 applySpellingCorrection 布尔值设为 true。

以下示例代码显示了如何在 C# 中使用拼写更正保存文本。

// 此代码示例演示如何使用拼写更正保存已识别的文本。
// 要识别的图像路径
string imagePath = @"C:\Files\OCR\sample.png";
string resultPath = @"C:\Files\OCR\MyResult.txt";

// 创建 OCR API
AsposeOcr api = new AsposeOcr();

// 初始化识别设置
RecognitionSettings settings = new RecognitionSettings();
         
// 从图像中识别文本 
RecognitionResult result = api.RecognizeImage(imagePath, new RecognitionSettings());

// 保存更正的文本
result.Save(resultPath, SaveFormat.Text, true, SpellCheckLanguage.Eng);

C# 中的拼写检查文本

我们还可以按照以下步骤对自定义文本运行拼写检查:

  1. 首先,创建 AsposeOcr 类的实例。
  2. 接下来,调用 CorrectSpelling() 方法。它将要更正的文本和 SpellCheckLanguage 作为参数。
  3. 最后,展示结果。

以下示例代码显示了如何在 C# 中对自定义文本进行拼写检查。

// 此代码示例演示如何对自定义文本字符串运行拼写检查。
// 拼写检查的文本
string textToCorrect = "This is sample text wth errrors";

// 创建 OCR API
AsposeOcr api = new AsposeOcr();

// 运行拼写检查以纠正错误
string correctedText = api.CorrectSpelling(textToCorrect, SpellCheckLanguage.Eng);

// 显示结果
Console.WriteLine(correctedText);
This is sample text with errors

获得免费评估许可证

您可以获得免费的临时许可证 试用 Aspose.OCR for .NET,没有评估限制。

结论

在本文中,我们学习了如何:

  • 在 C# 中执行 OCR 并识别图像上的文本;
  • 获取拼写错误的单词列表以及正确的单词建议;
  • 自动更正拼写错误;
  • 以编程方式保存更正的文本。

此外,您可以使用 文档 了解更多关于 Aspose.OCR for .NET API 的信息。如有任何歧义,请随时在我们的 论坛 上与我们联系。

也可以看看