C# 中的 OCR 圖像到文本和拼寫校正

我們可以對圖像或掃描文檔執行 OCR,並使用 C# 以編程方式提取文本數據。然後我們可以運行拼寫檢查器來糾正已識別文本中的拼寫錯誤。在本文中,我們將學習如何在 C# 中執行 OCR 圖像到文本和拼寫校正。

本文應涵蓋以下主題:

  1. OCR Image to Text and Spelling Correction 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 文檔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 布爾值設為真。

以下示例代碼顯示瞭如何在 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 的更多信息。如有任何疑問,請隨時在我們的 論壇 上與我們聯繫。

也可以看看