固有顔: 固有顔で視覚認識の深さを探る
By Fouad Sabry
()
About this ebook
アイゲンフェイスとは
固有顔は、人間の顔認識のコンピューター ビジョンの問題で使用される場合に、固有ベクトルのセットに与えられる名前です。 認識に固有顔を使用するアプローチは、シロビッチ と カービィ によって開発され、マシュー・ターク と アレックス・ペントランド によって顔の分類に使用されました。 固有ベクトルは、顔画像の高次元ベクトル空間にわたる確率分布の共分散行列から導出されます。 固有面自体は、共分散行列の構築に使用されるすべての画像の基本セットを形成します。 これにより、より小さい基底画像セットが元のトレーニング画像を表現できるようになり、次元が削減されます。 分類は、基底セットによって顔がどのように表現されるかを比較することによって達成できます。
どのようなメリットがあるのか
(I) 以下のトピックに関する洞察と検証:
第 1 章: 固有顔
第 2 章: 主成分分析
第 3 章: 特異値分解
第 4 章: 固有値と固有ベクトル
第 5 章: 行列の固有分解
第 6 章: カーネル主成分分析
第 7 章: マトリックス分析
第 8 章: 線形力学システム
第 9 章: 多変量正規分布
第 10 章: 変動モード
(II) 固有面に関する一般のトップの質問に答える。
(III) 多くの分野で固有面を使用する実際の例。
この本は誰に向けたものなのか
専門家、学部生、大学院生、愛好家、趣味人、あらゆる種類の固有顔に関する基本的な知識や情報を超えて知りたい人。
Read more from Fouad Sabry
金融における新興技術 [Japanese]
Related to 固有顔
Titles in the series (100)
コンピュータビジョン: コンピュータービジョンの深部を探る Rating: 0 out of 5 stars0 ratingsノイズ減少: 明瞭度の向上、コンピュータ ビジョンのノイズ低減のための高度な技術 Rating: 0 out of 5 stars0 ratings色の見え方モデル: コンピュータビジョンにおける知覚と表現を理解する Rating: 0 out of 5 stars0 ratings画像圧縮: ビジュアルデータ最適化のための効率的なテクニック Rating: 0 out of 5 stars0 ratingsヒストグラム均等化: 画像のコントラストを強化して視覚認識を強化 Rating: 0 out of 5 stars0 ratings色空間: コンピューター ビジョンのスペクトルを探索する Rating: 0 out of 5 stars0 ratingsレティネックス: レティネックスでコンピュテーショナル ビジョンの秘密を明らかにする Rating: 0 out of 5 stars0 ratings共同写真専門家グループ: 共同写真専門家グループ規格でビジュアルデータの力を解き放つ Rating: 0 out of 5 stars0 ratings水中コンピュータビジョン: 波の下でコンピューター ビジョンの深さを探索する Rating: 0 out of 5 stars0 ratingsコンピュータステレオビジョン: コンピュータービジョンにおける奥行き知覚の探求 Rating: 0 out of 5 stars0 ratingsガンマ補正: コンピューター ビジョンの視覚的な鮮明さを高める: ガンマ補正技術 Rating: 0 out of 5 stars0 ratings視覚: 計算による視覚処理に関する洞察 Rating: 0 out of 5 stars0 ratingsアクティブな外観モデル: コンピュータ ビジョンにおけるアクティブな外観モデルの力を解き放つ Rating: 0 out of 5 stars0 ratingsホモグラフィー: ホモグラフィー: コンピューター ビジョンの変換 Rating: 0 out of 5 stars0 ratingsラドン変換: ビジュアルデータに隠されたパターンを明らかにする Rating: 0 out of 5 stars0 ratings多関節体の姿勢推定: コンピュータービジョンで人間の動きを解き放つ Rating: 0 out of 5 stars0 ratings画像ヒストグラム: 視覚的な洞察を明らかにし、コンピューター ビジョンの画像ヒストグラムの深さを探る Rating: 0 out of 5 stars0 ratingsフィルターバンク: コンピューター ビジョンのフィルター バンク技術に関する洞察 Rating: 0 out of 5 stars0 ratings修復: コンピュータビジョンにおけるギャップを埋める Rating: 0 out of 5 stars0 ratingsカラーマッピング: コンピューター ビジョンにおける視覚認識と分析の探求 Rating: 0 out of 5 stars0 ratingsバッグ・オブ・ワーズ・モデル: 言葉の入った袋 で視覚的知性を解き放つ Rating: 0 out of 5 stars0 ratingsアフィン変換: 視覚的な視点を解き放つ: コンピューター ビジョンにおけるアフィン変換の探索 Rating: 0 out of 5 stars0 ratings異方性拡散: 異方性拡散による画像解析の強化 Rating: 0 out of 5 stars0 ratingsカラーマッチング機能: コンピュータビジョンにおける分光感度を理解する Rating: 0 out of 5 stars0 ratingsハフ変換: コンピューター ビジョンにおけるハフ変換の魔法を明らかにする Rating: 0 out of 5 stars0 ratings輪郭検出: コンピュータービジョンにおける視覚認識の技術を明らかにする Rating: 0 out of 5 stars0 ratingsキャニーエッジ検出器: 視覚認識の芸術を明らかにする Rating: 0 out of 5 stars0 ratings適応フィルタ: 適応フィルタリングによるコンピュータビジョンの強化 Rating: 0 out of 5 stars0 ratingsトーンマッピング: トーン マッピング: コンピューター ビジョンにおける視点を照らす Rating: 0 out of 5 stars0 ratings射影幾何学: コンピューター ビジョンにおける射影幾何学の探索 Rating: 0 out of 5 stars0 ratings
Related ebooks
ランダムサンプルのコンセンサス: コンピュータビジョンにおけるロバスト推定 Rating: 0 out of 5 stars0 ratings双一次補間: バイリニア補間による画像の解像度と鮮明さの向上 Rating: 0 out of 5 stars0 ratingsアンチエイリアシング: コンピュータービジョンの視覚的な鮮明さを強化する Rating: 0 out of 5 stars0 ratingsハリスコーナーディテクター: 画像特徴検出の魔法を明らかにする Rating: 0 out of 5 stars0 ratings画像の分割: ピクセル精度を通じて洞察を引き出す Rating: 0 out of 5 stars0 ratings記述的な幾何学: 視覚領域のロックを解除: コンピューター ビジョンにおける記述幾何学を探索する Rating: 0 out of 5 stars0 ratingsクアッドツリー: 画像解析のための階層データ構造の探索 Rating: 0 out of 5 stars0 ratings部屋 シェーディング: ビジュアル レンダリングの深さを探る: コンピューター ビジョンにおけるフォン シェーディング Rating: 0 out of 5 stars0 ratingsグーローシェーディング: グーロー シェーディング: コンピューター ビジョンを照らす Rating: 0 out of 5 stars0 ratingsカラーマネジメントシステム: デジタル環境における視覚認識の最適化 Rating: 0 out of 5 stars0 ratingsベクターグラフィックス: コンピューター ビジョンでベクター グラフィックスをマスターする Rating: 0 out of 5 stars0 ratingsブレゼンハム ライン アルゴリズム: コンピュータビジョン向けの効率的なピクセルパーフェクトラインレンダリング Rating: 0 out of 5 stars0 ratingsマルチスペクトルイメージング: スペクトルのロックを解除: コンピューター ビジョンの進歩 Rating: 0 out of 5 stars0 ratings文脈に応じた画像分類: 効果的な分類のための視覚データの理解 Rating: 0 out of 5 stars0 ratings歩行者検知: 「コンピュータ ビジョン」の範囲内で「歩行者検知」というタイトルの本の副題を提案してください。提案されたサブタイトルには「:」を含めないでください。 Rating: 0 out of 5 stars0 ratings画像ベースのモデリングとレンダリング: 視覚的リアリズムの探求: コンピューター ビジョンのテクニック Rating: 0 out of 5 stars0 ratings画像コレクションの探索: コンピュータービジョンにおけるビジュアルランドスケープを明らかにする Rating: 0 out of 5 stars0 ratings7世代にわたる持続可能性: 人類を持続可能な未来に導き、7世代にわたる持続可能性の秘密を明らかにする Rating: 0 out of 5 stars0 ratings要素価格の均等化: 世界貿易の謎を解き明かし、要素価格の均等化を極める Rating: 0 out of 5 stars0 ratingsカラーモデル: コンピューター ビジョンのスペクトルを理解する: カラー モデルを探索する Rating: 0 out of 5 stars0 ratingsテクスチャ マッピング: コンピュータービジョンにおける次元性の探求 Rating: 0 out of 5 stars0 ratings社会的コスト: 経済学の謎を解き明かし、社会コストの世界をナビゲートする Rating: 0 out of 5 stars0 ratings傭兵: 戦略と生存の戦場 Rating: 0 out of 5 stars0 ratings生産コストの価値理論: 経済的価値を解き放ち、生産コスト理論をナビゲートする Rating: 0 out of 5 stars0 ratings労働価値理論: 経済の秘密を解き明かす、労働価値理論への旅 Rating: 0 out of 5 stars0 ratingsアングロサクソンモデル: アングロサクソンモデル、現代の繁栄の青写真を解明する Rating: 0 out of 5 stars0 ratingsダグラス・ノース: ダグラス・ノースの遺産を解き明かし、経済思想と制度を解明する Rating: 0 out of 5 stars0 ratingsコンテンツベースの画像検索: ビジュアルデータベースのロックを解除する Rating: 0 out of 5 stars0 ratingsモーゼス・アブラモヴィッツ: 繁栄を革新し、モーゼス・アブラモヴィッツの知恵を解き明かす Rating: 0 out of 5 stars0 ratings要素コスト: 要素コストが明らかになり、明確かつ自信を持って経済学をナビゲート Rating: 0 out of 5 stars0 ratings
Reviews for 固有顔
0 ratings0 reviews
Book preview
固有顔 - Fouad Sabry
第1章:固有面
固有顔 (/ˈaɪɡənˌfeɪs/)は、人間の顔認識のコンピュータビジョン問題で使用されるときに、一連の固有ベクトルに付けられる名前です。
高次元の顔画像ベクトル空間は、共分散行列が固有ベクトルを提供する確率分布をもちます。
固有面自体は、共分散行列が構築される基底セットです。
これにより、元のトレーニング画像をよりコンパクトな基本画像のセットで表すことができるため、次元が削減されます。
面は、基底セットでの表現を比較することで並べ替えることができます。
顔の特徴をコンパクトに表現する方法を見つけることが、固有面法の出発点でした。
Sirovich 氏と Kirby 氏は、主成分分析を使用して、顔写真のグループから特徴の基礎セットを作成する方法を示しました。
元のトレーニング セットの基本画像である固有画像は、線形にマージして画像を生成できます。
M イメージの学習セットが与えられた場合、N 枚が M の場合、N 枚の写真を主成分分析の開始点として使用できます>。
より多くの固有画像を使用すると、再構成誤差は減少します。ただし、必要な数値は M より小さくなります。
たとえば、M個のトレーニング顔画像の特定のセットに対して、N個の固有面を生成する必要があり、各顔画像は、すべてのK個の「特徴」または固有面の「比率」で構成できると言えます:顔画像1 = (E1の23%)+(E2の2%)+(E3の51%)+ .。
+ (1% en) です。
1991年、M. Turk と A. Pentland は、以前の成果に基づいて、顔認識の固有顔法を発表しました。彼らは、共分散行列の固有ベクトルを計算する方法を実証し、当時のコンピュータ上の多数の顔写真に対して固有分解を行うことを可能にしました。従来の主成分分析は、高次元の顔画像データセットに適用することが困難であることが判明しました。Turk と Pentland は、ピクセル数ではなく画像数に比例する行列を使用して、固有ベクトルを抽出する方法を示しました。
最初の成功の後、固有面法はさらに開発され、精度を高めるための前処理技術が組み込まれました。
主成分分析 (PCA) は、顔写真の大規模なコレクションに適用して一連の固有面を生成できる数学的手順です。固有顔は、顔のさまざまな画像を統計的に分析することによって作成され、非公式に「標準化された顔成分」のセットと考えることができます。すべての人間の顔は、これらの基本的な構成要素に分解できます。人の顔は、平均的な顔に固有面1の10%、固有面2の55%、固有面3の3%を加えたもので構成されている可能性があります。意外なことに、ほとんどの面の良好な近似は、少数の固有面のみを結合することで得られる可能性があります。さらに、各人の顔はデジタル写真ではなく、値のリスト(使用するデータベース内の固有顔ごとに1つの値)として保存されるため、各人の顔に占めるスペースははるかに少なくなります。
結果として得られる固有面は、明るい部分と暗い部分のコントラストのパターンを持ちます。このようにして、詳細な分析とスコアリングのために個々の顔の特徴を分離する場合があります。対称性は、顔の毛の有無、髪の生え際の位置、鼻と唇のプロポーションと同様に評価されます。一部の固有面は検出が困難なパターンを持ち、結果として得られる画像は人間の顔とほとんど似ていない場合があります。
顔認識以外にも、固有顔の作成や認識への応用として、手書き認識、読唇術、音声認識、手話やジェスチャーの解釈、医用画像の解析などが挙げられます。このため、「固有面」の代わりに「固有画像」という用語を使用することを好む人もいます。
固有面のコレクションを生成するには、次の作業が必要です。
トレーニングに使用する顔のサンプルを収集します。
トレーニング セットで使用されるすべての写真は、まったく同じ照明で撮影されている必要があり、すべての写真の目と口が正しく配置されるように正規化する必要があります。
また、これらはすべて共通のピクセル解像度 (r × c) にリサンプリングする必要があります。
1 つのベクトルは、ソース イメージのピクセルの列を結合することによってのみ 1 つのイメージと見なされ、r 要素× c 要素を持つ 1 つの列になります。
この特定の実装では、トレーニングセット画像は、すべて単一の行列T内に含まれており、各行列列は異なる画像を表すと仮定される。
平均を削除します。T の各イメージは、平均イメージ a を差し引く必要があります。
共分散行列 S の固有ベクトルと固有値を決定します。各固有ベクトルは元の写真と同じ成分数(次元)を持つため、別の画像として扱うことができます。この共分散行列の固有ベクトルは、固有面と呼ばれます。それらは、写真が平均から最も逸脱している方向を指しています。S を明示的に計算しなくても S の固有ベクトルを効率的に計算できるため、固有面は、この潜在的に法外な計算ステップにもかかわらず、実用的なアプリケーションがあります。
主な要因を選択します。
固有値と固有ベクトルを大きさの降順で並べ替えます。
主成分kの数 は、全分散に閾値εを設定することにより任意に決定される。
全分散 {\displaystyle v=(\lambda _{1}+\lambda _{2}+...+\lambda _{n})} , n = 成分数。
k は、 {\displaystyle {\frac {(\lambda _{1}+\lambda _{2}+...+\lambda _{k})}{v}}>\epsilon }
これらの固有面は、新しく投影された(平均減算された)画像が固有面の形状をどのように変化させるかを記録することにより、以前に見た面と見たことのない面の両方を表すために利用できるようになりました。
学習セット内のイメージが平均からどれだけ逸脱しているかは、対応する固有面の固有値で表されます。
一部の固有ベクトルのみを使用して画像を投影すると、詳細の一部が失われますが、最も高い固有値を持つ固有面を保持することで損失が減少します。
たとえば、100 × 100 の画像を使用すると、10,000 個の固有ベクトルが生成されます。
それが重要なコンテキストでは、100〜150個の固有面への投影は、通常、ほとんどの面を認識するのに十分であるため、1万個の固有ベクトルを比較的簡単に除去できます。
拡張エール面データベースBを使用して、固有面計算の例を見ることができます。
処理能力やデータストレージの不足を回避するために、顔画像は4×4=16倍にサンプリングされます。
すべてクリアします。すべて閉じる。 YaleFacesの読み込み
h, w, n = size(yalefaces); d = h * w; 画像をベクトル化する割合
x = reshape(yalefaces, d n]); x = double(x); % 減算平均
mean_matrix = mean(x, 2); x = bsxfun(@マイナス、 x、 mean_matrix); % 共分散の計算
s = cov(x'); % 固有値と固有ベクトルの取得
V、 D = eig(s); eigval = diag(D); % 固有値を降順で並べ替える
eigval = eigval(end: - 1:1); V = fliplr(V); % は平均と第 1 から第 15 主固有ベクトルを示します。
図, サブプロット(4, 4, 1)
imagesc(reshape(mean_matrix, h, w]))
カラーマップ グレー
i = 1:15 の場合
サブプロット(4, 4, i + 1)
imagesc(再形状(V(:, i), h, w))
終わり
多くの固有面は共分散行列 S によって生成されますが、大部分の面を表すために実際に必要なのはそれらのサブセットだけです。たとえば、最初の 43 個の固有面は、すべての顔写真に見られる多様性の 95% を占める可能性があります。次の式を計算に適用します。
%:95%の全体分散を表すのに必要な主成分の数を評価します。
eigsum = sum(eigval); csum = 0; i = 1:d の場合
csum = csum + eigval(i); テレビ= csum / eigsum; テレビ>0.95の場合
k95 = i; 壊す
終わり; 終わり; 多くの場合、イメージの共分散行列に対して直接 PCA を実行することは計算上困難です。
たとえば、100 ピクセル× 100 ピクセルのサムネイルを使用する場合、各画像は 10,000 次元空間内の点であり、共分散行列 S は 10,000 × 10,000 = 108 要素の行列です。
ただし、N個のトレーニング例がある場合、共分散行列のランクは最大でN-1になり、固有値がゼロでない固有ベクトルはN個1個以下になります。
トレーニングインスタンスが画像の寸法よりも少ない場合、モデルは苦労します。 主成分を計算する簡単な方法は次のとおりです。
トレーニング例の行列 T は前処理されており、各列は平均減算後の 1 つのイメージを表します。
共分散行列は S = TTT として計算でき、S の固有ベクトル分解 は次式で与えられます。
\mathbf {Sv} _{i}=\mathbf {T} \mathbf {T} ^{T}\mathbf {v} _{i}=\lambda _{i}\mathbf {v} _{i}しかし、TTTは大きな行列であり、対照的に、
\mathbf {T} ^{T}\mathbf {T} \mathbf {u} _{i}=\lambda _{i}\mathbf {u} _{i}次に、方程式の両辺にTを事前に掛けると、次のようになります。
\mathbf {T} \mathbf {T} ^{T}\mathbf {T} \mathbf {u} _{i}=\lambda _{i}\mathbf {T} \mathbf {u} _{i}つまり、ui が TTT の固有ベクトルである場合、vi = Tui は S の固有ベクトルです。
100 ピクセル× 100 ピクセルの 300 枚の画像のトレーニング セットがある場合、行列 TTT は 300 × 300 の行列であり、10,000 × 10,000 の共分散行列よりもはるかに管理しやすいです。
ただし、結果のベクトル vi は正規化されていないことに注意してください。追加のプロセスとして、必要に応じて正規化を使用できます。
X は、平均を減算した画像ベクトルとして列を持つデータ行列 d\times n を表す x_{i} ものとします。
そうしたら {\displaystyle \mathrm {covariance} (X)={\frac {XX^{T}}{n}}}
X に SVD があるとすると、次のように記述できます。
X=U{\Sigma }V^{T}この場合、の固有値分解 XX^{T} は次のようになります。
XX^{T}=U{\Sigma }{{\Sigma }^{T}}U^{T}=U{\Lambda }U^{T}ここで、Λ=diag ( の固有値 XX^{T} )
その結果、次のことは明らかです。
固有面 = k k\leq n ゼロ以外の特異値に関連付けられた U 最初の()列。
の i 番目の特異値 XX^{T}={\frac {1}{n}}( の i 番目の固有値 X)^{2}
データ行列XでSVDを行う場合、固有面を取得するために実際の共分散行列は必要ありません。
固有顔の開発は、顔の識別を改善する必要性によって拍車がかかりました。他の方法と比較すると、固有面はシステムの速度と効率により、より優れた性能を発揮します。固有面は次元の縮小に重点を置いているため、少量の情報で多数の被写体を表現できます。また、写真が大幅に縮小された場合の顔認識システムとしても非常に堅牢です。しかし、観測画像とプローブ画像に大きな差があると、劇的に失敗し始めます。
顔認識、システムのギャラリー内の画像は、その画像を構築する際の各固有面の相対的な重要性を特徴付ける重みのセットによって表されます。
解析のために新しい面がデータベースに追加されると、システムは、画像が固有面のセットに投影され、独自の固有値が決定されます。
これにより、プローブの前面を特徴付ける値のコレクションが得られます。
ギャラリー セットの重みがこれらの重みと比較され、最も近い一致が決定されます。
2つのベクトル間のユークリッド距離を見つけることは、最小値を最も近い主題として分類できる最も近い近傍を見つけるのと同じくらい簡単です。:590
顔識別の固有面手法は、クエリ写真が生成された固有面によって広がる顔空間に投影され、顔クラスに最も近い一致がそこに配置されることを前提に機能します。
擬似コード
与えられた入力画像ベクトル U\in \Re ^{n} は、データベースからの平均画像ベクトル M で、x を解くことによって k 番目の固有面の重要性を求めます。
w_{k}=V_{k}^{T}(U-M)次に、重みベクトルを形成します
W=[w_{1},w_{2},...,w_{k},...,w_{n}]W をデータベース内のイメージの W_{m} 重みベクトルと比較します。
ユークリッド距離を計算するには、.
d=||W-W_{m}||^{2}If d<\epsilon _{1} If (If If
もしそうなら \epsilon _{1}
顔画像ではない d>\epsilon _{2},U 場合。
各ギャラリー画像の重みは、被写体自体ではなく、その特定の画像に固有のデータのみを伝えます。正面から照らされた同じトピックのイメージは、強い左翼から照らされたイメージとは大きく異なる意味を持つ可能性があります。これにより、このタイプのシステムの範囲が制限されます。固有面に関する最初の研究では、光の変化に対して96%、方位の変化に対して89%、サイズの変化に対して64%の平均精度を示す実験結果が報告されました。照明や表情の変化の影響を受けにくくなります。次元削減フェーズでクラス固有の情報をより多く保持するために、Fisherface はラベル付きデータを利用します。
固有面とフィッシャー面に加えて、アクティブ外観モデルも実行可能なオプションです。この方法では、面の輪郭はインタラクティブな形状モデルによって定義されます。主成分分析は、顔の輪郭の大規模なコレクションから人間の顔の多様性を捉える基本的なモデルセットを作成するために使用できます。
次元の縮小とさまざまなタイプのバリエーションの基底図の作成は、現代の方法における主成分分析の2つの一般的なアプリケーションです。
Eigenfaceは、以下の用途で顔認識を実装するための低コストでわかりやすいソリューションです。
完全に自動化されたトレーニング手順があり、コードで簡単に実装できます。
固有面は、顔と画像の統計的複雑さを効果的に単純化します。
データベースの固有面が計算された後、リアルタイムの顔認識が可能になります。
大規模なデータベースはEigenfaceで問題ありません。
ただし、固有面法の欠点も簡単にわかります。
光、サイズ、および平行移動の変化に非常に敏感であるため、非常に正確な設定が必要です。
アイゲンフェイスは、感情の状態を正確に描写するのに苦労しています。
最も重要な固有面は、顔自体について特に情報を提供するものではなく、代わりに顔の照明をエンコードすることに主眼が置かれています。
最初の 3