OpenCV を用いたテキスト検知(Text Detection)を行う. テキスト検知は,画像中のテキストの場所を検知するもの.
OpenCV のサンプルプログラムの dnn にある EAST の Python のプログラム)を実行する. 使用するソースコード等の利用条件等は利用者で確認すること。
EAST のテキスト検知モデルの URL:
https://github.com/argman/EAST
学習済みモデルのダウンロード
URL: https://www.dropbox.com/s/r2ingd0l3zt8hxs/frozen_east_text_detection.tar.gz?dl=1
onnx 形式のテキスト検知モデルのダウンロード
URL: https://drive.google.com/drive/folders/1cTbQ3nuZG-EKWak6emD_s8_hHXWz7lAr?usp=sharing
インストールでの注意点
Windows で,ユーザ名が日本語のとき,あとでトラブルが発生するかもしれない. トラブルの回避策として, Python をシステム管理者の領域にインストール(パソコンの全ユーザの共有領域)する手順をここで説明する.
TensorFlow を使う予定がある場合は,https://pypi.org/project/tensorflow-gpu/#filesで,必要な Python のバージョンを確認しておく. 2022/7 時点では,TensorFlow バージョン 2.9 が動くのは,Python 3.10 または Python 3.9 または Python 3.8 または Python 3.7 (https://pypi.org/project/tensorflow/2.9/#files)
Windows での Python 3.10 のインストール(あとのトラブルが起きにくいような手順を定めている)
ページの上の方にある「Downloads」をクリック. 「Downloads」の下にメニューが出るので,その中の「Windows」をクリック
ここでは,Python 3.10.x (x は数字)を探して,選ぶ.
以下,Python 3.10.5 を選んだとして説明を続ける.他のバージョンでも以下の手順はほぼ同じである.
TensorFlow を使う予定がある場合は,https://pypi.org/project/tensorflow-gpu/#filesで,必要な Python のバージョンを確認しておく. 2022/7 時点では,TensorFlow バージョン 2.9 が動くのは,Python 3.10 または Python 3.9 または Python 3.8 または Python 3.7 (https://pypi.org/project/tensorflow/2.9/#files)
Windows の 64ビット版のインストーラをダウンロードしたいので、「Windows Installer (64-bit)」を選ぶ
※ すでに Python ランチャーをインストール済みのときは, 「Install launcher for all users (recommended)」がチェックできないようになっている場合がある.そのときは,チェックせずに進む.
「Install for all users」を選ぶ理由.
ユーザ名が日本語のときのトラブルを防ぐため.
表示されない場合は問題ない.そのまま続行.
py とpip にパスが通っていることの確認である.
where py where pip
where py では「C:\Windows\py.exe」 が表示され, where pip では「C:\Program Files\Python310\Scripts\pip.exe」 が表示されることを確認. (「310」のところは使用する Python のバージョンに読み替えること).
表示されないときは, システムの環境変数Pathに,C:\Program Files\Python310 と C:\Program Files\Python310\Scripts が追加済みであることを確認(「310」のところは使用する Python のバージョンに読み替えること).無ければ追加し,再度コマンドプロンプトを開いて,再度「where py」,「where pip」を実行して確認.
それでもうまく行かない場合は,いろいろ原因が考えられる.対処としては,Python のアンインストールを行う.過去,アンインストールがうまく行かなかった可能性を疑う(Python の Scripts の中のファイルで,アンインストール操作により削除されるべきファイルが残っている可能性があるなど)
python -m pip install -U opencv-python opencv-contrib-python opencv-contrib-python
端末で,次のコマンドを実行
sudo apt -y install libopencv-dev libopencv-core-dev python3-opencv libopencv-contrib-dev opencv-data
OpenCV のサンプルプログラムの dnn にある EAST の Python のプログラム)を実行する. 使用するソースコード等の利用条件等は利用者で確認すること。
次の URL から .pb 形式ファイルをダウンロードする. ダウンロードしたファイルを,c:\opencv\samples\dnn に置く.
URL: https://www.dropbox.com/s/r2ingd0l3zt8hxs/frozen_east_text_detection.tar.gz?dl=1
次の URL から CRNN_VGG_BiLSTM_CTC.onnx をダウンロードする.
URL: https://drive.google.com/drive/folders/1cTbQ3nuZG-EKWak6emD_s8_hHXWz7lAr?usp=sharing
そして,ダウンロードしたファイルのファイル名を,crnn.onnx に変更し, c:\opencv\samples\dnn に置く.
端末で,次のコマンドを実行. 「73.png」のところには,画像ファイル名を指定すること.
cd c:\opencv\samples\dnn python text_detection.py --model frozen_east_text_detection.pb --input 73.png
次の URL から .pb 形式ファイルをダウンロードする. ダウンロードしたファイルを,/usr/local/opencv/samples/dnn に置く.
URL: https://www.dropbox.com/s/r2ingd0l3zt8hxs/frozen_east_text_detection.tar.gz?dl=1
次の URL から CRNN_VGG_BiLSTM_CTC.onnx をダウンロードする.
URL: https://drive.google.com/drive/folders/1cTbQ3nuZG-EKWak6emD_s8_hHXWz7lAr?usp=sharing
そして,ダウンロードしたファイルのファイル名を,crnn.onnx に変更し, /usr/local/opencv/samples/dnn に置く.
端末で,次のコマンドを実行. 「73.png」のところには,画像ファイル名を指定すること.
cd /usr/local/opencv/samples/dnn python3 text_detection.py --model frozen_east_text_detection.pb --input 73.png