OCRツール

PythonでOCRを構築する方法

更新済み 11月 22, 2023
共有:

世界は膨大な量のテキスト情報に溢れています。 印刷された書類から手書きのメモまで、もう少しアクセスしやすければ非常に有用な貴重なコンテンツが豊富にあります。

こちらは光学文字認識(OCR)が行われる場所です (OCR (光学式文字認識)) 技術が関与する。 コンピュータが画像からテキストを人間のように「読む」ことを想像してください。これはまさにコンピュータビジョンです。コンピュータビジョンは、画像内の異なる対象を認識し識別するようにコンピュータを訓練できるコンピュータサイエンスの一分野を表します。

このチュートリアルでは、シンプルさと多様性で知られるプログラミング言語Pythonを使用して、自分のOCRシステムを構築するプロセスをガイドします。 Tesseractのようなライブラリの助けを借りて、 IronOCROpenCVと一緒に、ドキュメント画像からテキストを抽出、操作、および処理する可能性をすぐに解き放つことができるようになります。

OCRエンジン(光学式文字認識)の前提条件

私たちのOCRシステムを構築する詳細に入る前に、いくつか必要なものがあります:

  1. Python: コンピュータにPythonがインストールされていることを確認してください。 こちらからダウンロードできます: 公式Pythonウェブサイト.

  2. Tesseract OCRのインストール: Tesseract OCRは、Googleによって開発されたオープンソースのOCRエンジンです。 それは私たちのプロジェクトで使用する強力なツールです。 Tesseractライブラリをダウンロードできます: GitHub(ギットハブ) Tesseract OCRのインストールプロセスについて読んでください。

  3. Pythonライブラリ: このプロジェクトでは、重要な2つのPythonライブラリである pytesseractopencv ライブラリを使用します。 以下のコマンドをコマンドラインプロンプトまたはターミナルに入力してインストールできます:
    :InstallCmd  pip install pytesseract opencv-python

PythonでOCRを構築する方法:図1

OCRシステムを構築する手順

Python OCRライブラリとシンプルな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:OCRにTesseractを使用する

次は、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は、開発者がC#およびVB.Netアプリケーションから画像やPDFドキュメントを読み取り、テキストを抽出することを可能にします。IronOCRは、製品の高いパフォーマンスと正確性で知られており、Microsoft OCRとTesseract OCRの技術を組み合わせています。これにより、複雑なレイアウトや出版物、手書きのテキストに対しても高い認識率を誇ります。

  • サポートされるファイル形式: PNG, JPG, GIF, TIFF, BMP, PDF
  • ユニークな機能: 複数言語のテキスト認識、回転・歪みの補正、ノイズ除去
  • 導入が簡単: .NETフレームワークや.NET Coreプロジェクトに簡単に統合可能
  • ライセンスオプション: Lite License, Plus License, Professional License, Unlimited License

IronOCRの利点

  1. 高い認識精度: IronOCRは最新のOCR技術を利用し、正確なテキスト抽出を実現します。
  2. 迅速な処理: 高速な処理速度で大量のドキュメントを効率的に処理できます。
  3. シンプルな統合: APIがシンプルで使いやすいため、開発者は短時間で機能を実装できます。

IronOCRを活用することで、あなたのアプリケーションは自動化されたデータ抽出機能を備え、業務効率を大幅に向上させることができます。

データがあふれる世界において、印刷されたテキストや手書きのテキストを機械可読なコンテンツに容易に変換する能力は、革新的な力です。

入力 IronOCR - 開発者が強力な光学文字認識(OCR)を統合できる最先端技術 (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

結論

このチュートリアルでは、光学文字認識(Optical Character Recognition、OCR)を構築する過程を探究しました (OCR (光学式文字認識)) Pythonを使用したシステムでは、画像からテキストを驚異的な簡単さで抽出する能力を明らかにします。

TesseractやOpenCVのようなライブラリを活用することにより、画像の読み込みと前処理からTesseract OCRエンジンを使用したテキスト抽出までの重要な手順を進めてきました。

精度の限界などの潜在的な課題にも触れましたが、これらの課題はIronOCRのような高度なソリューションで解決することを目指しています。

DIYアプローチを選ぶか、洗練されたツールを採用するかにかかわらず、OCRの世界は画像を実用的なテキストに変換し、データ入力を効率化し、アクセシビリティを強化する可能性を秘めています。 この新たな知識を持って、あなたは視覚とデジタルの領域をシームレスに融合させる旅に出る準備が整いました。

始めるには IronOCR 以下のリンクをご覧ください リンク. 画像からテキストを抽出する方法に関する全チュートリアルを確認するには、こちらをご覧ください これ.

IronOCRを無料で試してみたい場合は、必ず トライアル 商業環境での使用と潜在力を探求するために、ウォーターマークなしでIronOCRが提供するすべての機能をお試しください。 15日間が終了した後も引き続き使用するには、シンプルに购买 ライセンス.

< 以前
文字をテキストにスキャンする方法(初心者向けチュートリアル)
次へ >
C#で編集可能なテキストにスキャンする方法

準備はできましたか? バージョン: 2024.9 新発売

無料のNuGetダウンロード 総ダウンロード数: 2,290,361 View Licenses >