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

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

本文應涵蓋以下主題:

  1. 具有拼寫校正功能的 Java 圖像到文本轉換器
  2. OCR 圖像到文本並獲得拼寫錯誤
  3. 使用拼寫校正將圖像轉換為文本
  4. 將圖像保存為拼寫更正的文本
  5. 拼寫檢查自定義文本

具有拼寫校正功能的 Java 圖像到文本轉換器

要將圖像轉換為帶有拼寫更正的文本,我們將使用 Aspose.OCR for Java API。它允許對掃描圖像、智能手機照片、屏幕截圖、圖像區域和掃描的 PDF 執行 OCR。它使我們能夠將識別的文本結果保存為流行的文檔格式。 API 還允許將圖像轉換為文本並自動更正已識別文本中的拼寫錯誤。

AsposeOCR 類是執行 OCR 操作的主要 API。此類的 RecognizePage(String fullPath, RecognitionSettings settings) 方法可識別 支持的格式 圖像上的文本。 API 的 CorrectSpelling(String text, SpellCheckLanguage language) 方法用文本中的正確單詞替換拼寫錯誤的單詞。 RecognitionResult類表示圖像識別的結果。此類的 saveSpellCheckCorrectedText(string, Format, SpellCheckLanguage, string) 方法將文檔保存為 純文本PDFMicrosoft Word 文檔SpellCheckLanguage 枚舉中定義了所有支持的拼寫檢查語言。

下載 API 的 JAR 或在基於 Maven 的 Java 應用程序中添加以下 pom.xml 配置。

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-ocr</artifactId>
    <version>22.6</version>
</dependency>

OCR 圖像到文本並在 Java 中消除拼寫錯誤

我們可以按照以下步驟對圖像進行 OCR,並得到識別文本中的拼寫錯誤列表:

  1. 首先,創建一個 AsposeOCR 類的實例。
  2. 接下來,初始化 RecognitionSettings 類的一個對象。
  3. 然後,通過調用 RecognizePage() 方法獲取 RecognitionResult。它以圖像路徑和 RecognitionSettings 對像作為參數。
  4. 之後,調用 getSpellCheckErrorList() 方法來獲取包含建議的拼錯單詞列表。
  5. 最後,遍歷 SpellCheckError 列表並顯示結果。

以下示例代碼顯示瞭如何從 Java 中識別的文本中獲取拼寫錯誤列表。

// 此代碼示例演示如何從已識別的文本中獲取拼寫錯誤列表
String imagePath = "C:\\Files\\sample.jpg";

// 創建 OCR API
AsposeOCR api = new AsposeOCR();

// 初始化識別設置
RecognitionSettings settings = new RecognitionSettings();

// 識別圖像           
RecognitionResult result = api.RecognizePage(imagePath, settings);

// 獲取拼寫錯誤的單詞列表和建議
List<SpellCheckError> errorsList = result.getSpellCheckErrorList(SpellCheckLanguage.Eng);

for (SpellCheckError error : errorsList)
{
    // 秀字
    System.out.println("Misspelled Word - " + error.word);
  
    // 顯示建議詞
    for(SuggestedWord suggest : error.suggestedWords)
    {
      System.out.println("Suggested word - " + suggest.word);
    }

    System.out.println();
}
OCR 圖像到文本並在 Java 中消除拼寫錯誤

獲取 Java 中的拼寫錯誤列表

在 Java 中使用拼寫校正將圖像轉換為文本

我們可以按照以下步驟將圖像轉換為文本並自動更正拼寫錯誤:

  1. 首先,創建一個 AsposeOCR 類的實例。
  2. 接下來,初始化 RecognitionSettings 類的一個對象。
  3. 然後,通過調用 RecognizePage() 方法獲取 RecognitionResult。它以圖像路徑和 RecognitionSettings 對像作為參數。
  4. 之後,調用 getSpellCheckCorrectedText() 方法獲取帶有拼寫更正的文本。
  5. 最後,展示一下結果。

以下示例代碼顯示瞭如何自動更正 Java 中已識別文本的拼寫錯誤。

// 此代碼示例演示如何自動更正已識別文本的拼寫錯誤。
// 要識別的圖像路徑
String imagePath = "C:\\Files\\sample.jpg";

// 創建 OCR API
AsposeOCR api = new AsposeOCR();

// 初始化識別設置
RecognitionSettings settings = new RecognitionSettings();

// 從圖像中識別文本    
RecognitionResult result = api.RecognizePage(imagePath, new RecognitionSettings());

// 得到修正結果
String correctedResult = result.getSpellCheckCorrectedText(SpellCheckLanguage.Eng);

// 顯示結果
System.out.println(correctedResult);
在 Java 中使用拼寫校正將圖像轉換為文本

在 Java 中使用拼寫校正將圖像轉換為文本

在 Java 中將圖像保存為拼寫更正的文本

我們可以按照以下步驟保存拼寫校正後識別出的圖像文本:

  1. 首先,創建一個 AsposeOCR 類的實例。
  2. 接下來,初始化 RecognitionSettings 類的一個對象。
  3. 之後,通過調用 RecognizePage() 方法獲取 RecognitionResult。它以圖像路徑和 RecognitionSettings 對像作為參數。
  4. 最後,調用 saveSpellCheckCorrectedText() 方法保存文本。

以下示例代碼顯示瞭如何在 Java 中保存帶拼寫更正的文本。

// 此代碼示例演示如何使用拼寫更正保存已識別的文本。
// 要識別的圖像路徑
String imagePath = "C:\\Files\\sample.jpg";
String resultPath = "C:\\Files\\MyResult.txt";

// 創建 OCR API
AsposeOCR api = new AsposeOCR();

// 初始化識別設置
RecognitionSettings settings = new RecognitionSettings();

// 從圖像中識別文本 
RecognitionResult result = api.RecognizePage(imagePath, new RecognitionSettings());

// 保存更正後的文本
result.saveSpellCheckCorrectedText(resultPath, Format.Text, SpellCheckLanguage.Eng);

Java 中的拼寫檢查文本

我們還可以按照以下步驟對自定義文本運行拼寫檢查:

  1. 首先,創建一個 AsposeOCR 類的實例。
  2. 接下來,調用 CorrectSpelling() 方法。它以要更正的文本和 SpellCheckLanguage 作為參數。
  3. 最後,展示一下結果。

以下示例代碼顯示瞭如何在 Java 中對自定義文本進行拼寫檢查。

// 此代碼示例演示如何對自定義文本字符串運行拼寫檢查。
// 拼寫檢查的文本
String textToCorrect = "This is sample text wth errrors";

// 創建 OCR API
AsposeOCR api = new AsposeOCR();

// 運行拼寫檢查以更正錯誤
String correctedText = api.CorrectSpelling(textToCorrect, SpellCheckLanguage.Eng);

// 顯示結果
System.out.println(correctedText);
This is sample text with errors

獲得免費評估許可證

您可以獲得免費的臨時許可證 試用 Aspose.OCR for Java,而沒有評估限制。

結論

在本文中,我們學習瞭如何:

  • 執行 OCR 並識別圖像上的文本;
  • 將圖像轉換為文本;
  • 獲取拼寫錯誤的單詞列表以及正確的單詞建議;
  • 自動更正拼寫錯誤;
  • 使用 Java 保存更正後的文本。

除了使用拼寫更正將圖像轉換為文本外,您還可以使用 文檔 了解有關 Aspose.OCR for Java API 的更多信息。如有任何疑問,請隨時通過我們的免費支持論壇與我們聯繫。

也可以看看