Microsoft Project Oxford Emotion触ってみました

Microsoft Project Oxford

 

Microsoftの機械学習ベースのAPIたちですね〜。
 
大きく分けると3つの分野(Vision,Speech,Language)で、それぞれ以下の内容になります。
 
 

Vision
・Computer Vision APIs
・Face APIs
・Emotion APIs
・Video APIs

Speech
・Speech APIs
・Speaker Recognition APIs
・Custom Recognition Intelligent Service
Language
・Spell Check APIs
・Language Understanding Intelligent Service
・Web Language Model APIs

 

それぞれの詳細はアイコンをのっけておくので想像して下さい。。。

Microsoft Project Oxford(https://www.projectoxford.ai/)より
今回ためしてみるのはこの中で、「Vision」Emotion APIsです!
顔認識のAPIは現時点でいくつもありますね。
顔の数だったり、目、鼻など顔のパーツの座標を取得したり。
でも感情まで読みとるものはそれほど多くはないですね。
機能として実装していても精度は実用レベルでなかったりして使えないとか。。。
取り敢えず試してみます!

Emotion API

まず概要です。
 Emotion API Documentation(https://msdn.microsoft.com/en-US/library/mt622110.aspx)より引用

Welcome to the Microsoft Project Oxford Emotion API, which allows you to build more personalized apps with Microsoft’s cutting edge cloud-based emotion recognition algorithm.
Emotion DetectionThe Emotion API beta takes an image as an input, and returns the confidence across a set of emotions for each face in the image, as well as bounding box for the face, from the Face API. The emotions detected are happiness, sadness, surprise, anger, fear, contempt, disgust or neutral. These emotions are communicated cross-culturally and universally via the same basic facial expressions, where are identified by Emotion API.
In interpreting results from the Emotion API, the emotion detected should be interpreted as the emotion with the highest score, as scores are normalized to sum to one. Users may choose to set a higher confidence threshold within their application, depending on their needs. If a user has already called the Face API, they can submit the face rectangle as an optional input.

Google翻訳につっこんだものをまとめると、

画像送ってくれたら、顔の感情を分析して送り返すよ!
一番スコアが高い感情だと思うよ。

んで、「幸せ」、「悲しみ」、「驚き」、「怒り」、「恐れ」、「軽蔑」、「嫌悪感」、「ニュートラル」を識別して、

トータル1になるようにレスポンスがかえってくるので、閾値使って自由に判断してね。

だそうです。

次はAPIリファレンス

中身みるとシンプルなAPIですね。
Emotion API Reference(https://dev.projectoxford.ai/docs/services/5639d931ca73072154c1ce89/operations/563b31ea778daf121cc3a5fa)より
最低限だと、Key設定して、画像ファイルをサーバ等においてURL渡すだけですね。
ということでアカウントを作ってKey取得して、さてデモ用のサンプルPGをやってみます。

こちらがデモ。

Emotion Demo(https://www.projectoxford.ai/demo/emotion)より
 
これ、Keyとかいりませんやん。むしろ、何も準備しなくていいです。
 
ただ、ここにさえいけば簡単にVision APIが試せます。
画像もいくつか用意されています。
 
画像の下の緑色のボタンから画像を読み込ませたら自前の画像も右側に結果のレスポンスが見れます。
※以下、EmotionDemoのwebページ(https://www.projectoxford.ai/demo/emotion)にて実施しています。
 
 
こんな感じです。

認識した人数分の、faceRectangle、scoresが返却されているのがわかりますね。
 
faceRectangle:顔と判定している緑色の□の位置
scores:各感情の値
 
ですね。
簡単にデモを動かせる環境があるのでみなさんも色々試してみてはいかがでしょうか。

番外編

会社のHPの写真を抜き出して測定してみました。

・表彰された写真

表彰されて浮かれているようですね。“happiness”: 1というとんでもない数字がでています。

トータルが1になるので、他の値は軒並みe-10とかなっちゃってます。

どんだけ細かい計算してるのでしょうか。



・教えている写真

注目すべきは左側。なんと顔が認識されていません。

サンプル画像とかめちゃめちゃぼやけてても顔と認識されているのになぜでしょうか。

これが一番謎な結果でした。



・インターンシップ宣伝の写真

これも“happiness”: 0.999999642。
色々な画像で試しましたが、比較的どの写真も楽しそうに認識されました。

原因を調査したんですが、まだあんまり情報ないですね。考えられそうなのは、

・判定が欧米基準で、相当オーバーな顔しないと認識してくれない?!

・イサナドットネットが楽しいから皆笑顔になっている?!

これは多分後者ですね!!宣伝したので、何かください。

そんな楽しいisana.netでは積極的にインターンシップを受け入れ中です。 

ご興味持った方はisana.netまでお問い合わせ下さい。
詳細・お問い合せはこちら

イサナドットネット全員でお待ちしております。

 
%d人のブロガーが「いいね」をつけました。