search
LoginSignup
10

More than 3 years have passed since last update.

posted at

updated at

Custom Vision Serviceから出力したモデルを使ってWindowsML上で物体認識をする(その1 AIモデルの作成と出力)

Windows10 InsiderPreview Build 17110以降にはWindowsMLという機能が搭載されました。
これはAIモデル(onnx形式に対応)を使用するための実行環境です。

今回はCustom Vision Seviceを使ってAIモデル(野菜の判別)を作成し、出力したモデルを使って野菜をリアルタイムで認識するUWPアプリを作成してみます。

今回開発に使った環境

・Windows10 Pro Insider Preview Build 17110以降(Hyper-V上にVM環境を用意)
・Windows10 SDK Insider Preview 17110以降(こちらからダウンロード)
・VisualStudio 2017 Community
・Python2.7 or Python 3.6
・Azure サブスクリプション
・Windows10 IoT Core Insider Preview 17110以降 + RaspberryPi3
・Webカメラ
・学習に使う画像(1種類毎に5枚以上、サイズは6MBまで、プロジェクト毎に5000枚まで)

参考

こちらのブログの記事を参考にさせてもらいました。
Mike Taulty : First Experiment with Image Classification on Windows ML from UWP
サイトオーナーは MS UK のエンジニアさんみたいです。

公式ドキュメント
https://docs.microsoft.com/en-us/windows/uwp/machine-learning/

Custom Vison ServiceでAIモデルを作成する

Custom VisonサイトからSIGN INします。
0.PNG

・New Projectをクリックします。
1.PNG

・Name欄にはプロジェクト名を入力します。(半角英数の方がトラブルが少ないと思います。)
 Domainsは「General (compact)」を選択します。
 「Create project」ボタンをクリックするとプロジェクトが作成されます。
2.PNG

・「Add images」タブをクリックします。
3.PNG

・「Browse local files」をクリックしてトレーニング用の画像ファイルをアップロードします。今回は種類ごとに20枚の画像を準備しました。
4.PNG

・「My Tags」にタグ名(ラベル)を入力してまとめてアップロードできます。
 (種類ごとにフォルダに分けておいてアップロードするのがいいでしょう)
5.PNG

・アップロードが完了して「Done」をクリックします。種類ごとに繰り返してアップロードします。
6.PNG

・アップロードが完了したら緑色の「Train」をクリックします。
・トレーニングが完了すると下記のような画面に変わります。「Quick Test」をクリックしてトレーニングの結果を試してみます。
8.PNG

・「Browse local file」をクリックして、トレーニングでは使っていない画像(4MBまで)を選択します。
9.PNG

・Predicions欄にテスト画像を推定したタグ一覧がパーセント表示されます。
10.PNG

・これでAIモデルが完成しました。「Export」をクリックしてモデルを出力します。
11.PNG

・プラットフォームは「iOS」を選択します。
12.PNG

・一旦「Export」をクリックして、閉じます。
13.PNG

・再び「Export」をクリックして、プラットフォームの「iOS」を選択すると「Download」ボタンが
 表示されるので、それをクリックしてモデルファイルをローカルにダウンロードします。
14.PNG

以上でCustom Visonで作成したAIモデルを出力できました。
次は作成したモデルをonnxに変換して、UWPアプリで使用してみます。

Custom Vision Serviceから出力したモデルを使ってWindowsML上で物体認識をする(その2 モデルデータの変換とクラスの生成)に続きます。


WindowsMLネタ一番乗りだけど、結局Custom Vision Serviceの使い方になっちゃった・・・
次はちゃんとWindowsML出てきます。

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
What you can do with signing up
10