【概要】 EasyOCR は,PythonとPyTorchを使用した多言語対応の文字認識ソフトウェアである.テキスト検出にはCRAFTが使用されている.Windows上で動作させるためには,まず必要なツールやライブラリをインストールする必要がある.それらは,Git,Python,Visual Studioのビルドツール,NVIDIAドライバ,NVIDIA CUDAツールキット,NVIDIA cuDNN,そしてPyTorchである.EasyOCRのインストールは,公式のGitHubからクローンしたソースコードを利用する.動作確認では,easyocrコマンドを使用して文字認識を実行する.また,PythonプログラムとしてEasyOCRを利用する方法も紹介しており,具体的なプログラムコードを示している.
学習用のソースコードも公開されている.
【目次】
【関連する外部ページ】
【インストールの判断】 Build Tools for Visual Studio は,開発ツールセットである. Visual Studio は統合開発環境であり,いくつかの種類があり,Build Tools for Visual Studioの機能を含むか連携して使用するものである.インストールは以下の基準で判断してください:
Visual Studio 2022 をインストールする際に,「C++ によるデスクトップ開発」を選択することで, Build Tools for Visual Studio 2022 の機能も一緒にインストールされる.
不明な点がある場合は,Visual Studio 全体をインストール を行う方が良い.
コマンドプロンプトを管理者として実行: 別ページ »で説明
次のコマンドを実行
次のコマンドは,Build Tools for Visual Studio 2022と VC2015 再配布可能パッケージをインストールするものである.
起動方法: スタートメニューの「Visual Studio Installer」を選ぶ.
コマンドプロンプトを管理者として実行: 別ページ »で説明
次のコマンドを実行
次のコマンドは,Visual Studio Community 2022と VC2015 再配布可能パッケージをインストールするものである.
起動方法: スタートメニューの「Visual Studio Installer」を選ぶ.
Pythonは,プログラミング言語の1つ. Gitは,分散型のバージョン管理システム.
【手順】
コマンドプロンプトを管理者として実行: 別ページ »で説明
次のコマンドを実行
次のコマンドは,Python ランチャーとPython 3.10とGitをインストールし,Gitにパスを通すものである.
次のコマンドでインストールされるGitは 「git for Windows」と呼ばれるものであり, Git,MinGW などから構成されている.
winget install --scope machine Python.Launcher winget install --scope machine Python.Python.3.10 winget install --scope machine Git.Git powershell -command "$oldpath = [System.Environment]::GetEnvironmentVariable(\"Path\", \"Machine\"); $oldpath += \";c:\Program Files\Git\cmd\"; [System.Environment]::SetEnvironmentVariable(\"Path\", $oldpath, \"Machine\")"
【関連する外部ページ】
【サイト内の関連ページ】
【関連項目】 Python, Git バージョン管理システム, Git の利用
【サイト内の関連ページ】 NVIDIA グラフィックスボードを搭載しているパソコンの場合には, NVIDIA ドライバ, NVIDIA CUDA ツールキット, NVIDIA cuDNN のインストールを行う.
【関連する外部ページ】
コマンドプロンプトを管理者として実行: 別ページ »で説明
次のコマンドを実行することにより, PyTorch 2.3 (NVIDIA CUDA 11.8 用)がインストールされる. 但し,Anaconda3を使いたい場合には別手順になる.
事前に NVIDIA CUDA のバージョンを確認しておくこと(ここでは,NVIDIA CUDA ツールキット 11.8 が前もってインストール済みであるとする).
PyTorch で,GPU が動作している場合には,「torch.cuda.is_available()」により,True が表示される.
python -m pip install -U --ignore-installed pip python -m pip uninstall -y torch torchvision torchaudio torchtext xformers python -m pip install -U torch torchvision torchaudio numpy --index-url https://download.pytorch.org/whl/cu118 python -c "import torch; print(torch.__version__, torch.cuda.is_available())"
Anaconda3を使いたい場合には, Anaconda プロンプト (Anaconda Prompt) を管理者として実行し, 次のコマンドを実行する. (PyTorch と NVIDIA CUDA との連携がうまくいかない可能性があるため,Anaconda3を使わないことも検討して欲しい).
conda install -y pytorch torchvision torchaudio pytorch-cuda=11.8 cudnn -c pytorch -c nvidia py -c "import torch; print(torch.__version__, torch.cuda.is_available())"
【サイト内の関連ページ】
【関連する外部ページ】
コマンドプロンプトを管理者として実行: 別ページ »で説明
試してみたが,「pip install easyocr」でインストールするよりも,下の手順の方がトラブルが少なそう.
cd /d c:%HOMEPATH% rmdir /s /q EasyOCR git clone --recursive https://github.com/JaidedAI/EasyOCR cd EasyOCR pip install -e .
動作確認を行う.
次のコマンドを実行.easyocr コマンドを使用.
cd /d c:%HOMEPATH% cd EasyOCR cd examples easyocr -l ja en -f japanese.jpg --detail=1 --gpu=True
これは,次の画像についての文字認識結果である.
次のコマンドを実行.easyocr コマンドを使用.
cd /d c:%HOMEPATH% cd EasyOCR cd examples easyocr -l en -f easyocr_framework.jpeg --detail=1 --gpu=True
これは,次の画像についての文字認識結果である.
cd /d c:%HOMEPATH%\EasyOCR notepad a.py
このプログラムは, 公式ページの GitHub のページ https://github.com/JaidedAI/EasyOCR で公開されていたものを変更して使用している.
import easyocr reader = easyocr.Reader(lang_list = ['ja','en'], gpu = True) import tkinter as tk from tkinter import filedialog from PIL import Image root = tk.Tk() root.withdraw() fpaths = filedialog.askopenfilenames() for fpath in root.tk.splitlist(fpaths): print("file name: ", fpath) Image.open(fpath).show() result = reader.readtext(fpath) for i in result: print(i)
Python プログラムの実行
【サイト内の関連ページ】 Python のまとめ: 別ページ »
プログラムを a.pyのようなファイル名で保存したので, 「python a.py」のようなコマンドで行う.
python a.py
ファイル選択画面が出るので,画像ファイルを選択する.ファイルは複数選択可能である.
画像が表示される.画像の表示を確認したらその表示を閉じる. 閉じたあとに,文字認識結果が表示される.