6

CvRectを使用して、顔の座標を検出できます

detectFace(IplImage * pImg, CvHaarClassifierCascade * pCascade, CvMemStorage * pStorage)

しかし、私の問題は、人が笑顔になったときにwhitePixelValueを見つける方法です。

そして、どのスマイルオフセットが適切ですか?150の値は正確ですか?

スマイルハーカスケードはまったく機能しません。白いピクセルだけでロジックを使って何かをする必要があります

助けてください!!!

更新:私の報奨金は無駄になると思います..このスレッドで専門家の反応は得られませんでした。私はアルゴリズムを探していました:(

4

2 に答える 2

7

歯と肌の色の違いで笑顔を見つけたいと思いますよね?唇のピクセルの強度は歯のピクセルと大きく異なるため、おそらくそれは理にかなっています。もしそうなら、私は2つのアプローチを提案します。

1つ目は、顔領域のラプラス変換を計算することです。ラプラシアンの最大値を持つ座標は、隣接するピクセル強度間の最大の差に対応します。笑顔には最もコントラストの高いピクセルが含まれていると思います。再度しきい値を選択する必要がありますが、この場合、しきい値は画像の光の状態に依存しません。

2番目のアイデアは、ピクセルをすべての顔のピクセルの平均値と比較する必要があることを除いて、最初のアイデアと似ています。ここで、平均値に関して値が比較的高すぎるピクセルは、歯のピクセルと見なされます。ちなみに、のようなものcvAdaptiveThresholdが役立つかもしれません。

于 2011-05-05T17:38:33.747 に答える
0

このプロジェクトをチェックしましたかhttps://github.com/beetlebugorg/PictureMe
これは本当に素晴らしいプロジェクトです。必要なものが見つかると思います。

于 2011-05-13T05:41:05.440 に答える