動画の連続する 2 つのフレームの差分を取りました。私が得たのは(ご存知のように)動くオブジェクトを除いて黒いフレームです。動く物体は白です。フレーム内の白いピクセルの数をカウントしたい。つまり、画像を行ごとに調べたいのですが、i 番目のピクセルの値が指定された数 (たとえば 50) より大きい場合は、それらを配列に格納する必要があります。後で、この配列を使用して、実際にオブジェクトがあるか、ノイズがあるかを確認します。たとえば、ビデオ内で車が動いている場合、フレーム差分の後で、車を含むフレームの各ピクセルを行ごとにチェックして、その車を検出します。その結果、ビデオに移動中の車がある場合、ピクセルの値はフレーム差分後に 0 よりも大きくなります。動いている車のすべてのピクセルを合計して、それが車なのか単なる騒音なのかを判断する方法はありますか。前もって感謝します :)
質問する
308 次
2 に答える
0
ブロブ検出を使用できます:http : //www.labbookpages.co.uk/software/imgProc/blobDetection.html各「差分画像」の白いピクセルのブロブを検出します。ブロブを取得したら、ピクセル位置の平均を見つけることで、ブロブの中心を見つけることができます。次に、これらのセンターによって一掃されたパスを見つけて、いくつかの基準に照らしてチェックできます。
あなたの画像についてもっと知らなければ、私は基準を提案することはできませんが、例えば、あなたがそれらがまっすぐな道を移動するのを見ているなら、あなたはすべての点がほぼ同一直線上にあると期待するかもしれません。この場合、ブロブが見つかった勾配と点を取得し、線の点勾配形式を使用して線の方程式を取得できます。
y - y_1 = m(x - x_1)
たとえば、ポイント(4、2)と勾配3が与えられると、次のようになります。
y - 2 = 3(x - 4)
y = 3x - 2
次に、この線に対してすべての点をチェックして、それらが線に沿っているかどうかを確認できます。
于 2012-05-11T05:01:02.793 に答える