2

私は家を使ってkinectでキャプチャします:

capture.retrieve( depthMap, CV_CAP_OPENNI_DEPTH_MAP )
capture.retrieve( bgrImage, CV_CAP_OPENNI_BGR_IMAGE )

深度ピクセル値を正しくするためにkinectをキャリブレーションする必要があるかどうかはわかりません。つまり、画像RBGからピクセル(u、v)を取得する場合、画像の深度からピクセル(u、v)を取得して深度の正しい値を取得しますか?

depthMap.at<uchar>(u,v)

どんな助けでも大歓迎です。ありがとう!

4

1 に答える 1

0

次のように登録がオンになっているかどうかを確認できます。

cout << "REGISTRATION     " << capture.get( CV_CAP_PROP_OPENNI_REGISTRATION ) << endl;

そうでない場合は、次のように設定します。

capture.set(CV_CAP_PROP_OPENNI_REGISTRATION,1);

また:

if(capture.get( CV_CAP_PROP_OPENNI_REGISTRATION ) == 0) capture.set(CV_CAP_PROP_OPENNI_REGISTRATION,1);
于 2012-08-05T09:37:51.110 に答える