3
3

More than 1 year has passed since last update.

Custom Vision 物体検知モデル⇒画像切抜き⇒分類モデルをバッチ化する Logic Apps

Last updated at Posted at 2022-06-14

はじめに

前記事で、Custom Vision 物体検知モデル⇒画像切抜き⇒分類モデルを自動化する Azure Functions(Python)を作成しました

Function 化することで、アプリからも呼び出せますし、Azure Logic Apps や Azure Data Factory から呼び出してバッチ処理させることもできます
活用の幅が広がりますね!
さて本記事では、Logic Apps から 前記事で作成したAzure Functions(Python)を呼び出し、Blob Storage の指定フォルダに存在する画像を全て画像解析処理をさせるバッチ実装について説明します

実装イメージ

image.png

Logic Apps 処理の流れ

① HTTPリクエストトリガー
② Blob Storage の指定フォルダに存在する画像ファイルをリスト化する
③ 画像ファイル分Azure Functions(Python)の解析処理をループ処理

Logic Apps 作成

Azure ポータルから Logic Apps リソースを作成します
Logic Apps の作成は、以下ドキュメント参照下さい
※プランの種類は「従量課金プラン」を選択しました

・空のロジックアプリをテンプレート選択
image.png

① HTTPリクエストトリガー

・トリガーは、ビルトイン > 要求 > [HTTP 要求の受信時] を選択
image.png
image.png

・[+新しいステップ]をクリック
image.png

② Blob Storage の指定フォルダに存在する画像ファイルをリスト化する

・すべて > Azure Blob Storage > [BLOBを一覧表示する(V2)] を選択する
image.png
・解析したい画像ファイルのAzure Storage アカウント名とアカウントキーを設定
image.png
・ストレージアカウント名を選択し、解析したい画像ファイルが格納されているフォルダを選択
image.png
・[+新しいステップ]をクリック

③ 画像ファイル分Azure Functions(Python)の解析処理をループ処理

・ビルトイン > 制御 > For each を選択
image.png
image.png
・以前の手順からの出力を選択で、BLOB のvalue を選択し
・For each 内の [アクションの追加] をクリック
image.png
・ビルトイン > Azure Functions > [Azure 関数を選択する] をクリック
image.png
・対象の Function を選択する
image.png
image.png
・[Add new parameter] をクリックして、[クエリ]にチェックをつける
image.png
・クエリにパラメータを指定する

{
  "filename": @{items('For_each')?['Name']}
}

image.png

Logic Apps 実行

作成した Logic Apps を実行します
・トリガー実行 > 実行をクリック
image.png
・実行結果を確認する(正常実行時は緑のチェックマークがつく)
・アウトプットについては、Blob Storage の各フォルダの中身を確認しましょう
image.png

さいごに

Logic Apps で 3ステップで簡単にバッチ化できてしまいましたね!
出力判定結果を DBテーブルに格納したりする場合は、Azure Data Factory の Pipeline で実装する方がよいと思います

3
3
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
3
3