13

opencv を使用して顔を検出しようとしています。顔は正面ではありません。カメラは横から顔をキャプチャしたため、片目と口の一部のみが表示されます。複数の構成で HaarDetectObjects を試しましたが、メリットはありませんでした。カスケードを変更してテストしました: haarcascade_frontalface_default.xml、haarcascade_frontalface_alt.xml、haarcascade_profileface.xml で非常に悪い結果が得られました。他のより良いカスケードはありますか? 他の提案はありますか?

ありがとう

4

3 に答える 3

14

これで、Vadim Pisarevsky によって作成された、プロファイル フェース用の新しい LBP カスケードが OpenCV に追加されました。

https://github.com/Itseez/opencv/blob/master/data/lbpcascades/lbpcascade_profileface.xml

どうやら、それは正しい横顔のみを検出するため、すべての横顔を検出するには、画像を反転させて 2 番目のステップを実行する必要があります。

于 2013-02-20T04:15:35.800 に答える
10

参照したカスケード ファイル (例: aarcascade_frontalface_default.xml、haarcascade_frontalface_alt.xml、haarcascade_profileface.xml) は、完全な正面顔を検出するために完全な正面顔を使用して作成されます。したがって、顔の半分は、コンピューターにとって正しい形状として正しく認識されないことは明らかです。

この状況で行う必要があるのは、関心のあるオブジェクトを認識できるように OpenCV をトレーニングすることです。これは、この場合は「顔の半分」です。OpenCV の専門用語では、「HaarTraining」として知られています。これこれ、およびこの記事を次のように使用してください。トレーニングを開始するための出発点。

データ (顔の半分のさまざまな画像など) を使用して OpenCV をトレーニングすると、顔の半分を検出するために独自のコードにプラグインできる XML カスケード ファイルの準備が整います。

幸運を!

于 2012-01-10T05:57:04.173 に答える