Live And Let Die

Microsoft エバンジェリストのブログ&備忘録 渡辺弘之の個人ブログ

Microsoft Cognitive Services を試してみる(5)

前回に続いて、Visual Studio でアプリを作成していきます。

4.Visual Studio でアプリ作成その3

4-1. "Emotion" API の処理を記述します。

・まずは、冒頭でネットワーク接続をチェックします。

・"Emotion"(emotionServiceClient.RecognizeAsync)を呼びます。引数は、ファイルから、もしくは、カメラ撮影で取得した写真(イメージ)です。

・Emotion API の詳細は、こちらも参照ください。

・今回は、写真に写る人間を1名と仮定し、判定結果(スコア)を受け取ります。

f:id:hiwatan:20161028163813p:plain

 

4-2. "Face" API の処理を記述します。

・"Face" API の判定結果(属性値)を格納するリストを定義します。

・"Face"(faceServiceClient.DatectAsync)を呼びます。引数は、ファイルから、もしくは、カメラ撮影で取得した写真(イメージ)です。

・Face API の詳細は、こちらも参照ください。

・"Emotion" 同様、今回は、写真に写る人間を1名と仮定し、判定結果(属性値)を受け取ります。

f:id:hiwatan:20161028163828p:plain

 

4-3. "Emotion"、"Face" の判定結果を、2-4で定義したFaceEmotionDetectionクラスに格納します。 

f:id:hiwatan:20161028163841p:plain

 

4-4. 3-3と3-4で記述した「ファイルから選ぶボタンがクリックされた時の処理(UploadPicture_Clicked())」と「カメラで撮影ボタンがクリックされた時の処理(TakePicture_Clicked())」それぞれから、この"Face"と"Emotion"を呼び出す処理(DetectFaceAndEmotionsAsync())を呼び出します。判定結果を BindingContext に渡せば終了です。

f:id:hiwatan:20161028163856p:plain

 

4-5. 今回のアプリは、Xamarin.Form を用いて開発していますので、マルチプラットフォームのクライアント対応アプリとなっています。最初に紹介した UWPアプリ以外にも、Androidエミュレーター)、Windows Phone(エミュレーター)でも同様に起動します。(iPhoneは試していません)

f:id:hiwatan:20161028163909p:plainf:id:hiwatan:20161028163934p:plain

 

Cognitive Services を利用したモバイルアプリを簡単に作成できることがわかりました。Xamarin を使うと、C#マルチプラットフォーム対応のアプリも簡単に作成できます。皆さんも、ぜひ試してみてください。