IdentiFace:感情から性別までを捉えるマルチモーダル型の顔認証システムとその可能性
3つの要点
✔️ マルチモーダル顔認証システム「IdentiFace」の開発:顔認識に加えて性別、顔の形、感情などの生体特徴を組み合わせた高精度の顔認証システムを開発
✔️ 高い認識精度の達成:FERET、著者たちのデータセット、公開データセットを用いたテストで、性別認識で最大99.4%、顔の形状認識で88.03%、感情認識で66.13%の精度を達成
✔️ 適用されたデータセットと前処理の詳細:顔認識、性別分類、顔の形判定、感情認識の各タスクに適用されたデータセットとその前処理手法に関する具体的な手法の紹介
IdentiFace : A VGG Based Multimodal Facial Biometric System
written by Mahmoud Rabea, Hanya Ahmed, Sohaila Mahmoud, Nourhan Sayed
(Submitted on 2 Jan 2024 (v1), last revised 10 Jan 2024 (this version, v2))
Subjects: Computer Vision and Pattern Recognition (cs.CV); Artificial Intelligence (cs.AI)
code:
本記事で使用している画像は論文中のもの、紹介スライドのもの、またはそれを参考に作成したものを使用しております。
概要
顔認証システムの開発は、コンピュータビジョン分野の発展に大きく貢献してきました。そして、現在、複数の生体認証特性を効率的かつ効果的に組み合わせるマルチモーダルシステムの開発が盛んに進められています。
この論文では、「IdentiFace」というマルチモーダル型の顔認証システムを紹介しています。このシステムでは、顔認識に、性別、顔の形、感情などの重要な生体特徴情報と組み合わせています。VGG-16アーキテクチャをベースとしたモデルを使用し、異なるサブシステム間でのマイナーチェンジを行っています。
FERETデータベースから収集したデータで99.2%、著者たちのデータセットで99.4%、公開データセットで95.15%の性別認識精度を達成しました。また、顔の形状認識では、セレブリティの顔の形のデータセットを使用して、88.03%、感情認識では、FER2013データセットを使用して、66.13%のテスト精度を達成しています。性別認識タスクが比較的容易であり、顔の形状や感情認識タスクは、類似するクラス間での混乱が発生しやすいことが示唆されています。
「IdentiFace」というマルチモーダル型の顔認証システムは、セキュリティ、監視、個人認証などの分野での応用が考えられます。顔の特徴を活用することで、より効率的で正確な生体認証が可能になります。
データセット
ここでは、各タスクに応じて使用されたデータセットを紹介します。まず、顔認識では、NISTの「Color FERET」というデータセットを使用しています。このデータセットには、994人の11,338枚の顔画像が含まれています。このデータセットには13の異なる顔の向きが含まれており、それぞれに顔の回転度が付与されています。さらに、一部の被験者は眼鏡ありと眼鏡なしの画像を持っている一方で、その他の被験者は、さまざまなヘアスタイルの画像を含んでいます。この論文では、これらの画像の圧縮版を使用し、256 x 484ピクセルの画像サイズを使用しています。このデータセットは、その広範なバリエーションのために選ばれ、モデルが高い汎化性能を学習するのに役立ちます。さらに、4人の著者自身を新しい被験者としてデータベースに追加し、さまざまなシナリオでテストを実施しています。
次に、性別分類では、著者らの教員からデータセットを収集しています。当初は、15人の男性と8人の女性から構成されており、それぞれデータサイズを増やすために複数のバリエーションを持つ複数の画像を含んでいました。しかし、その後、被験者の数を増やし、最終的には31人の男性と27人の女性で、画像の総数(男性133枚/女性66枚)にまでデータサイズを増やしています。収集する際にトレーニング/バリデーションデータの分割は行われず、前処理の段階で行われています。また、比較のために、Kaggleの「Gender Classification Dataset」を使用しています。このデータセットは、トレーニングデータがクラスごとに約23,000枚、バリデーション用にはクラスごとに約5,500枚の画像に分割されています。
顔の形の予測では、そのタスクの複雑さのため、手動でのラベリングが必要であったため、著者らは、自分たちのデータセットを収集できず、最も人気のある顔の形のデータセットであるセレブリティの顔の形を含む「Face Shape Dataset」を使用しています。このデータセットは2019年に公開され、女性の被験者のみを含み、5つのクラス(丸型/卵型/四角型/長方形/ハート型)ごとに画像が100枚ずつで含まれています。
最後に、感情認識では、当初、このタスクのために著者隊が自らデータセットを収集していました。これには、22人の男性と16人の女性に分かれた38人の被験者が含まれています。各被験者は、特定の感情ごとに7枚の画像を持っており、クラスごとに38枚の画像で合計266枚の画像で構成されています。各クラスの画像は手動でラベル付けされています。一部の被験者は1つ以上のクラスに対して類似した表情を持っていたため、画像のラベリングと分類プロセスは比較的難易度の高いものになってしまいました。そこで、適切な感情データセットを収集するために。「FER-2013」というデータセットを使用しています。これは公開されており、7つのクラス(怒り/嫌悪/恐怖/幸福/悲しみ/驚き/中性)を含む30,000枚以上の画像で構成されています。すべての画像は48x48のグレースケール画像に変換され、すべてのクラスはほぼ均等な分布になっています。
手法
この論文では、それぞれのタスク間でネットワークをわずかに調整することで、複数の顔関連のタスクに適応できる単一のネットワークを構築しています。マルチモーダルシステムの主要なネットワークとしてVGGNetアーキテクチャを使用しています。基本的なVGG-16を実験し、最終的には主要な3つのブロックのみを持ち、最後の2つの畳み込みブロックを削除することで簡略化しています。これは主に、モデルがすでにさまざまなタスクで十分に機能していたため、パラメータの数とモデルの全体的な複雑さを減らすために行われれています。レイヤーの数、出力形状、パラメータの数に関するモデルの情報は、下表の通りです。
最終的にモデルをコンパイルする際には、損失関数としてsparse categorical cross entropy を用いたAdam optimizerを適用しています。モデルの過学習を防ぐために、早期停止も導入しています。
また、顔認識タスクの前処理は以下の通りです。
- DlibのCNNベースの顔検出を使用した顔検出
- 識別された顔を切り抜き、グレースケール画像に変換
- 128x128ピクセルにリサイズ
- クラスの数を5つ(Hanya、Mahmoud、Nourhan、Sohaila、その他)に変更
顔認識を除くすべてのタスクに対しては、以下のような前処理が適用されています。
- Dlibの68点の顔のランドマークを使用して、顔検出を適用
- 検出された顔はすべて切り取り、顔がない画像をフィルタリング
- 顔は128 x128にリサイズされ、グレースケールに変換
リサイズ後、各データセットはすべてのタスクに対してバランスの取れたものになるように、以下の方法で拡張されています。すべてのクラスにわたって公平な分布を確保するために、バランスが取れていない&小さいデータセットにのみ行われています。
データ拡張後のデータセットは以下の通りです。顔認識については、当初、Color FERETデータセットから「その他」クラスに対して11,338枚の画像を含んでいましたが、過学習を避けるために500まで減らしています。感情や性別識別のデータセットなど、いくつかのデータセットは、クラスごとに多くの画像があり、分布のバランスが取れていたため、データ拡張の必要はありませんでした。
実験
顔認識では、データセットを学習:テスト=80:20に分割し、モデルを訓練するために次のパラメータが使用されています。
- 学習率(lr) = 0.0001
- バッチサイズ = 32
- テストサイズ = 0.2
- エポック数 = 100
結果は次の通りです。
性別分類では、タスクをマルチクラス分類として捉え、女性被験者を0、男性被験者を1でラベリングしています。著者らによるデータセットによるモデルと公開データセットによるモデルの両方を学習するために、以下のパラメータが使用されています。
- 学習率(lr) = 0.0001
- バッチサイズ = 128
- テストサイズ = 0.2
結果は次の通りです。
下図は著者らによるデータセットのConfusion Matrixです。
下図は公開データセットによるデータセットのConfusion Matrixです。
顔の形の予測では、このタスクに対処するために、すべてのクラス用の1つのモデルと、3つのクラス(長方形/四角/丸)のみ用のモデルの2つの異なるモデルを試しています。これは、最小限に重なるクラスでモデルがどのように機能するかを観察し、すべてのクラスを含む他のモデルと比較するために行われています。2つのモデルには、以下のパラメータが使用されています。
- 学習率(lr) = 0.0001
- バッチサイズ = 128
- テストサイズ = 0.2
以下のようにラベル付けされています。
結果は次の通りです。
感情認識では、サポートベクターマシン(SVM)と畳み込みニューラルネットワーク(CNN)が試されています。サポートベクターマシン(SVM)の結果は次の通りです。
畳み込みニューラルネットワーク(CNN)の結果は次の通りです。
そして、結果を視覚化するために「IdentiFace」というマルチモーダル型の顔生体認証システムを、Pysideベースのデスクトップアプリケーションとして開発しています。オンラインでもオフラインでも顔生体認証を同時に行うことができます。
まとめ
さまざまな方法を試して、顔認識、性別分類、顔の形判定、感情認識に、各タスク用に独自のデータセットと、その他の公開データセットを利用しています。また、これらのデータセットを使い、すべてのタスクで最も優れた成果を出したため、VGGNetモデルを選択しています。さらに、最も性能が良いモデルを全て組み合わせて、IdentiFaceというマルチモーダル型の顔生体認証システムを開発しています。このシステムでは、顔認識、性別分類、顔の形判定、感情認識を一つに統合しています。
この記事に関するカテゴリー