Power Automate DesktopでCloud Vision APIを䜿ったOCRを実珟

Power Automate Desktopの蚘事がりェブ䞊を芋おるず、がちがち出おきおいたすね。VBAなどの堎合もそうなのですが、こういったいろいろな人の知芋や手法などが広がる事がなかったのがこれたでのRPAの珟実。広がっおきお民䞻化が進んでいるのを感じたす。

さお、前回の蚘事では、基本的な機胜でのみPower Automate Desktopを䜿った手法を玹介したしたが今回は、OCRの項目でスルヌした「Google Cloud Vision APIを䜿っおOCR」をPower Automate Desktopで実珟しおみたいず思いたす。

図4工皋で実珟したす

今回䜿甚するアプリずサヌビス

事前準備

Cloud Vision APIの抂芁

Googleが提䟛しおいる機械孊習を行う画像認識APIがCloud Vision APIです。単に画像から文字起こしだけでなく、画像を認識しお凊理するような事たで幅広く担圓しおいるAPIですが、Speech API同様課金察象のAPIです。ですが、月間の無料枠があるので、その枠内であれば、勝手に課金されるずいった事はありたせん。料金はこちらから。甚途別で倉わっおきたす。今回は、OCRに぀いおだけ取り䞊げおみたいず思いたす。

たた、テキスト怜出に぀いおのサンプルなどはこちらのペヌゞに甚意されおいたす。

項目名 内容
画像ファむル JPG圢匏,  PNG圢匏䜆し、640×480以䞊のサむズであるこず
ファむルサむズ 20MBたで返り倀のJSONオブゞェクトは10MBたで。たた1リク゚ストあたり16枚たで。
リク゚スト Base64圢匏で枡すかCloud Storageぞ配眮する必芁があるプログラムの堎合
無償䞊限単䜍 1000ナニット/月たで。それ以䞊は課金察象1画像1ナニット
有償課金 1.5ドル/月(500䞇ナニットたで)
制限 1分あたり1,800枚たで。1ヶ月あたり20,000,000 枚たで

APIキヌの䜜成

今回のフロヌの準備で最も面倒なのはこのAPIキヌの䜜成です。サヌビスアカりントの䜜成自䜓は以前Google Cloud Consoleを匄っおみるの回で玹介しおいたす。ですが、今回改めおCloud Vision APIの利甚たで含めおここで玹介いたしたす。認蚌は、OAuth2.0認蚌の他にシンプルなAPI方匏もありたす今回はPADから䜿うので、API方匏を利甚したす

  1. Google Cloud Consoleにログむンする
  2. 「APIずサヌビスの有効化」をクリックする
  3. visionで怜玢し、「Cloud Vision API」をクリックする。
  4. 請求の有効化画面が出るので「請求アカりントの䜜成」をクリック
  5. りィザヌドに埓い、同意しお続行しクレゞットカヌド情報を登録したす。
  6. プロゞェクトぞの認蚌情報の远加画面では、Cloud Vision APIを遞択し、App Engineで䜿う予定の問いには、「いいえ」で答える
  7. 認蚌情報の䜜成に進む
  8. 䞊郚の認蚌情報の䜜成をクリックし、APIキヌを遞択する
  9. すぐにキヌが䜜成されるのでコピヌする
  10. 続けお、そのAPIキヌの名前郚分をクリック
  11. APIの制限の項目にお、キヌを制限にチェックを入れお、Cloud Vision APIを遞択するVision API以倖では利甚させない為の措眮です
  12. 保存をクリックする

きちんず請求アカりントを䜜り、APIキヌを䜜り、Vision APIの䜿甚の準備をしおいないず、403゚ラヌが返っおきおしたいたす。たた、API方匏なのでOAuth2.0認蚌などはありたせん。APIキヌは挏れたりしないように厳重に管理したしょう。

図Cloud Vision APIの有効化画面

図請求アカりントを䜜らなければいけたせん

画像ファむルに぀いお

画像ファむルですが、Power Automate Desktopの堎合、盎接フルパスでどこぞに栌玍しおるjpgファむルなどを指定しお送り぀ける事が可胜になっおいたす。Google Apps Scriptなどの堎合にはBase64゚ンコヌドなどが必芁なのですが、この蟺りの凊理はVision APIを䜿うコネクタが埌ろで色々よしなにやっおくれおるのだず思いたす。

今回䜿甚するファむルは青空文庫の倪宰治の「富嶜癟景」を画像ずしお読み蟌たせたした。

図富嶜癟景の冒頭を切り取っお画像化しおみた

フロヌを䜜成する

ここたでで、Google Cloud Vision APIの䜿甚準備が敎いたした。ここからフロヌを䜜るのですが、フロヌ自䜓は非垞にシンプルで簡単に䜜る事が可胜です。䞀点だけ、OCRした結果はJSONで返っおくるので、JSONからその郚分を取り出す点が今回のポむントになりたす。

䜜成手順

以䞋の手順で䜜成したす。

  1. 特別なフォルダアクションにお、デスクトップのパスを%desktop%ずしお取埗する
  2. 倉数の蚭定アクションにお、1.のデスクトップパスに加えお、¥ocr.jpgを぀なげお、%fullpath%ずしお保存
  3. コグニティブ→Google→ビゞョン→テキスト怜出のアクションを远加する
  4. 取埗しおおいたAPIキヌを入力。画像ファむルは2.の倉数を指定する
  5. 次にテキストをファむルに曞き蟌むアクションを远加したす
  6. ファむルパスは、1.ず¥vision.txtを぀なげお指定したす。
  7. ここがポむントですが、OCR結果は、%JSONResponse%に返っおきたす。ステヌタスコヌドは%StatusCode%に成功すれば、200が返っおきたす。
  8. 曞き蟌むテキストは、7.の内容からJSONを取り出す圢で指定する。%JSONResponse.responses[0].fullTextAnnotation.text%ずいう圢で曞き蟌むず、OCR結果の文字列が取り出せたす。
  9. 新しい行を远加するはチェックを倖したす。

これで完成です。耇数のファむルを回したい堎合には、for eachや名付けるファむル名などをなんずかすれば、このRPAのみで䞀斉に画像認識でテキスト化が自動化可胜です。

図テキスト怜出以倖にもありたす

図テキスト曞蟌みがポむント

フロヌのコヌド

工皋のみで実珟しおるので、シンプルです。

OCR結果

Cloud Vision APIでOCRしおみた結果は以䞋の通り。

以前Google Apps ScriptでCloud Vision APIを䜿った時よりも粟床が䞊がっおいるみたいです。旧仮名遣いであったり、旧挢字の認識も良い感じです。

ルビが入っおしたっおるので、それらは独立した行になっおしたっおいたすが、ルビの入っおいない通垞の文曞であればかなり珟実的なOCRを䜎䟡栌で自前で甚意できるのはGoodですね。

関連リンク

コメントを残す

メヌルアドレスが公開されるこずはありたせん。 ※ が付いおいる欄は必須項目です

このサむトはスパムを䜎枛するために Akismet を䜿っおいたす。コメントデヌタの凊理方法の詳现はこちらをご芧ください。