概要
本記事ではAzure Perceptを用いてノーコードで物体検知モデルを構築する手順について説明します。Azure Percept DKで収集したカメラ画像をCustom Visionに連携してモデル学習を行った後、構築した物体検知モデルをAzure Percept DKにデプロイしてリアルタイムな推論をおこないます。
目次
- 物体検知モデルを構築してデプロイする
- 画像を追加し、再学習してモデルを改善する
- まとめ
1 物体検知モデルを構築してデプロイする
Azure Percept Studioを用いて以下の手順で作業をおこないます。
- Custom Visionプロジェクトを作成する
- 学習用の画像を収集する
- タグ付けをおこなってモデル学習をおこなう
- 学習したモデルをデプロイする
1.0 準備
「Azure Perceptの初期設定をおこなう」の記事を参考に、セットアップを完了しておきます。
1.1 Custom Visionプロジェクトを作成する
(1) AzureポータルからAzure Percept Studioにアクセスします。
(2) [デモとチュートリアル]タブを選択し、[Vision プロトタイプの作成]をクリックします。
(3) Custom Visionのプロジェクトを作成します。本記事では物体検知モデルを構築しますが、画像分類モデルを構築する場合もほぼ同様の手順になります。最適化の項目については、モデルの正確性、速度、バランスを考慮して選択します。
※ Custom Visionリソースを新規に作成する場合は、[新しいリソースを作成する]をクリックして新しいCustom Visionリソースを準備します。
1.2 学習用の画像を収集する
(1) 画像収集に使用するデバイスを選択し、収集の頻度(キャプチャ率)と枚数(ターゲット)を指定します。
(2) [デバイスストリームの表示]をクリックしてカメラ画像を確認してから、[自動キャプチャの設定]をクリックします。
(3) 「自動キャプチャ設定」の通知のあとで画像収集が自動的に開始されるので、カメラ画像を確認しながら対象の物体をカメラに映します。収集完了の通知はおこなわれないので、キャプチャ率×ターゲットの時間を目安にします。
1.3 タグ付けをおこなってモデル学習をおこなう
(1) 画像収集が完了したら、Custom Visionのページを開きます。
(2) タグ付けする画像をクリックします。
(3) 物体検知モデルの場合、検知したい物体をバウンディングボックスで囲ってタグを入力します。他の画像についてもタグ付けをおこないます。
(4) タグ付けが完了したら、タグ付け済みの画像数を確認します。Custom Visionではタグごとに15枚以上のタグ付けが必要で、50枚以上が推奨されています。
(5) モデル学習をおこないます。
(6) モデル学習が完了するまで待ちます。数十分かかります。
1.4 学習したモデルをデプロイする
(1) Azure Percept Studioのブラウザタブに戻り、[評価とデプロイ]においてモデルのデプロイをおこないます。
(2) 「デバイスのデプロイ」の通知がきたら、カメラ画像を確認します。
2 画像を追加し、再学習してモデルを改善する
(1) Azure Percept Studioの[Vision]タブを選択し、再学習する対象のプロジェクトをクリックします。
(2) [イメージのキャプチャ]をクリックします。
(3) 画像収集に使用するデバイスを選択し、収集の頻度(キャプチャ率)と枚数(ターゲット)を指定します。[再トレーニングを設定する]をチェックすると、モデルの予測結果が指定した確率の範囲にある画像だけがCustom Visionにアップロードされるので、例えば、現状のモデルで予測確率が低くなってしまうような画像だけを収集することができます。
(4) 画像収集が完了したら、Custom Visionのページにおいてタグ付けをおこないモデル学習をおこないます。
3 まとめ
本記事ではAzure Perceptを用いてノーコードで物体検知モデルを構築する手順について説明しました。Azure Percept DKで収集したカメラ画像をCustom Visionに連携してモデル学習を行った後、構築した物体検知モデルをAzure Percept DKにデプロイしてリアルタイムな推論をおこないました。また、画像を追加してモデルを改善する手順について説明しました。