OCR 工具

如何在 Python 中建立 OCR

發佈 2023年11月22日
分享:

世界充斥著大量的文字信息。 從印刷文件到手寫筆記,有大量的寶貴內容,如果能夠更方便地取得,將會變得極其有用。

這裡是光學文字識別的地方(光學字符識別)技術發揮作用。 想像一臺電腦能像人類一樣從圖片中「讀取」文字,這就是計算機視覺,它是計算機科學的一個分支,我們可以訓練電腦識別和辨認圖片中的不同主題。

在本教程中,我們將指導您使用以簡單和多功能性著稱的編程語言 Python 構建您自己的 OCR 系統的過程。 借助像 Tesseract 这样的庫,IronOCR以及 OpenCV,您很快就能發揮從文件影像中提取、操作和處理文本的潛力。

光學字符識別 (光學字符識別) 引擎的先決條件

在我們深入構建我們的OCR系統之前,您需要準備以下幾件事情:

  1. Python:確保您的電腦上已安裝 Python。 您可以從官方 Python 網站.

  2. 安裝 Tesseract OCR:Tesseract OCR 是由 Google 開發的開源 OCR 引擎。 這是我們在專案中將使用的強大工具。 您可以從下載 Tesseract 庫GitHub並閱讀有關 Tesseract OCR 安裝過程的資料。

  3. Python 庫:在這個專案中,我們將使用兩個重要的 Python 庫 pytesseractopencv 庫。 您可以在命令行提示符或終端中使用以下命令來安裝它們:
    :InstallCmd  pip install pytesseract opencv-python

如何在 Python 中建立 OCR:圖 1

建立 OCR 系統的步驟

您可以輕鬆使用 Python OCR 庫和簡單的 Python 腳本利用 Python 代碼構建 OCR。

步驟 1 匯入函式庫

首先,您需要匯入必要的庫:

import cv2 
import pytesseract
PYTHON

步驟 2 讀取並處理圖像

使用 OpenCV 加載圖像並進行預處理,以提高 OCR 的準確性:

# Load the image using OpenCV 
image = cv2.imread('sample_image.png') 
# Convert the image to grayscale 
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) 
# Apply thresholding or other preprocessing techniques if needed
PYTHON

第 3 步:使用 Tesseract 進行 OCR

現在是時候使用 Tesseract OCR 引擎對處理後的圖像進行 OCR 了:

# Use pytesseract to perform OCR on the grayscale image 
pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'
text = pytesseract.image_to_string(gray_image) 
PYTHON

步驟 4:顯示結果

如果您想查看原始圖像和提取的文本,您可以使用 OpenCV 來顯示它們:

# Display the original image 
cv2.imshow('Original Image', image) 
cv2.waitKey(0) 
# Display the extracted text
    print("Extracted Text:", text) 
cv2.waitKey(0) 
cv2.destroyAllWindows()
PYTHON

原始圖像

如何在 Python 中構建 OCR:圖 2

提取的文字

如何在 Python 中建立 OCR:圖 3

如您所見,結果太差了,因為我們需要訓練它。(我們訓練機器學習)在使用其執行OCR來提取包含表格的文本圖像之前。

IronOCR

在一個充斥著數據的世界中,能夠輕鬆地將印刷或手寫文本轉換為機器可讀內容是一種具革命性的能力。

輸入IronOCR- 一項先進技術,使開發人員能夠整合強大的光學字符識別(OCR)(光學字符識別)輕鬆將功能整合到他們的應用程式中。

無論您是在從掃描文件中提取數據、自動化數據輸入,還是增強可訪問性,IronOCR 提供了一個超越傳統文字識別界限的綜合解決方案。

在這次探索中,我們深入研究IronOCR的領域,揭示其多功能特性,並強調其在彌合物理和數位世界之間差距的潛力。

安裝 IronOCR

您可以透過執行以下命令,使用 NuGet 套件管理器主控台輕鬆安裝 IronOCR。

Install-Package IronOcr

IronOCR 也可以下載於官方 NuGet 網站.

使用 IronOCR 從圖像中提取文本

在本節中,我們將看到如何使用 IronOCR 輕鬆從圖像中提取文本。 以下是從圖像中提取文字的源代碼。

using IronOcr;
using System;
var ocr = new IronTesseract();
using (var input = new OcrInput())
{
    input.AddImage("r3.png");
    OcrResult result = ocr.Read(input);
    string text = result.Text;
    Console.WriteLine(result.Text);
}
using IronOcr;
using System;
var ocr = new IronTesseract();
using (var input = new OcrInput())
{
    input.AddImage("r3.png");
    OcrResult result = ocr.Read(input);
    string text = result.Text;
    Console.WriteLine(result.Text);
}
Imports IronOcr
Imports System
Private ocr = New IronTesseract()
Using input = New OcrInput()
	input.AddImage("r3.png")
	Dim result As OcrResult = ocr.Read(input)
	Dim text As String = result.Text
	Console.WriteLine(result.Text)
End Using
VB   C#

輸出

如何在Python中構建OCR:圖4

結論

在本教程中,我們探討了構建光學字符識別的過程(光學字符識別)在 Python 系統中,揭示了從圖像中輕鬆提取文字的能力。

通過利用像 Tesseract 和 OpenCV 這樣的函式庫,我們已經完成了關鍵步驟,從載入和預處理圖像到使用 Tesseract OCR 引擎進行文字提取。

我們還提到了潛在的挑戰,例如準確性限制,這些是像 IronOCR 這樣的高級解決方案旨在解決的問題。

無論您選擇 DIY 方法還是採用先進的工具,OCR 的世界都充滿了將圖像轉換為可操作文本的潛力,簡化數據輸入並提高可及性。 擁有這些新知識後,您準備展開一段無縫融合視覺與數位領域的旅程。

要開始使用IronOCR訪問以下連結. 要查看如何從圖像中提取文字的完整教程,請訪問這裡.

如果您今天想免費試用IronOCR,請務必選擇加入試用IronOCR 提供的產品,在商業環境中探索其所有用途和潛力,無需水印。 若要在 15 天試用結束後繼續使用,請購買一個許可證.

< 上一頁
如何將書寫掃描成文字(初學者教程)
下一個 >
如何在 C# 中掃描為可編輯文字

準備開始了嗎? 版本: 2024.11 剛剛發布

免費 NuGet 下載 總下載次數: 2,698,613 查看許可證 >