顔なりすましの微細な痕跡を可視化!なりすましの痕跡を応用したFace Anti-spoofingモデル「STDN」によって高精度を達成!
3つの要点
✔️ 顔のなりすまし防止(Face Anti-spoofing)のタスクで、なりすましの痕跡(Spoof Traces)を初めて検証
✔️ Spoof Tracesをマルチスケールの特徴量に分解するモデル「STDN」を提案
✔️ Face Anti-spoofingを視覚的に説明可能にし、SOTAのパフォーマンスを達成
On Disentangling Spoof Trace for Generic Face Anti-Spoofing
written by Rizhao Cai, Haoliang Li, Shiqi Wang, Changsheng Chen, Alex Chichung Kot
(Submitted on 16 Sep 2020 (v1), last revised 18 Sep 2020 (this version, v2))
Comments: Accepted at ECCV2020
Subjects: Computer Vision and Pattern Recognition (cs.CV)
Paper Official Code COMM Code
導入
2019年に顔認証元年と言われて以来、顔認証が多く利用されています。最近の大きな動きとして、総務省もオンライン本人確認に積極的に導入する意向を示しました。また、延期されていたオリンピックでは来年30万人のスタッフやボランティアの入場管理に利用される予定です。
しかし、顔認証の利用が広がり、認知が進むに連れて、顔認証の脆弱性も認識されるようになりました。Face Morphing、Face Adversarial Attacks、 Face Manipulation Attacks(ディープフェイク、顔のスワップなど)、Face Spoofing(プレゼンテーション攻撃など)など、さまざまな物理的・デジタル的な攻撃が報告されています。
これらの攻撃の中でも、顔のなりすまし(Face spoofing)は唯一の物理的な攻撃です。生きた人間の代わりに、写真、スマホ画面、3Dマスク、化粧などを利用して、他人になりすまして顔認証することができます。いずれの手法も、一般の人が誰でも簡単に作成することができるため、スマホの顔によるロック解除、建物の入退室管理、交通機関のセキュリティなど多くのアプリケーションの脅威になっています。そのため、顔認証システムの実用化において、顔のなりすましを検知する技術は重要です。
Face Anti-spoofingの研究は10年以上前から研究されており、最も一般的なアプローチの1つはテクスチャ分析を利用する手法です。他人になりすました顔データには、色の歪み、不自然な鏡面ハイライト、モアレパターンなどの特殊なテクスチャが発生しています。Face Spoofing手法ごとに異なるテクスチャが発生してしまい、除去やカモフラージュは難しく隠すことができません。何かしらの痕跡が残ってしまいます。
一般的な画像認識と同様に、初期の研究ではLBP+SVMやHOG+SVMのような従来の特徴抽出器と分類器で構築したモデルを利用していましたが、最近の研究では、ディープラーニングを活用して大幅に性能が向上しました。しかし、ディープラーニングを利用したモデルには2つの制限があります。
1つは、ほとんどの先行研究がPrint、Replay、3Dマスクのみを扱っています。つまり、限定されたFace Spoofing手法に対してのみ有効であることです。しかし、実用上ではPrint、Replay、3Dマスク、化粧を含むさまざまなFace Spoofingに対処できるモデルが求められます。
もう1つは、多くのモデルが出力として単一のスコアによる分類/回帰の問題として定式化していることです。いくつかの手法では、固定化、明瞭度、またはノイズ分析によって洞察分析を得ようとしていますが、本物(Live)となりすまし(Spoof)の明確な違いや分類器の判断根拠などは明らかにされていません。そこで、この論文では下図のようにFace Spoofingによる顔データからLive/Spoofを分類するとともに、「なりすましの明示的な痕跡(Spoof Traces)」と「本来の本物の顔データ(Reconstructed Live)」を分離するモデルを新しく提案しています。
この論文の取り組みによる貢献/特徴は以下の3つです。
- Face Anti-spoofingのバイナリ分類では、分類に有用な情報もあれば、照明条件などFace Spoofingとは無関係な情報も含間れている可能性があり、一般化の妨げになります。これに対して、Spoof Traceを抽出すると、Face Spoofingに直接関係のある本質的な情報に明示的に抽出し、その上で分類を根拠とすることで、より良い一般化性能を得ることができます。
- また、ここで得られるSpoof Tracesは視覚的に表すことができ、説明可能なAIモデルとしても有効です。
- さらに、Spoof Tracesは現実的なFace Spoofingのサンプルを合成するためにも有用です。Spoof Tracesを顔データに合成することで特殊な3Dマスクや化粧などのデータ数が少ないFace Spoofing手法のデータを生成することができ、学習データの不足を補うことができます。
手法
Face Spoofingによる入力された顔データからSpoof TracesとReconstructed Liveを得るために、下図に示すように、Spoof Trace Disentanglement Network(STDN)を提案しています。全体としてGANが応用されています。
まず、G(Generator)では顔データ(Input Face)を入力すると、Live/Spoofのバイナリ分類でFace Spoofingを検出します。そして、マルチスケールでSpoofの痕跡の要素(Spoof Trace Elements)を抽出して組み合わせることで、Spoof Traceを生成します。次に、Spoof Traceを利用して、Input FaceからLiveに相当する顔(Reconstructed Live)を再構築します。さらに、Spoof Traceに新しい顔データ(New Live Face)を追加することで新しいSpoof(Synthesized Spoof)を合成します。このSynthesized Spoofを合成する際には、幾何学的な不一致を修正して、Spoof TraceをNew Live Faceにうまく適合させるために、下図のようにSpoof TraceをNew Live Faceに合わせて変形させる3D Warpingを導入しています。
最後に、Reconstructed LiveとSynthesized Spoofの再現性を向上させるために、マルチスケールのD(Discriminator)を導入しています。Synthesized Spoofは、Spoof Traceを正解ラベルとして利用できるため、Generatorの学習に利用することができます。
実験
ここでは、STDNの既知のなりすましと未知のなりすましの両方に対するパフォーマンスを評価しています。また、Spoof TraceでFace Spoofing手法の分類を行うことでSpoof Traceの有用性を定量的に評価しています。さらに、Spoof Traceの抽出と新しいSynthesized Spoofに関する視覚化、再現性の評価も行っています。
既知のFace Spoofingに対する性能
Oulu-NPU、SiW、SiW-Mの3つの主要なデータセットで実験を行っています。まずOulu-NPUによる結果です。Oulu-NPUはPrint AttackとReplay Attackが含まれ、高品質でテストも難しいため、Face Anti-spooingで広く利用されているベンチマークです。下表に示されているように、4つのプロトコルすべてで最高のパフォーマンスを達成しています。
プロトコル1はさまざまな外部環境(照明や背景など)による影響に対する汎化性能を評価するように設計されています。プロトコル2はさまざまな攻撃媒体(3Dマスクやプリンターなど)による影響に対する汎化性能を評価するように設計されています。プロトコル3はさまざまなカメラ機器(スマホデバイスなど)に対する影響による汎化性能を評価するように設計されており、プロトコル4はプロトコル1~3を組み合わせた実条件下での評価ができるように設計されています。
プロトコル1とプロトコル4で大幅に改善され、これまでの手法と比較してACERがそれぞれ30%、32%の減少となっています。一方で、プロトコル3およびプロトコル4では、一部のノイズが強いカメラでパフォーマンスがはるかに低くなっています。STDNが未知のSpoof Traceとして認識するため、BPCERが上昇しています。カメラのノイズとSpoof Traceの分離は、今後の重要な研究課題となりそうです。
次にSiWによる結果です。SiWもPrint AttackとReplay Attackが含む広く利用されているベンチマークです。カメラ機種は少なくなりますが、なりすまし手法や、ポーズ、照明、表情などの環境の変化が多くなります。下表に結果を示します。
プロトコル1は異なる顔のポーズと表情でのFace Anti-spoofingの一般化性能を評価するように設計されています。モデルの学習は、主に正面から見た顔である訓練動画の最初の60フレームのみを使用し、すべてのテスト動画で評価します。プロトコル2は同じFace Spoofingに対して、さまざまな攻撃媒体(3Dマスクやプリンターなど)に対する一般化能力を評価するように設計されています。
このプロトコルでは、3つのリプレイ媒体で訓練を行い、4つ目のリプレイ媒体でテストを行います。毎回異なる媒体を除外し、4つのスコアの平均と標準偏差で評価しています。プロトコル3は、未知の攻撃に対する性能を評価するために設計されています。このデータベースに基づいて、PrintからReplayへのクロステストを設計し、また、その逆のテストを行っています。
プロトコル1, 2ではこれまでのモデルの性能を上回り、プロトコル3でも同程度の性能を示しています。プロトコル3は、未知のFace Spoofingを検出する性能を評価することを目的としています(例えば、Printで学習して、Replayでテストする)。下図からわかるように、PrintとReplayのSpoof Traceが大幅に異っているため、今回提案するモデルをうまく一般化できていないことがわかります。左から1列目がReplay、2列目がPrintを表しており、(a)がInput Face(b)がSpoof Traceとなっています。
最後にSiW-Mによる実験です。SiW-Mには、Print、Replay、3Dマスク、Makeup、Partial Attackなど13種類のFace Spoofingが含まれており、Face Spoofingに対して包括的な評価ができます。結果は、下表からわかるように、すべてのFace Spoofingに対して高い性能を示していることがわかります。
未知のFace Spoofingに対する性能
SiW-Mに用意されている未知のFace Spoofingに対する性能評価のプロトコルを利用しています。下表に示されているように、STDNではEER全体で24.8%、ACER全体で15.5%と、従来のモデルに比べて大幅に改善されています。
DTLは未知のFace Spoofingを検出するために特別に設計されていますが、そうではないSTDNで既知および未知のFace Spoofing検出の両方で優れた性能を達成しています。具体的には、Transparent Mask、Mannequin Head、Impersonation Makeup、Partial PaperのEERが各々45.3%、54.2%、100.0%、81.8%の減少になっています。しかし、TDR=35.7%,FDR=0.5%であり,未知のFace Spoofに対応するには、実用化にはまだ課題となりそうです。
Spoof Traceによる分類性能
ここではSpoof Traceの抽出を定量的に評価するために、抽出されたSpoof Traceに対してSpoofing方法の分類を行い、分類精度を検証しています。Spoof Traceには、各々のSpoofing手法に固有の情報が含まれている必要があります。Spoof Traceに成功していれば、顔を見ずに分類に利用できます。
STDNが、Spoofing手法の分類ではなく、バイナリ分類のみで学習を終了した後、STDNを修正し、推定されたSpoof Traceに単純なCNN(AlexNet)を適用して、Spoofing手法の分類を行います。Oulu-NPUのプロトコル1と同じプロトコルに従って評価しています。結果は下表のようになります。3つのクラス分類のモデルと5つクラス分類のモデルは、それぞれ92.0%と83.3%の分類精度を達成しています。従来の手法と比較すると、3つのクラス分類のモデルで10%、5つのクラス分類のモデルで29%の改善が見られます。
さらに、同じ分類タスクをSpoof Traceを使わずに元の画像で学習すると、分類精度は、86.3%(3クラス)と80.6%(5クラス)となり、精度が低下します。これはSpoof TraceがFace Spoofing手法を区別するための重要な情報を含んでいることを示しています。
Spoof Traceによる可視化性能
下図に示すように、さまざまなSpoofing手法でSpoof Traceを抽出することに成功しています。図の(a)〜(n)は、それぞれLive、Print、Replay、Half Mask、Silicone Mask、Paper Mask、Transparent Mask、Obfuscation Makeup、Impersonation Makeup、Cosmetic Makeup、Paper Glasses、Partial Paper、Funny Eye Glasses、Mannequin Headを表しています。
例えば、(b)Print(c)Replayでは、はっきりと色の歪みが見られます。Replayではモアレパターンがよく検出されます。(H-J)Makeupでは、眉、口紅、ワックス、頬の陰影などがはっきりと検出されています。また、(f)Paper Maskでは、折り目や縁がはっきりと検出されています。ただし、(m)Funny Eye GlassesなどいくつかのFace Spoofingでは、説得力のある推定とはなっていませんが、正しい領域に着目してSpoof Traceの一部を切り離すことはできています。以上からSTDNによってFace Anit-spoofingに役立つ視覚的に説得力のあるSpoof Traceが分離できることがわかります。
まとめ
この論文では、Face Spoofingによる顔データから、なりすましの痕跡であるSpoof Tracesをマルチスケールに分解する新しいモデル「STDN」を提案しています。また、このSpoof Traceを利用することで、Face Anti-spoofingの一般化性能の向上と、なりすましの根拠の可視化に成功しています。
類似論文レコメンド
Face De-Spoofing: Anti-Spoofing via Noise Modeling
written by Amin Jourabloo, Yaojie Liu, Xiaoming Liu
(Submitted on 26 Jul 2018)
Comments: Accepted at ECCV2018
Subjects: Computer Vision and Pattern Recognition (cs.CV)
Paper Official Code COMM Code
Deep Tree Learning for Zero-shot Face Anti-Spoofing
written by Yaojie Liu, Joel Stehouwer, Amin Jourabloo, Xiaoming Liu
(Submitted on 5 Apr 2019 (v1), last revised 9 Apr 2019 (this version, v2))
Comments: Accepted at CVPR2019
Subjects: Computer Vision and Pattern Recognition (cs.CV)
Paper Official Code COMM Code
Noise Modeling, Synthesis and Classification for Generic Object Anti-Spoofing
written by Joel Stehouwer, Amin Jourabloo, Yaojie Liu, Xiaoming Liu
(Submitted on 29 Mar 2020 (v1), last revised 31 Mar 2020 (this version, v2))
Comments: Accepted at CVPR2020
Subjects: Computer Vision and Pattern Recognition (cs.CV); Image and Video Processing (eess.IV)
Paper Official Code COMM Code
この記事に関するカテゴリー