問題タブ [background-subtraction]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
3842 参照

opencv - 簡単ですが、opencvでの基本的なバックグラウンド減算ではありませんか?

OpenCVを使用した効率的な背景減算(ビデオファイルではなくカメラを除く、色付きの前景による背景減算)で言われていることのほとんどを作成する必要があります。問題は、そのトピックではバックグラウンド減算フェーズ自体に関する説明がないことです。

公式のopenCVブックとインターネットを見てきましたが、単純なフレーム差分では必要なものには十分ではありません. より精巧な Averaging Background Methodを理解しようとしましたが、平均を取得するためにフレームのcvAccの後で迷子になりました :/

誰かが私を少し助けることができれば、本当に感謝しています..

ありがとう!

私が今持っているコードで編集:

平均

適応された背景(#define でアルファが 0.05 の場合)

前景のみで最終イメージを作成する(完璧とはほど遠い!)

今すぐ問題!

現在の最大の問題は、写真のどこかに電球がある場合、手を「上」に数秒間置いた後、手を離すと、光が長時間前景にとどまることです。 .これについて何か助けはありますか?

0 投票する
1 に答える
2237 参照

opencv - opencv 関数 CvBGStatModel

この関数CvBGStatModel()がどのように機能するのか疑問に思っていました。これに使用されるアルゴリズムとは何か、平均およびフレーム差分アルゴリズムと比較してどのように優れた結果が得られるかを言いたいと思います。

前もって感謝します。

0 投票する
1 に答える
376 参照

opencv - opencvはどのように行列値をガウス混合で保存しますか?どの順番で?

「bgfg_gaussmix2.cpp」コードを検索しました。ガウス混合モデルでは、各ピクセル背景モデルの各ガウス混合の混合重み(w)、平均(nchannels値)、および共分散が格納されます。たとえば、その保存の順序を知りたいのですが、それは「重み、平均、共分散」、または「平均、共分散、重み」、または他の何かですか?前もって感謝します。

0 投票する
1 に答える
1455 参照

image-processing - 道路交通監視のためのバックグラウンド減算

ビデオストリーム(記録された)で車を検出し、いくつかの交通データを提供する必要があります。前景オブジェクトを抽出できるようにするためには、背景減算が最も重要なステップであることを読みました。

問題は、カラーフレームに対してこれをどのように行うかということです。私が読んだ記事は、白黒画像についてもっと話します。

フレーム差分を使用する自動背景削除を使用したいと思います(私の理解では)。

グレースケールで削除を行った場合でも、追跡されたオブジェクトをカラーでビデオを再生できますか?ポイントは、追跡された車を元のビデオで表示できることです。

0 投票する
3 に答える
5116 参照

opencv - BackgroundSubtractorMOG2 のマスク

BackgroundSubtractorMOG2 に、背景モデルに更新するピクセルと更新しないピクセルをどのように伝えることができますか。

オブジェクトがシーンに入って数十秒間停止すると、オブジェクトが背景モデルに吸収されるという問題に直面しています。

特定の停止したオブジェクトの周囲で学習率を下げるか、学習を停止したかったのですが、どうすればそれを行うことができますか? BackgroundSubtractorMOG2 は更新機能でのマスクの使用をサポートしていますか?

OpenCV 2.4.1 を使用しています。

0 投票する
1 に答える
6679 参照

c++ - OpenCV C ++ビデオキャプチャ画像の背景減算

OpenCV と C++ を使用して、背景からオブジェクトを差し引く簡単なプログラムを作成しようとしています。

アイデアは、VideoCapture を使用して次のことを行うことです。

  • 静的な背景をキャプチャします (オブジェクトなし)
  • 次に、現在のフレームを継続的にキャプチャし、それを背景から差し引きます

ただし、キャプチャしたデータを BackgroundSubtraction() 関数に送信するときに問題が発生します。それは私にエラーを与えます:

OpenCV_BackgroundSubtraction.exe の 0x77d815 で未処理の例外: 0xC000005: 場所 0x04e30050 に関するアクセス違反

ただし、動作するように見える場合とそうでない場合があります (Windows 7 64 ビットで Visual Studio 2010 C++ を使用)。

メモリ割り当てと関数の優先度に関係があるような気がします。VideoCapture グラバーは、BackgroundSubtraction() に送信する前にフレームをグラブ/書き込みするには十分に高速ではないようです。

ラップトップの内蔵 Web カメラは正常に動作します (画像が表示されます) が、コードに何か問題があります。遅延をいじってみましたが、影響はないようです。

これが私のコードです:

前もって感謝します!

Ps。作業を行うための組み込み関数がいくつかあるかもしれませんが、アルゴリズムを自分で作成したいと思います。

0 投票する
4 に答える
10264 参照

c++ - BackgroundSubtractorMOG2 でユーザー パラメータを設定できません

OpenCV ライブラリ バージョン 2.42。BackgroundSubtractorMOG2オブジェクトにパラメータを設定したい、例えば

backgroundRatioおよびfVarMinは、アルゴリズムを制御するパラメーターです。ユーザーは、ドキュメントに従ってこれらのパラメーターを変更できる必要があります。

のパラメータを設定するにはどうすればよいBackgroundSubtractorMOG2ですか?

EDIT以下の回答で正しく述べたように、これは OpenCV のバグでした。このバグは、OpenCV バージョン 2.4.6 で修正されました。

0 投票する
1 に答える
7160 参照

opencv - 深度画像の大津しきい値

kinectで取得した深度画像から背景を差し引こうとしています。大津の二値化とは何かを知ったとき、それでうまくいくと思いました。深度画像をグレースケールに変換すると、大津のしきい値を適用して画像を2値化できると思います。

しかし、私はこれをOpenCV 2.3で実装(実装しようとしました)しましたが、無駄になりました。ただし、非常に予期しないことに、出力イメージは2値化されます。しきい値処理を継続的に実行し(つまり、結果を画面に出力してフレームごとに分析します)、一部のフレームではしきい値が160であることがわかり、場合によっては0であることがわかりました。なぜこれが発生するのかよくわかりませんでした。kinectによって返される深度画像の0の数が多いことが原因である可能性があります。これは、測定できないピクセルに対応します。値が0のピクセルを無視するようにアルゴリズムに指示する方法はありますか?または、大津のしきい値処理は、私がやろうとしていることに適していませんか?

関連するコードのいくつかの出力とセグメントを次に示します。2番目のスクリーンショットは、ある程度の2値化が可能であるように見えるかもしれませんが、シーン内の椅子と背景に対応するピクセルを明確に区別するものを実現したいと思います。

ありがとう。

画像1 この2番目のスクリーンショットは、適切な2値化を実行できるように見えます

0 投票する
1 に答える
6713 参照

image - OpenCV2によるバックグラウンド減算

画像背景減算アルゴリズムを実装するOpenCV2.4.2関数またはクラスはありますか?

処理する画像は、ウェブカメラの画像などのポートレートになります。上半身(胸から上)だけを残し、背景にあるものはすべて取り除きたいです。

可能であれば、これらのアルゴリズムを自分で実装することは避けたいと思います。ただし、現在OpenCVに存在するものがない場合は、いくつか提案してください。

私は答えを探しようとしましたが、これまでのところ、私が見つけたものはすべて、ビデオまたは一連の写真の背景減算のみを扱っており、それは私が望んでいることではありません。単一の静的な独立した画像のみを処理したい。

0 投票する
3 に答える
4277 参照

c++ - BackgroundSubtractorMOG2 でシャドウ トラッキングを無効にするにはどうすればよいですか?

BackgroundSubtractor アルゴリズム BackgroundSubtractorMOG2 を使用しているときに、openCV でシャドウ検出を無効にしようとしています。ただし、bShadowDetection を false に設定した後でも、アルゴリズムは影を前景オブジェクトとして追跡しているようです。

シャドウ トラッキングを無効にするために、BackgroundSubtractorMOG2 クラスのさまざまなメンバーを調整しようとしました。BackgroundSubtractorMOG2 の重要なクラス メンバー

bShadowDetection や fTau などのシャドウ検出に関するものは効果がないようです。ドキュメントの説明も、どういうわけか十分ではありません。