2

私は ATCS (Automatic Traffic Controller System) と呼ばれるプロジェクトに取り組んでいます。これは、信号機の前の車両量に基づいて信号機の持続時間を変更します。

openCV と backgroundsubtractorMOG を使用して車両を検出しました。車両が移動している場合は正常に実行されますが、赤信号がオンになると、すべての車両が数え切れなくなります。もちろん、それは私のソフトウェアが動作しなくなります。

これまでのところ、backgroundsubtractorMOG が最適なソリューションであることがわかっています。このシステムは、天候や光の強さなどのさまざまなバリエーションで機能するためです。現在のフレームと前のフレームを比較して、動くオブジェクトが前景 (CMIIW) として検出されるようにします。では、動いていて停止した車両はどうでしょうか?信号機の赤信号が点灯し、ドライバーに車両を停止させるためです。それでも前景オブジェクトとして検出されますか?

そこで、最適なアルゴリズムにお願いしたいと思います。車両が動いているとき、また赤信号のために車両が停止したときの車両の量をカウントする方法 - それでも車両として検出されます。

ありがとうございました :)

4

3 に答える 3

1

バックグラウンド減算が機能する場合(あなたが言ったように)、別のバックグラウンドモデルを追加しようとします。次に、背景減算を 2 回実行できます。1 回目は前の画像 (すべての移動オブジェクトで機能します) に対して、もう 1 回はlong term background model停止しているすべての車両 (および移動中の車両も) を検出しますが、照明条件が異なるといくつかの欠点がある可能性があります。

これらの背景モデルを見ViBeたり、作成したりすることができます。Gaussian-Mixture-Models

もう 1 つの方法は、Antonio が既に述べたように、何らかの追跡メカニズムを導入することです。バックグラウンド減算によって車両が検出されると (移動するオブジェクトのみが画像に表示されます)、追跡を開始すると、それらが再び検出されなくても (移動しないため)、そこにあることがわかります。したがって、「検出による追跡」ではなく、他の方法である追跡方法が必要です。カルマン フィルターまたは粒子フィルター処理、あるいは平均シフト追跡をお勧めします。

編集:背景減算技術に似た車両検出によく使用される1つの方法はLocal Binary Patterns (LBP)

于 2013-12-16T10:25:31.880 に答える
0

「車」および「バス」モデルで潜在的な SVM 検出器を使用して車両を検出し、取得した境界ボックスに単純な追跡を適用することをお勧めします。

潜在 SVM 検出器: http://docs.opencv.org/modules/objdetect/doc/latent_svm.html

于 2013-12-15T08:48:53.107 に答える