Google Colabを用いたNDLOCRアプリの実行(Google Driveを用いた画像の入力と結果の保存)
概要
前回、Google Cloud PlatformのCompute Engineを用いたNDLOCRアプリの実行方法を共有しました。
ただし、上記の方法は手続きが一部面倒で、かつ費用がかかる方法です。本番環境で使用するには適した方法ですが、小規模に、または試験的に使用するにはハードルが高い方法でした。
この課題に対して、 @blue0620 さんがGoogle Colabを用いたNDLOCRアプリの実行方法を作成されました。
上記のノートブックを使用することにより、簡単に(「ランタイム」>「すべてのセルを実行」からワンクリックで)、かつ無料でOCRを実行することができます。
今回は、このノートブックを参考にして、Google Driveを用いた画像の入力と結果の保存までの手続きを含むGoogle Colabの使用方法をまとめましたので紹介します。
ノートブック
今回作成したGoogle Colabのノートブックには以下からアクセスいただけます。
Googleドライブ上に入力画像のフォルダを用意するだけで、OCR処理を実行することができます。
基本的な操作方法は、上記のノートブック内の説明をご確認ください。以下、実行例を紹介します。
実行方法
入力フォルダの準備
まず、Google Drive上に画像ファイルを格納したフォルダを作成します。今回は、以下のように、マイドライブに「ndl_ocr > input」というフォルダを作成して、その直下に画像ファイル「image_1.jpg」とフォルダ「dir_1」を作成し、フォルダ「dir1」の中に画像ファイル「image_2.jpeg」を格納しました。
ツリーで見ると、以下のような形です。
今回作成したプログラムでは、指定した入力フォルダに含まれる画像を再帰的に探索します。
ノートブックの実行:1.初期セットアップ
先に示した以下のノートブックにアクセスしてください。
そして、以下に示す再生ボタンを押してください。少し時間がかかりますが、必要なライブラリ等をインストールします。また、本作業については、ノートブック立ち上げ後の初回のみ実行します。
再生ボタンを押した後、「このノートブックに Google ドライブのファイルへのアクセスを許可しますか?」と聞かれるので、「Google ドライブに接続」を押して、許可してください。
その後、しばらくの間、再生中のボタンが表示されます。これが完了したら、次のステップに進みます。
ノートブックの実行:2.設定
次に、OCR処理の適用対象を設定します。
入力フォルダ(input_dir)は、上述した「/content/drive/MyDrive/ndl_ocr/input/」としました。
出力フォルダ(output_dir)は、「/content/drive/MyDrive/ndl_ocr/output/」としました。このフォルダは事前に作成しておかなくてもかまいません。
拡張子(extensions)は、今回は拡張子がjpgとjpegの画像を格納したので、これら二つを設定します。
processは、以下を参考にしてください。
ノートブックの実行:3.実行
「3.実行」の再生ボタンを押してください。
再生ボタンを押した後、以下のように、再生中ボタンが表示されます。
完了後は、以下のように、指定した出力フォルダに認識結果が保存されます。入力フォルダの構造を維持する形で出力するようにしています。また、設定において選択したprocessの値をフォルダ名に付与しています。processの値を変えて実行した際、それぞれの出力フォルダが残るようにしています。
以下のように、Googleドライブ上で認識結果の保存と確認が可能です。
まとめ
上記の方法により、Googleドライブ上に格納した画像に対するOCR処理と、その結果の保存を無料で行うことができます。保存した結果を、さまざまな用途に活用することができます。
Google Colabを利用した実行方法を示してくださった @blue0620 さんに感謝いたします。
追記
2022.05.02
本ノートブックの改良版であるVersion 2を作成しました。以下の記事も参考にしてください。
2022.04.30
設定にSigle input dir modeを追加しました。以下の記事も参考にしてください。
Discussion