を使用してOpenCv 2.4.10
います。
最近、robotino を検出するために独自のカスケード分類器を作成しようとしました。240 のネガティブ サンプルと 650 のポジティブ サンプルがあります。しかし、私はに与えるべき値に混乱していますopencv_traincascade
。
numNeg
: 各段階で使用されるネガティブ サンプルの数を示します。このパラメータはどのように計算すればよいですか?numStage
:ステージ数はどのように言えばいいですか?
を使用してOpenCv 2.4.10
います。
最近、robotino を検出するために独自のカスケード分類器を作成しようとしました。240 のネガティブ サンプルと 650 のポジティブ サンプルがあります。しかし、私はに与えるべき値に混乱していますopencv_traincascade
。
numNeg
: 各段階で使用されるネガティブ サンプルの数を示します。このパラメータはどのように計算すればよいですか?numStage
:ステージ数はどのように言えばいいですか?考慮すべきいくつかの点:
numNeg
あなたが持っているすべてのネガティブサンプルになる可能性がありますが、あなたが持ってnumPos
いるすべてのポジティブサンプルよりもわずかに少なくなければなりません(おそらく、分類器がどのように訓練されているかについて簡単に読んでください). 正確な数は、持っているサンプルの数とトレーニングする段階によって異なりますが、おそらく最初から始めて、徐々に0.9 * numPos
作業を進めていくことができます。サンプルがなくなると失敗します。
トレーニングされたさまざまなステージのパフォーマンスを評価する必要があります。オーバーフィッティングにより、ステージ数が多いほど常にパフォーマンスが向上するとは限らないことに注意してください。
また、正と負の両方のサンプルがさらに必要になる場合もあります。一般的なネガティブ セットは、少し調べればオンラインで見つけることができます。うまく機能させるのは少し面倒ですが、それに固執してください!