画像内の前景オブジェクトの視差マップを抽出しようとしています。フォアグラウンドオブジェクトはカラーを使用して抽出され、最終目的は抽出されたオブジェクトの座標を決定することです。以下は、赤みを帯びたオブジェクトとビューのマスクされた左の画像は前景マスク画像の視差マップ
を抽出し、その後、右の画像
がある背景には、基本的に私はなりたい巨大なウィンドウです無視され、私は赤い(または私が後に選択する色)オブジェクトの位置を見つけることだけを気にします。 OpenCVの例ではSGBMアルゴリズムのパラメータで遊ん後
、主に
int SADWindowSize
int minDisparity
int numberOfDisparities
私はより正確なアルゴリズムは均一で非常にうまく対処することができませんでした、満足のいく結果を得ることができませんでしたマスクされた部分の質感。説明するために2つの例を掲載します。最も顕著な結果が得られるので、これらの例では、SADWindowSize
が唯一のパラメータです。
例1:小さなウィンドウサイズ= 23及び視差数= 64
有する:小さなウィンドウサイズ= 9と視差数= 64例2
ウィンドウのサイズが大きくなると、結果がより鮮明になり、望ましくない結果になります。
質問:ディスパリティマップを計算するときにバックグラウンドをマスクするのは間違ったアプローチですか?別の方法として、ディスパリティマップを計算してからマスクを適用する方法がありますが、この場合の結果の妥当性についてはわかりません。
カメラと較正された画像、および画像(およびマスク)は修正されています。
あなたのロジックは正しいです、私はこの点を逃した。ありがとうございました。 –