3

私はいくつかの顔認識と幻覚の実験を試みていますが、最良の結果を得るには、まずすべての顔の画像が揃っていることを確認する必要があります。私は実験のために数千の画像を使用しています。

私は過去数日間インターネットを精査しており、そう主張するさまざまなプログラムを見つけましたが、Matlabs の下位互換性が低いため、多くのプログラムが動作しなくなりました。削除されたMatlab関数を呼び出しているため、実行されないいくつかの異なるプログラムを試しました。

私が見つけた最も近いものはSIFTアルゴリズムを使用していました.コードはここにあります

http://people.csail.mit.edu/celiu/ECCV2008/

これは画像の位置合わせに役立ちますが、残念ながら画像をダウンサンプリングするため、結果が非​​常にぼやけて見え、実行した実験に悪影響を及ぼします.

誰かがMatlabコードサンプルを持っているか、データベース内の顔を実際に整列させるコードに正しい方向に私を向けることができます.

どんな助けでも大歓迎です。

4

3 に答える 3

3

この最近の研究は、野生の顔検出、ポーズ推定、およびランドマーク ローカリゼーションで見つけることができます。これには実用的な Matlab 実装があり、非常に優れた方法です。
すべての顔のキーポイントを特定したら、それらを単一の参照にモーフィングして、そこから作業できます。

于 2013-11-27T12:56:05.267 に答える
2

PCA と固有ベクトルを使用する最も簡単な方法。X と Y の最も代表的なデータを見つけます。これで顔の向きがわかります。

このドキュメントで説明を見つけることができます:PCAアラインメント

于 2013-11-27T13:33:44.503 に答える
2

最初に顔を検出する必要がありますか、それとも既にトリミングされていますか? 顔を検出する必要がある場合vision.CascadeObjectDetectorは、Computer Vision System Toolbox のオブジェクトを使用できます。

顔を揃えるにはimregister、Image Processing Toolbox の関数を試すことができます。または、機能ベースのアプローチを使用できます。Computer Vision System Toolbox には、多数の関心点検出器、特徴記述子、およびmatchFeaturesイメージ ペア間で記述子を一致させる関数が含まれています。次に、この関数を使用して、estimateGeometricTransform2 つのイメージ間のアフィン変換または射影変換を推定できます。詳細については、このを参照してください。

于 2013-11-27T14:50:10.940 に答える