2 つの顔を (おそらくOpenCvを使用して) 比較し、類似度のスコアを取得する方法はありますか? 顔認識アルゴリズムを適用することを意味しますが、データセット全体ではなく、2 つの顔の間でのみ適用します。
問題は、たとえば、Eigenfacesには少なくとも 2 つのトレーニング イメージが必要なことです。
2 つの顔を (おそらくOpenCvを使用して) 比較し、類似度のスコアを取得する方法はありますか? 顔認識アルゴリズムを適用することを意味しますが、データセット全体ではなく、2 つの顔の間でのみ適用します。
問題は、たとえば、Eigenfacesには少なくとも 2 つのトレーニング イメージが必要なことです。
はい、絶対に固有顔を使用できます。トレーニングの顔は、顔認識のために比較している 2 つの顔とは何の関係もありません。たとえば、100 個の顔のトレーニング顔ギャラリーを用意します。次に、2 つの顔 (face_1 と face_2) を比較するために、トレーニング ギャラリーの 100 個の顔で各顔の固有面分解を行います。たとえば、face_1 = [2 3 1 5...]*[eigFace1 eigface2 eigface3 eigface4...]' と、面 2 についても同じです。上記の例 [2 3 1 5...] で示したそのベクトルを、ある種の距離アルゴリズム (ユークリッド距離またはその他の距離メトリックであるかどうか) で 2 つの顔分解のそれぞれについて比較します。距離が特定のしきい値内にある場合、それらは同じであると言えます。固有顔を使用している場合は、ポーズ、照明条件、サイズ、すべてのトレーニング画像の背景と比較しようとしている顔はすべて正規化する必要があります。目、鼻、口もできるだけ一列に並べる必要があります。