作中の顔を集めて分かったこと(技術紹介2)
プロフィールの代表画像と、作品の中の顔は、同じ人でも印象が違うことがあります。 その差を測りたくて、出演作品のサンプル画像から顔を集めました。 単純な作業のつもりでしたが、データ作りの落とし穴にいくつも落ちたので、記録しておきます。 全体の仕組みはAIの仕組みにあります。
落とし穴1:顔が1つなら本人、は6割以上外れる
最初は、サンプル画像に写った顔のうち、検出された顔が1つだけの画像は本人だろう、と考えました。 共演者が写っていれば顔は複数になるはずだからです。
実測すると、顔が1つだけの画像でも62.7%が本人ではありませんでした。 サンプル画像には共演者も写るためです。内訳までは測っていませんが、 顔の数を数えるだけの単純な条件では、本人は絞れませんでした。
対策1:女優が1人だけの作品に絞る
APIで出演者が1人だけの作品を先に選び、その作品の画像から顔を取るようにしました。 複数の女優が出る作品では、誰の顔か分からないからです。
落とし穴2:多作の女優ほど、収集が丸ごと失敗する
作品を新しい順に36件だけ取っていたら、多作の女優で単体作品が1本も入らない例が出ました。 直近の作品が総集編やオムニバスばかりだったためです。 たとえば出演619本のある女優は、直近36本のうち単体作品が0本でした。 取得件数を100件に増やし、足りなければ次の100件も見るようにして、ようやく集まりました。
対策2:取った顔を、そのまま本人とは扱わない
単体作品に絞っても、写っているのが本人とは限りません。 そこで、取り出した顔の特徴量をプロフィール画像の特徴量と照合し、 本人と確認できた顔だけを「作中の顔」として比較に使っています。 確認できなかった顔は比較には使わず、「出演作品の画像」として、 共演者を含む可能性を断ったうえで表示するだけにしています。
ここでも注意が必要でした。照合の基準値は「2枚が同じ人か」を確かめるためのものです。 候補の中から「誰か」を当てる使い方に流用すると、候補に本人がいない場合でも、 いちばん近い誰かが選ばれてしまいます。目的に合わせて、基準を分ける必要がありました。
顔の画像は保存していない
顔を切り抜いた画像は保存していません。DMMの画像の再配布にあたるためです。 保存しているのは元の画像のURLと顔の座標だけで、切り抜きは閲覧するブラウザの側で行います。
結果
作中の顔を15枚以上確認できた1,124人について、 プロフィール画像との印象の揃い方を並べました。揃っている上位の例です。
全体は代表画像と作中の顔の印象が揃っているランキングと、印象差が大きいランキングで見られます。印象差は、化粧や照明、撮影時の加工が違うだけでも大きくなります。 差が大きいことは、何かを偽っているという意味ではありません。
顔の特徴の測り方や限界は、当サイトについてにも書いています。