ビデオから数えた車両


10

免責事項この質問をStackOverFlow投稿しましたが、こちらの方が適していることがわかりました。

私は画像処理に少し慣れていないので、コードではなく、問題の最適な解決策を見つけることについてお聞きしたいと思います。いいアイデアはまだ思いつかなかったので、アドバイスをお願いしたいです。

私はOpenCVを使用して、ビデオファイルまたはライブカメラから車両を数えるプロジェクトに取り組んでいます。そのようなプロジェクトに取り組んでいる他の人々は、通常、動いているオブジェクトを追跡してからカウントしますが、その代わりに、私は別の視点で作業したいと思いました。以下に示すように、ユーザーにビデオウィンドウにROI(関心領域)を設定し、この領域でのみ作業するよう依頼します(理由は、フレーム全体を処理しないことやパフォーマンスの向上など)。(ユーザーは複数のROIを設定することができ、ユーザーはROIの高さを通常の車の約2倍に比例感で設定するように求められます。)

絵1

これまでに、背景の更新、形態学的フィルター、しきい値処理、移動オブジェクトをバイナリイメージとして以下のような基本的な進歩を遂げました。

絵2

それらを行った後、私は最終的なしきい値処理された前景フレームの白ピクセルを数え、それが車であるかどうかを合計白ピクセル数をチェックすることで推定しようとしました(ROIの高さを知って静的計算により下限を設定しました) 。説明のために、サンプルグラフィックを描きました。

絵3

ご覧のとおり、白いピクセルを計算して、時間までに曲線を描くかどうかを確認し、車やノイズのようなものかどうかを判断するのは簡単でした。

問題

2台の車が同時にROIを通過するまで、私はかなり成功しました。私のアルゴリズムはそれらを1台の車として誤って数えました。私はこの問題にさまざまなアプローチを試みましたが、長い車のようにこれに似ていますが、満足のいく解決策が見つかりませんでした。

質問

このピクセル値カウントのアプローチでこのタスクを処理することは可能ですか?そうでない場合、何を提案しますか?


あなたの問題は人々が追跡を使用する理由です。また、一緒に移動する車(たとえば、トレーラーが付いている車)を1台または2台として数えたいですか?
Emre、2012年

まず、編集ありがとうございます。%100の精度は期待できません。トレーラー付きの車は無視できます。しかし、2台の別々の車が互いに非常に接近している場合、プログラムで両方を区別する必要がありますが、私にはわかりません。
Horizo​​n1710

回答:


5

最後の10-15フレームを追跡し、これらのフレームの白いピクセルの数を数えることができます。車両であるかどうかを区別できます。グラフが10〜15フレームの間高くなるため、車両であると言えます。それ以外の場合はノイズです。

複数の車線を並べて複数の車を数えるには、ピクセルを列ごとに確認できます。とりあえず、水平方向に白いピクセルがないかチェックする必要があります。


はい、あなたは垂直線をチェックすることについて正しいですが、どうやって?ROIの最初の行を確認して、車両のエントリポイントを特定できますか?
Horizo​​n1710 2012年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.