今日は、スクリーンショットしたjpgファイルから、数字を読み取るpythonプログラムを作成してみた。NISAの利益を出しておこうかと思った。
まずは、ChatHubにて問い合わせ。
「jpgからテキストを取得するpythonコードを教えてください」
Chat-GPTとClaude3での回答を得た。
同じような回答であったが、Claude3の方がメソッドと例外処理を使ったきれいなコードだった。
なのでこちらで実装することにした。が、ここで問題が発生。
必要とするライブラリをPCにインストールできない。pipでインストールできない。
たぶん権限等の問題。このPCではpythonを動かしていなかったため、pipがうまく動かない。pythonもいつインストールしたかわからなかったため、pythonそのものをインストールし直した。やっとpipが動くようになった。一安心。
その後、必要なライブラリのインストールも成功。Claude3は、必要なライブラリをインストールする必要があることも教えてくれる。エラー発生時にはその相談相手にもなってくれる。
とりあえず最低限の実装は完了。何とか必要な日付と数字は出せていることは確認した。あとは、これをベースに、必要なものを特定し出力できるようにしていく予定。
利用したライブラリ
・pytesseract・・・Tesseract OCRをpythonで利用するためのライブラリ
・pillow・・・画像処理用ライブラリ(画僧ファイルの読み込みで利用)
PCにインストールしたアプリ
・Tesseract OCR
・jpn.traineddata・・・日本語出力用(今回は利用していない)
開発環境
・VSCode
あとがき
以前も、画像ファイルからテキストを読み込むものを作成しているが、別の方法で行った気がする。解析レベルを指定した気がする。過去ソース捜索中のため、後日見つけて比較してみたい。
日本語出力も試してみたが、日本語は出るようになったが、数字まで全角(しかも外字)で出力されてしまうようになってしまったので、日本語利用は見送ることにした。
追記:
前に作ったプログラムでは、「pyocr」もさらに絡めていた。pyocrはその名の通り、py+OCRとなる。
今回の用途であれば、ここまでは必要ない気もする。ただ、数コードを追加するだけなので、適用するのにたいしたコストはかからない。とりあえず、pyocrなしでやれるかどうか判断し、ダメそうならpyocrを組み込んでみたい。
コメント