0
獲得3D點所以我計算2個立體圖像之間的差異(左,右)。它看起來是正確的 (因爲它的形狀與原始圖像有點類似)。經過這一點,我使用的線路: -錯誤的差距
cvReprojectImageTo3D(&disparity, threeDimage, &Q);
並獲得threeDimage.It的答案是一個矩陣,我訪問它: -
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);
}
}
但問題是,它似乎沒有給我一個正確的answer.I得到很多在我的文件中重複的值。關於可能出錯的任何提示?是否是遍歷?矩陣的正確性?
那麼我想重建一個臉,是最形象的中央部分的似乎相同的灰色但我認爲差距圖是正確的(我可以看到臉的輪廓)?我怎樣才能改進它以獲得更明智的三維雲。我使用一些最新的算法來生成視差圖。 – Manish 2011-03-13 19:08:18
等等,所以圖像中有不同顏色的補丁,但它像一切都顯示在一行!這是完全奇怪的,並使我認爲重投影部分可能有問題。 – Manish 2011-03-13 19:28:57