LoginSignup
0
1

More than 3 years have passed since last update.

"画像"で掲載される接触確認アプリ(COCOA)の利用状況を解析する / Tesseract

Last updated at Posted at 2020-08-10

厚生労働省から”画像”で発表されるCOCOAの利用状況を解析するProgramの構築

はじめに

  • 私自身、接触確認アプリ(COCOA)のダウンロード数と陽性登録数の推移をグラフでまとめている。毎日18:00頃に公式サイトを訪れデータをGoogle Sheetに書き込み、グラフ作成をするという作業をしていた。
  • しかし、この手間が大変になってきたため、単純作業を自動化できないかと思ったのがきっかけである。
  • 厚生労働省から掲載される情報はテキストが画像化されており、このデータを自動解析できれば全体の自動化も可能だろうと思い、試しに制作した。

厚生労働省 COCOA特設サイト(8/11現在)
厚生労働省cocoa

今回のポイント

  • 掲載される情報は、テキストデータで掲載されていないため、画像を取得し文字認識(OCR)をする必要があった。そこで、OCRツールの候補に挙がったのが「GCP Cloud Vision」及び「Tesseract」である。

  • 今回は、TesseractがPythonでPyOCRのライブラリを用いることで手軽に利用できるとあったため、こちらを採用し、認識精度についても検証していく。今後はCloudVisionも利用してみて、双方の文字認識の精度についても検討したい。

実装した機能(すべてPythonで構築)

  • スクレイピング機能
  • OCR機能
  • データ抽出機能
  • Googleスプレッドシートへのデータ書き込み機能
  • Googleスプレッドシートで作成されたグラフの画像取得機能(Tweet用素材)
  • TwitterへCOCOAの利用状況をグラフを添付し投稿する機能(API未取得の為、動作未確認)

スクレイピング機能に関して
 本プロジェクトは厚生労働省のrobot.txt(https://www.mhlw.go.jp/robots.txt)によるクローラ許可範囲や,利用規約・リンク・著作権等の規約に則り制作している。
 アクセス先サーバへの負担軽減やDoS状態を防ぐため,スクレイピングプログラムは公式情報が更新される時間帯(17:00-18:30)のみ作動させている。この時間帯の中で,プログラムは作動し,更新が確認されるまで再アクセスを行う。再アクセスのリトライ間隔は余裕を持たせた「5分」に設定している。

Tesseractとは

多様なオペレーティングシステム上で動作するオープンソースソフトウェアであり、Apache License 2.0 の下で配布されている。文字認識を行うライブラリと、それを用いたコマンドラインインターフェイスを持つ。バージョン4.0からは、従来の認識エンジンに加え、LSTMベースのニューラルネットワークによる認識エンジンが搭載されている。開発元:Google
--wikipediaより

実行したOCRの結果

  • OCR処理前(サイトから取得した画像) cocoa_info_0810.png
  • OCR処理後
接触確認アプリは、iOS・Androidともに、現在、「1.1.2」を配布しています。
古いバージョンのアプブリをご利用の方は、App StoreまたはGoogle Playから「接触確
認アプリ」を検索いただき、 アップデートをお願いします。

ダウンロード数は、8月7日17:00現在、合計で約1.205万件です。

・iOS、Android両方の合計の数になります。

・ダウンロード後に削除し、再度ダウンロードした場合は、複数回カウントされる場
合があります。

陽性登録件数は、8月7日17:00現在、合計で165件です。

OCRの認識精度は高く安定

誤字は、2行目の「アプリ」を「アプブリ」と認識している点のみ。そのため、データを抽出する際のダウンロード数や、陽性登録数のデータ抽出には支障がないことが分かった。複数枚のOCR処理を行ったが、かなり安定しておりデータ抽出は正確に行われていた。

まとめ

  • 本システムは、Twitter投稿機能以外については正常に動作しており、データ抽出からグラフの自動作成などにより、更新作業の簡素化を実現することができた。
  • 現在は、ツイートの投稿のみ手作業となっている。
  • 課題として今後は、TwitterAPI交付後にツイート機能も稼働させて、解析から情報発信まで自動化させたいと考えている。

Google Sheetより自動取得した、ダウンロード数と陽性登録数の推移のグラフ
sheet_date0810

※誤った記述が存在する可能性があります。ご注意ください。

本プロジェクトの詳細について

出典・参考リンク

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1