Fake It Till You Make It:合成した顔画像のみで顔分析!?
3つの要点
✔️ 精巧な顔データを合成することで、本物の顔データとのドメインギャップを最小限に抑制
✔️ 合成した顔データのみで顔関連モデルを構築し、SOTAと同程度の精度を達成
✔️ 本論文で構築した合成した顔データのデータセットを公開
Fake It Till You Make It: Face analysis in the wild using synthetic data alone
written by Erroll Wood, Tadas Baltrušaitis, Charlie Hewitt, Sebastian Dziadzio, Matthew Johnson, Virginia Estellers, Thomas J. Cashman, Jamie Shotton
(Submitted on 30 Sep 2021 (v1), last revised 5 Oct 2021 (this version, v2))
Comments: ICCV 2021.
Subjects: Computer Vision and Pattern Recognition (cs.CV)
code:
本記事で使用している画像は論文中のもの、紹介スライドのもの、またはそれを参考に作成したものを使用しております。
概要
顔認識の分野で用いられるデータセットには、いくつかの問題が指摘されています。これまでに公開されている大規模データセットは、インターネット上で収集した顔画像がほとんどです。例えば、俳優の名前で検索し、検索結果に表示される顔画像を収集する方法などがあります。この方法では、間違った検索結果が紛れていたり、名前以外のラベルが得られなかったり、特定の人種や性別、年齢に偏ることが多く、データ収集後、ラベルの確認や修正、データバランスの調整に、多大な労力を費やします。また、収集される顔画像は、本人の同意を得ていないものがほとんどです。このようにラベルノイズやプライバシーが問題視され、一部では利用が制限され始めています。今後、さらなる顔認識技術の向上のためには、より大規模で高品質な顔画像のデータセットが不可欠です。しかし、顔画像の提供者から一人一人同意を取得し、正確なラベルを付与し、データバランスを調整する作業を人間が行うのは現実的ではありません。
このような背景から合成した顔画像による大規模データセットが注目を集めています。これまでもいくつかの取り組みが報告されています。しかし、合成した顔画像と本物の顔画像にはドメインギャップがあるため、合成した顔画像による顔認識モデルでは、本物の顔画像に対して精度が低下することが知られています。
これまでは、合成した顔画像では、本物の顔画像を完全に代替することは難しいという考えが主流でした。そのため、合成した顔画像だけではなく、いくらかの本物の顔画像をMixupするなど、本物の顔画像を使ったドメインギャップの方法が提案されてきました。
しかし、今回紹介する論文では、本物の顔画像を利用せずに、合成した顔画像のみでドメインギャップを最小限に抑え、高精度な顔認識関連のモデル構築を試みています。少しでも本物の顔画像が必要になると、ノイズラベルやプライバシーの問題が発生します。この論文の試みのように、完全に合成した顔画像のみで顔認識関連モデルが構築できるようになれば、今後の顔認識関連の研究がしやすくなるため、顔認識の分野に大きく貢献すると考えられます。非常に期待される分野です。
合成顔データの生成プロセス
顔データの生成プロセスは、下図のように6段階で構成されています。まずはベースとなる顔データ(Template face)を用意し、そこにIdentity、Expression、Texture、Hair、Clothes、Environmentをランダムに適用しています。
Template faceは、過去の研究(Gerig et al., 2017、Li et al.,2017)を利用しています。次に、Identityデータは、Infinite RealitiesやTen24などで取得した511人分の3Dスキャンデータを利用しています。取得したデータ(Raw)は、下図のように人手でノイズや髪の毛を除去しています(Clean)。また、このデータからはIdentityだけでなく、Textureも取得しています。
また、3Dスキャンデータは、実社会の多様性を取り込めるように、下図のヒストグラムのように、できるだけ幅広い年齢、性別、人種のデータを収集しています。
以上からTemplate faceにIdentityを適用した顔データのサンプルは以下の通りです。
次に、Expressionです。顔のランドマークがアノテーションされた2Dの顔画像を使用しています。また、このアノテーションデータだけでは、表情の種類が不十分なため、表情変化のアニメーションを作成し、そのアニメーションのシーケンスから抽出した多種多様な表情を追加しています。
次に、Textureです。この論文では、本物の顔画像を代替できる顔画像を合成することを目指しているため、拡大した場合でも本物の顔そっくりに見えるよう工夫されています。上述したように、3Dスキャンデータから取得しており、ノイズや髪の毛を除去した顔データ(Clean)から 200セットの高解像度(8192 x 8192ピクセル)なTextureを収集しています。
各3Dスキャンごとに、肌の色のAlbedoと、2つの粒度のDisplacement(Coarse-とMeso-)を抽出しています。下図ように、Coarse-Displacement(+coarse disp.)では大きめな凹凸、Meso-Displacemen(+meso disp.)では毛穴などより詳細な凹凸が表現されています。このほかにも、必要に応じて、アイシャドウ、アイライナー、マスカラなどメイクアップエフェクトも適用しています。
次に、Hairです。512種類のヘアスタイル、162種類の眉毛、142種類のあごひげ、42種類のまつ毛が用意され、これらをランダムに組み合わせて適用しています。下図はサンプルです。なお、各アセットは、デジタルヘアの作成を専門とするアーティストによって作成されています。
最後に、Clothesを適用しています。30種類の服を作成しています。下図のように、フォーマル、カジュアル、および運動服などさまざまな種類が含まれています。さらに、Clothesに加えて、ヘルメット、ヘッドスカーフ、フェイスマスク、メガネなど、ヘッドウェア(36種類)、フェイスウェア(7種類)、アイウェア(11種類)も用意しています。なお、Clothesは適切な変形技術でぴったりとフィットするように作られ、メガネはこめかみと鼻梁に置かれるように作られています。
下図は、これまで紹介した各コンポーネント(Identity、Expression、Texture、Hair、Clothes、Environment)をランダムに適用させ、最終的に合成された顔画像のサンプルです。
非常に精巧な顔画像が合成されています。次では、この本物そっくりな顔画像が、本物の顔画像を代替できるかを評価しています。Face ParsingとFace Landmarkの 2つの一般的な顔分析タスクで評価しています。
合成データによるFace Parsing
Face Parsingは、顔画像をピクセル単位でラベリングするタスクです。各ピクセルごとに目、鼻、口などラベル付けして、正解ラベルとの一致率を評価します。合成した顔画像のデータセットで学習したモデルを、HelenとLaPaというよく知られているベンチマークを使用して評価しています。
下表は、Helenデータセットを用いて従来の手法と比較評価した結果(F1スコア)です。Overallは、鼻、眉、目、口を合わせて計算した値です。表から分かるように、Ours(synthetic)が、従来のSOTAと同程度の結果になっていることがわかります。
下表は、LaPaデータセットを用いて従来の手法と比較評価した結果(F1スコア)です。L-eyeとR-eyeは左目と右目、L-BrowとR-Browは左眉と右眉を表しています。 また、U-lip、I-mouth、L-lipは、上唇、上唇と下唇の間、下唇を表しています。こちらも、表から分かるように、Ours(synthetic)が、従来のSOTAと同程度の結果になっていることがわかります。
SOTAやOurs(real)は、本物の顔画像で学習し、本物の顔画像でテストしていますが、Ours(synthetic)は、合成した顔画像のみで学習し、本物の顔画像でテストしています。
合成データによるFace Landmark
Face Landmarkは、顔の目、鼻、口、輪郭などの位置(特徴点)をとるタスクです。下表は、300Wデータセットを用いて従来の手法と比較評価した結果(NME=Normalized Mean Error、FR=Failure Rate)です。値が低いほど高い性能を示します。68個の点を取り、評価しています。
こちらも、表から分かるように、Ours(synthetic)が、従来のSOTAと同程度の結果になっていることがわかります。下図は、本物の顔画像 (上) と合成の顔画像 (下) で学習したネットワークによる予測結果を表しています。
このほかにも、この論文では、顔データの生成モデルを利用することで本物の顔データでは取得が難しい高密度なランドマークやアイトラッキングのデータを容易に生成できる例も紹介しています。本物の顔画像にそっくりなデータを生成できるようになると、人手では収集やラベリングが難しいデータを容易に追加、生成できるようになるとしています。
まとめ
この論文では、精巧な顔画像を生成することで、本物の顔画像とのドメインギャップを軽減し、代替できることを示しました。これまで、合成した顔画像で代替する試みはあったものの、いずれも本物の画像をいくらか取り込んでいるものでした。しかし、今回、Face ParsingとFace Landmarkにおいて、合成した顔画像のみでSOTAと同程度の性能を示すことがわかりました。これは、他の多くの顔関連タスクにおいて、本物の顔画像の代わりに合成の顔画像で対処できる可能性を示した重要な成果です。顔画像へのアクセスが容易になれば、さらなる顔関連タスクの精度向上が望めるでしょう。今回の論文では、首から上の顔画像に限定されていたり、表情の変化に伴うシワが表現されていなかったり、本物の顔画像に比べると限定的な条件で検証されたため、今後、さらに広範囲な検証が期待されます。データセットが公開されています。興味がある方は、こちらからご確認いただけます。
この記事に関するカテゴリー