そこで、2つのステレオ画像(左と右)の視差を計算します。これは正しいように見えます(元の画像と形状が多少似ているため)。その後、次の線を使用します:-
cvReprojectImageTo3D(&disparity, threeDimage, &Q);
そして、threeDimageで答えを取得します。これはマトリックスであり、次のようにアクセスします:-
for(int ii=0;ii<threeDimage->rows;ii++)
{
float *data = (float *)(threeDimage->data.ptr + ii * threeDimage->step);
for(int jj=0;jj<threeDimage->cols*3;jj=jj+3)
{
float a=data[jj];
float b=data[jj+1];
float c=data[jj+2];
fprintf(fpp,"%f %f %f \n", a,b,c);
}
}
しかし、問題は、正しい答えが得られないように見えることです。ファイルに繰り返し値がたくさん表示されます。何が問題になっている可能性があるかについてのヒントはありますか?マトリックスの走査は正しいですか?