ReKognition API を使った顔検出
2014-05-22 顔認識 rekognition
ReKognition API っていう顔認識webサービスがあったからちょっと触ってみた。
まずアカウント登録
ReKognition API を使うにはアカウント登録して API Key と API Secret を取得する必要がある。
つうことでまずは https://www.rekognition.com/user/create にアクセスして必要事項記入してアカウント登録。
登録後に届いたメール内の activate tour account をクリックしてアクティベート。
アクティベートが終わるとAPI_Key, API_Secret が発行されましたメールが届く。API回数も書いてあるけど、月5000回までって少ないな...(※追記: https://www.rekognition.com/user/price を見るとAPI超過分は課金されるっぽい?)
顔検出してみる
https://rekognition.com/developer/face#facedetectを見ると、仕様は以下みたいな感じ。
URL
http://rekognition.com/func/api/
レスポンスヘッダに Access-Control-Allow-Origin:* がついてるから、ajax使ってクロスドメインで動かせる。
method
POST (GETでもOKぽい)
params
- api_key : 発行された API_Ky
- api_secret : 発行されたAPI_Secret
- urls または base64 : 画像URL または base64エンコードした画像文字列
- jobs : face_aaa_bbb... のように取得したい情報をアンダースコアで連結させて渡す。以下が設定可能。
- aggressive: 回転した顔を検出できるようにする。
- part: 鼻、目、口角の位置を返す。
- part_detail: さらに細かい情報を返す。
- gender: 性別を返す。0に近いと男性、1に近いと女性。
- emotion: 感情の状態を返す。
- race: 人種を返す。
- age: おおよその年齢を返す。
- glass: メガネをつけてるかどうか。0に近いとメガネなし、1に近いとメガネあり。
- mouth_open_wide: 口が開いているかどうか。0に近いと閉じてる、1に近いと開いてる
- eye_closed: 目が閉じているかどうか。0に近いと閉じている、1に近いと開いている。
例えば「性別と年齢」が知りたい場合は jobs=face_gender_age
とする。
試しにゲイリームーアの画像を jQuery.ajax 経由で顔検出してみる。
ソース。
結果。年齢は47歳、超笑ってる、性別は男女どっちつかず...と。
ちなみに ajax使うと OPTION リクエスト投げてから POST リクエスト投げる関係で、API を 2 個消費するっぽい。回数考えるなら、サーバサイドで処理したほうがいいかもしれない。
≪ 2014-05-22
hiromi, Convex Level
2014-05-18 ≫
娘の誕生日