2015-06-11 3 views
0

Калиброванные 2 одинаковые камеры с Opencv StereoCalib. У меня 0.32109 RMS ошибка и 0.386568 средняя ошибка reprogection results of calibratingчерные границы слева от объектов в opencv Карта глубины SGBM

Я думаю, что это не большая ошибка калибровки. Но я получаю this depth map с OpenCV SGBM алгоритм с черными левой границы

int sgbmWinSize = 9; 
    int cn = img1.channels(); 
    sgbm->setPreFilterCap(63); 
    sgbm->setBlockSize(sgbmWinSize); 
    sgbm->setP1(8 * cn*sgbmWinSize*sgbmWinSize); 
    sgbm->setP2(32 * cn*sgbmWinSize*sgbmWinSize); 
    sgbm->setMinDisparity(0); 
    sgbm->setNumDisparities(numberOfDisparities); 
    sgbm->setUniquenessRatio(10); 
    sgbm->setSpeckleWindowSize(100); 
    sgbm->setSpeckleRange(32); 
    sgbm->setDisp12MaxDiff(1); 
    sgbm->setMode(alg > 1 ? StereoSGBM::MODE_HH : StereoSGBM::MODE_SGBM); 

чем проблема?

ответ

0

Non-непроницаемая область маски В дополнении к картам диспаритета, для стерео зазоров в замки ИНГ оценки методы интересно иметь не- закупоренной области маски. Эта маска представляет в белом цвете пикселей на сцене, которые видны с обеих камер и в черном цвете пикселей, которые видны только с одной камеры

проблема «решена» с

for(int y=0;y<height;y++){ 
    for(int x=0;x<width;x++){ 
     if(imageData[y*width+x]==0){ 
      imageData[y*width+x]=x>width/2?imageData[y*width+x+1]:imageData[y*width+x-1];}}}