RでMicrosoft Face APIsを実行する(2)
今から約10年前、
「"いつもここから"に似てますよね」
と言われたことがある。
ググって写真を見た第一声が「どっち?」だったことを今でも覚えてる。そんな十年来の疑問に対してFace APIsのVerificatoinで解決を試みたい。
というわけで前回の続き
1. faceIdの取得
Verification APIではDetection APIのレスポンスに含まれるfaceIdが必要となる。
ネット上の画像に対してDetection APIを実行するには以下のようにする。
いつもここから - Yahoo!検索(人物)のトップ写真で実行した結果は以下の通り。
左が29歳女性、右が27歳男性という結果に。
> content(res) [[1]] [[1]]$faceId [1] "52c13664-51fe-4330-98aa-e0895f25d4f9" [[1]]$faceRectangle [[1]]$faceRectangle$top [1] 47 [[1]]$faceRectangle$left [1] 103 [[1]]$faceRectangle$width [1] 66 [[1]]$faceRectangle$height [1] 66 [[1]]$attributes [[1]]$attributes$gender [1] "male" [[1]]$attributes$age [1] 27 [[2]] [[2]]$faceId [1] "2b4fcf7f-c5d7-4fab-8bae-c804d2ab4628" [[2]]$faceRectangle [[2]]$faceRectangle$top [1] 56 [[2]]$faceRectangle$left [1] 32 [[2]]$faceRectangle$width [1] 64 [[2]]$faceRectangle$height [1] 64 [[2]]$attributes [[2]]$attributes$gender [1] "female" [[2]]$attributes$age [1] 29 >
2. Verification APIの実行
2人のfaceIdが取得できたのでVerification APIで同一人物かどうかチェックしてみる。
Verification APIを実行するには以下のようにする。
いつもここから - Yahoo!検索(人物)のトップ写真右の人物と 菊地秀規 - Yahoo!検索(人物)のトップ写真の人物で試してみるとちゃんと同一人物だと判定された。
> content(res) $isIdentical [1] TRUE $confidence [1] 0.85224 >
同様に自分の写真といつもここから - Yahoo!検索(人物)のトップ写真左右の人物それぞれで比較してみる。
まずは左の人物と自分。
> content(verify.left) $isIdentical [1] FALSE $confidence [1] 0.00843 >
次に右の人物と自分
> content(verify.right) $isIdentical [1] FALSE $confidence [1] 0.19268 >
どちらも同一人物ではないけど、どちらかというと自分は右の方に似ているようだ。
- どちらかというと右に似ていることがわかった
- どうせなら自分に一番似ている芸能人を探したい