お題
先日、弊社ブログ「Fusicってなんしようと?」で記事数が260本を超えたことをお知らせしました。
ニュースやこの機械学習記事を合わせると、どうやら900本以上記事があるようです。
また、弊社ホームページではメンバー紹介ページへのアクセス数が多く、
みなさまが私たちFusicメンバーのことに興味を持っていただいていることをいつもありがたく感じています。
そこで最近の記事も、メンバー紹介ページでの固定文章では分からないメンバーのことを
よりアクセスしやすい形でみなさまにお届けできたら、
もっとメディアとしての価値が高まるのではないかと考えました。
ということで、「Fusicってなんしようと?」記事内の写真からメンバーを判定して、
タグ付けができないかを検証してみることにしました。
実現すること
Fusicのホームページで配信しているニュースなどの写真からメンバーを認識し、
メンバー紹介ページに記事へのリンクをタグ付ける。
使う技術
「顔検出」と「顔認識」の2つの技術を用いて実現します。
「顔検出」は、以前「顔にモザイクをかける」という記事でも紹介した物体検出の応用で、
画像内から顔がどの位置にあるか?を検出します。
「顔認識」は、画像内のある顔が別の画像内の顔と一致するかどうか?を判定するものになります。
まず、元となる画像から「顔」を検出し、切り出し、それぞれがメンバーの誰と一致するか?を判定していきます。
結果
上記は、2019年夏の社員研修記事内の画像で「顔検出」を行った結果です。
後ろ向きや下を向いている人は「顔」とは検出されず、それ以外の人が漏れず検出できていることがわかります。
この情報から顔部分を切り出し、次の処理「顔認識」へ進めます。
「顔認識」は、メンバー紹介ページの顔画像を比較データとして登録し、
上記の顔部分を切り出した画像と比較させます。
一致したメンバーがいれば、そのメンバーの紹介ページに記事のリンクをタグ付けすることができました。
問題点
当たり前かもしれませんが、マスクや帽子を深くかぶっていると、顔として検出できなかったり、
同一人物と認識することができません。
また、比較する写真はメガネをかけていないが、記事内の写真ではかけている場合、
違う人と判定されることがありました。
今回のように、しっかり写っている顔についてはかなり高い精度で判定できる一方、
その画像や動画の撮り方(カメラ角度や明るさなど)に大きく影響を受けることがわかっています。
シーンに合わせて、使用するデータの質を改善することが高い性能を出すためのコツになります。
まとめ
記事内の画像とメンバーの情報を紐付けることができました。
写り方などによってはうまく判定できないケースもありますが、
今回のようにしっかり写っている記事だけタグ付けしたいものであれば、かなり有用なものとなりました。
今後はメンバーごとに記事登場数などのランキングや傾向なども探ってみたいと思います。
参考にしたサイト
最後に
Fusic 機械学習チームでは、案件のご相談を随時受け付けております。
お気軽にお声がけください。