OCR 工具

如何在 Python 中建立 OCR

發佈 2023年11月22日
分享:

世界上充滿了大量的文字資訊。從印刷文件到手寫筆記,有非常多的有價值內容,如果能變得稍微更易於取得,就會非常有用。

這就是光學字符識別(OCR)的作用所在 (光學字符識別) 技術開始發揮作用。想像一台電腦能夠像人類一樣從圖像中「讀取」文字,這就是電腦視覺,它是計算機科學的一個領域,我們可以訓練電腦辨識和識別圖像中的不同主體。

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

OCR 引擎的前提條件 (光學字元識別)

在我們深入構建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 脚本轻松构建 OCR 系统。

步驟 1 匯入庫

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

import cv2 
import pytesseract
PYTHON

步驟二 讀取並處理圖片

使用 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

第三步:使用 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

第四步:顯示結果

如果你想要視覺化原始圖像和提取的文本,你可以使用 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

結論

在本教程中,我們探討了構建光學字符識別 (OCR) 的過程 (光學字符識別) 在Python中的系统,揭开了从图像中提取文本的能力,轻松自如。

通过利用Tesseract和OpenCV等库,我们已经通过了从加载和预处理图像到使用Tesseract OCR引擎进行文本提取的基本步骤。

我们还提到了潜在的挑战,例如准确性限制,高级解决方案比如IronOCR旨在解决这些问题。

无论您选择DIY路线还是采用复杂的工具,OCR的世界都以将图像转换为可操作文本的承诺召唤着您,简化数据输入并增强可访问性。凭借这新的知识,您已经准备好开始一段将视觉和数字领域无缝融合的旅程。

要开始 IronOCR 訪問以下 連結. 要查看有關如何從圖像中提取文本的完整教程,請訪問 這裡如果您今天想免費試用 IronOCR,請務必選擇 試用 由IronOCR提供,探索其在商業環境中的所有用途和潛力,且無水印。若要在15天試用期結束後繼續使用,只需購買一個 許可證.

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

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

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