Viola Jones 検出器を実装しようとしています。分類器をトレーニングするのに十分な画像や時間がないため、これらの OpenCV を使用することにしました。
これまでのところ、全体haarcascade_frontface_alt.xml
をメモリ内の構造体にロードし、高速領域合計用の Integral Image を作成し、検出器の基本的なアルゴリズムを作成することができました。しかし、期待どおりに機能していません。
したがって、誰かが Viola Jones 検出器がどのように機能するかを知っていて、OpenCV がその構造をどのように使用するかを知っている場合は、私の仮定を確認または否定してください。
1、インテグラル イメージは、白の 0->1 の範囲の float 値で計算されます
2、すべてのフィーチャについて、長方形内の面積を取得し、重みを掛けて、すべての長方形と合計します
3、合計が > しきい値の場合、left_val が合計されますさらに、right_val が使用されていない場合
4、ステージ内のすべての分類子の合計が stage_threshold よりも大きい場合、顔である可能性があるため、次のステージに進みます。使用されていない場合、ブレーク
5、すべてのステージ、検出ウィンドウ、およびスケールについて繰り返します...
これまでのところ、顔を含むものを除いて、あらゆる種類の検出された領域を取得しています...
openCV カスケードの使用に関する私の仮定が間違っている場合は、助けてください。ありがとう。