Google Colabを用いたNDLOCRアプリの実行(Google Driveを用いた画像の入力と結果の保存)

概要

前回、Google Cloud PlatformのCompute Engineを用いたNDLOCRアプリの実行方法を共有しました。

nakamura196.hatenablog.com

ただし、上記の方法は手続きが一部面倒で、かつ費用がかかる方法です。本番環境で使用するには適した方法ですが、小規模に、または試験的に使用するにはハードルが高い方法でした。

この課題に対して、 @blue0620 さんがGoogle Colabを用いたNDLOCRアプリの実行方法を作成されました。

https://twitter.com/blue0620/status/1519294332159012864

上記のノートブックを使用することにより、簡単に(「ランタイム」>「すべてのセルを実行」からワンクリックで)、かつ無料でOCRを実行することができます。

今回は、このノートブックを参考にして、Google Driveを用いた画像の入力と結果の保存までの手続きを含むGoogle Colabの使用方法をまとめましたので紹介します。

ノートブック

今回作成したGoogle Colabのノートブックには以下からアクセスいただけます。

https://colab.research.google.com/github/nakamura196/ndl_ocr/blob/main/ndl_ocr_folder.ipynb

Googleドライブ上に入力画像のフォルダを用意するだけで、OCR処理を実行することができます。

基本的な操作方法は、上記のノートブック内の説明をご確認ください。以下、実行例を紹介します。

実行方法

入力フォルダの準備

まず、Google Drive上に画像ファイルを格納したフォルダを作成します。今回は、以下のように、マイドライブに「ndl_ocr > input」というフォルダを作成して、その直下に画像ファイル「image_1.jpg」とフォルダ「dir_1」を作成し、フォルダ「dir1」の中に画像ファイル「image_2.jpeg」を格納しました。

ツリーで見ると、以下のような形です。

今回作成したプログラムでは、指定した入力フォルダに含まれる画像を再帰的に探索します。

ノートブックの実行:1.初期セットアップ

先に示した以下のノートブックにアクセスしてください。

https://colab.research.google.com/github/nakamura196/ndl_ocr/blob/main/ndl_ocr_folder.ipynb

そして、以下に示す再生ボタンを押してください。少し時間がかかりますが、必要なライブラリ等をインストールします。また、本作業については、ノートブック立ち上げ後の初回のみ実行します。

再生ボタンを押した後、「このノートブックに Google ドライブのファイルへのアクセスを許可しますか?」と聞かれるので、「Google ドライブに接続」を押して、許可してください。

その後、しばらくの間、再生中のボタンが表示されます。これが完了したら、次のステップに進みます。

ノートブックの実行:2.設定

次に、OCR処理の適用対象を設定します。

入力フォルダ(input_dir)は、上述した「/content/drive/MyDrive/ndl_ocr/input/」としました。

出力フォルダ(output_dir)は、「/content/drive/MyDrive/ndl_ocr/output/」としました。このフォルダは事前に作成しておかなくてもかまいません。

拡張子(extensions)は、今回は拡張子がjpgとjpegの画像を格納したので、これら二つを設定します。

processは、以下を参考にしてください。

https://github.com/ndl-lab/ndlocr_cli#%E6%8E%A8%E8%AB%96%E5%87%A6%E7%90%86%E3%81%AE%E5%AE%9F%E8%A1%8C

ノートブックの実行:3.実行

「3.実行」の再生ボタンを押してください。

再生ボタンを押した後、以下のように、再生中ボタンが表示されます。

完了後は、以下のように、指定した出力フォルダに認識結果が保存されます。入力フォルダの構造を維持する形で出力するようにしています。また、設定において選択したprocessの値をフォルダ名に付与しています。processの値を変えて実行した際、それぞれの出力フォルダが残るようにしています。

以下のように、Googleドライブ上で認識結果の保存と確認が可能です。

まとめ

上記の方法により、Googleドライブ上に格納した画像に対するOCR処理と、その結果の保存を無料で行うことができます。保存した結果を、さまざまな用途に活用することができます。

Google Colabを利用した実行方法を示してくださった @blue0620 さんに感謝いたします。

追記

2022.05.02

本ノートブックの改良版であるVersion 2を作成しました。以下の記事も参考にしてください。

nakamura196.hatenablog.com

2022.04.30

設定にSigle input dir modeを追加しました。以下の記事も参考にしてください。

nakamura196.hatenablog.com