自撮り画像の顔認識向けデータセット「WSD(Wild Selfie Dataset)」
3つの要点
✔️ 自撮り画像の顔認識向けに新しいデータセット「WSD」を提案
✔️ WSDは照明、視点、ぼかし、反射など実シナリオに沿った多様性が高いデータセットを構築
✔️ 顔検出・顔認識タスクにおいて既存のデータセットと比較検証
WSD: Wild Selfie Dataset for Face Recognition in Selfie Images
written by Laxman Kumarapu, Shiv Ram Dubey, Snehasis Mukherjee, Parkhi Mohan, Sree Pragna Vinnakoti, Subhash Karthikeya
(Submitted on 14 Feb 2023)
Subjects: Computer Vision and Pattern Recognition (cs.CV)
code:
本記事で使用している画像は論文中のもの、紹介スライドのもの、またはそれを参考に作成したものを使用しております。
概要
最近、オンラインの本人確認の普及などによって自撮りを求められることが増えています。しかし、自撮りはカメラと顔が近いため、一般的な画像と比べて顔が大きく写ったり、加工アプリでエフェクトが加えられていることが多く、従来のデータセットでは顔認識が難しいのが現状です。
そこで、この論文では、自撮り画像の顔認識に特化した新たなデータセット「Wild Selfie Dataset(WSD)」を提案しています。WSDは、従来のデータセットとは異なり、実シナリオを考慮して、加工や歪み、ブレ、逆光など様々な条件が考慮されています。
WSD(Wild Selfie Dataset)とは
Wild Selfie Dataset(WSD)は、自撮りの顔画像を使った顔認識向けのデータセットです。18歳から31歳の42人(女性24人、男性18人)からなる45,424枚の顔画像が構成されています。このうち、40,862枚が学習データ、4,562枚がテストデータです。
自撮りの実シナリオを再現するため、非常に様々な状態の画像が用意されています。下図は、WSDのサンプルです。ARフィルターがかかった画像、反射した画像、ぼやけた画像、顔の一部が隠れた画像、照明条件が異なる画像、スケールが異なる画像、表情が異なる画像、位置合わせが異なる画像、カメラの視点が異なる画像、アスペクト比が異なる画像などが含まれています。
各人物の平均画像数は1,082枚で、最小数と最大数は518枚と2,634枚です。下図は、学習データ(左)とテストデータ(右)の被験者ごとの画像数を分布です。学習データとテストデータが同じ分布で分割されていることがわかります。
データセットで収集した画像は、プロジェクトの協力者が自撮りして提出した動画像です。自撮り画像は、スマートフォンの前面または背面カメラで自撮り棒などを使って撮影したもの、あるいは、ラップトップのカメラで撮影したものです。自撮り動画は、スマートフォンの前面カメラで撮影したものです。協力者とは、非営利の研究開発目的で画像を使用することに同意の上、契約を締結しています。
自撮りされた動画像を収集した後、サポートしていないファイル形式や破損した動画像は削除しています。また、動画はマルチメディアフレームワーク「FFmpeg」を使用してフレームを分割して画像を抽出しています。それぞれ、表情、照明状況、背景などに応じて、さまざまな枚数の画像が抽出され、すべてのデータが画像形式になります。また、ピクセル間で一致度を確認して、重複画像を排除しています。
次に、顔検出と顔認識のタスクで利用するためにアノテーションをしています。まず顔検出のためにDlibを使用して顔を検出し、顔のバウンディングボックスの左上と右下の座標を取得しています。座標はバウンディングボックスの幅と高さを計算するために使用し、最終的なバウンディングボックスのアノテーションには、左上の座標 (X、Y)、幅 (W)、高さ (H) が含まれています。ただし、このままでは、顔が含まれていないバウンディング ボックスや、他のバウンディングボックスと大きく重なるもの、あるいは、検出漏れしている顔が含まれているため、人手による確認と修正も行なっています。また、顔認識のタスクで使用するために、データ収集に協力した42人全員に対して01から42のIDを付与しています。
最後に、カメラの動きを分析するために頭部姿勢推定でデータ分布を調べています。頭の向きは顔の位置とアライメントによって決まります。カメラは、X、Y、Z軸周りで回転します。それぞれ、Yaw、Pitch、Rollの3つの対応する角度があります。OpenCVと6つの重要なランドマーク(左目左端、右目右端、口左端、口右端、鼻中央先端、顎中央先端)を使用して画像の頭の向きを推定しています。WSDのデータ分布は下図のようになります。
既存のデータセットとの比較
下表では、WSDに含まれるデータの種類を既存のデータセットを比較しています。WSDは、ぼやけた画像、ミラー反射、ARフィルターを使用した自撮り画像を含む唯一のデータセットであることがわかります。既存のデータセットと比べて、多様性の高いデータセットであることがわかります。
また、下表は、WSDと既存のデータセットの被験者数、画像数、公開/非公開、アノテーション内容を比較しています。WSDは被験者数とサンプル数は少ないですが、制約のない環境(実シナリオに近い環境)による被験者自身によって撮影された画像を収集しています。一方で、既存のデータセットはほとんどがインターネットから限られた状態の画像がクロールされています。
また、WSDは事前に研究利用の同意を取得しており、公的に利用可能なデータセットとしては唯一のものです。
顔検出(Face Detection)の性能比較
下表はYOLOv3とMTCNNを使用して、WSDと既存のデータセットで顔検出の性能(mAP)を比較した結果です。WSDはいずれのモデルも、FDDBとWider Faceと比べると高い値を示しています。
これは、WSDと既存のデータセットの画像の性質の違いによるものとしています。 自撮り画像は近い距離で撮影されるため、画像に占める顔の割合が大きく、自撮り画像ではないデータセットと比べると検出しやすいと考えられます。また、WSDのほとんどが顔が1つだけ写っている画像で構成されていることも、自撮り画像ではない既存データセットと比べると検出しやすくなっている理由と考えられます。
ただし、下図のようなに顔がはっきりと見えなかったり、逆光が強い場合にうまく検出されていないようです。また、顔の一部が隠れている場合も検出できないことが多いようです。ARフィルターを含む画像でも誤った検出が多くあったと報告しています。特に目の近くに遮蔽物があると検出精度が下がるようです。バウンディングボックス内に顔以外のものが含まれるケースへの対応は、自撮り画像の顔検出タスクにおいても課題となっています。
顔認識(Face Recognition) の性能比較
下表はVGGFace、VGGFace2、FaceNetを使用して、WSDと既存のデータセットで顔認識の性能を比較した結果です。下表から既存のデータセットと比較すると、WSDの性能が著しく低いことがわかります。
これは、WSDが、照明状況、ARフィルター、遮蔽、スケール変更、ぼやけ、顔の向きのバリエーションなど実シナリオに合わせたデータで構成されており、既存のデータセットと比べて多様性が高いことが理由であるとしています。なお、下図は全ての顔認識モデルで認識に失敗したケースです。
まとめ
この論文では、最近増えている自撮り画像を利用した顔認識のために新しいデータセット「WSD(Wild Selfie Dataset)」を提案しています。実シナリオを考慮した様々な条件(ARフィルター、ミラ反射、ぼかし、遮蔽、照明の変化、スケーリングなど)の画像が含まれており、既存のデータセットと比べて多様性が高いデータセットです。
また、WSDを使って顔検出と顔認識の性能評価もしています。顔検出では、YOLOv3とMTCNNを利用し、高い性能(mAP)を示しています。しかし、重度の照明変化や遮蔽物に対しては、課題があることがわかりました。一方で顔認識では、VGGFace、VGGFace2、FaceNetを使用して性能を評価した結果、既存のデータセットと比較して大幅に低い精度になりました。これは、WSDが実シナリオに考慮して、制御されていない条件下で撮影・加工された画像が多いことが原因としています。
自撮り画像の顔認識において、課題とされる加工や手振れ、逆光など、実際のシナリオに沿った画像を考慮したより高精度な顔認識モデルを構築するために、今後有用なデータセットとなるかもしれません。
この記事に関するカテゴリー