2

BackgroundSubtractorMOG2 は、マスクではなく前景の輪郭を返します。OpenCVを使用して前景の適切なマスクを取得するには?

ありがとう、サジド

4

2 に答える 2

1

そこで得られた前景マスクは8ビットで、キャプチャされた画像はおそらく24ビット(3チャンネル)です。したがって、実際の画像に適用するには、マスクを 3 つのチャンネルにも変換する必要があります。

Mat maskrgb;
cvtColor(mask,maskrgb,CV_GRAY2BGR);
// now , apply it:
Mat draw = imagergb & (maskrgb > 0);
imshow("lalala", draw );
于 2013-09-19T21:40:37.563 に答える
0

入力が輪郭である cv::fillPoly 関数を使用すると、マスクが作成されます。 http://docs.opencv.org/doc/tutorials/core/basic_geometric_drawing/basic_geometric_drawing.html

于 2013-09-20T01:18:49.007 に答える