Карта дисбаланса OpenCV C ++ StereoBM ограничена расстоянием - PullRequest
0 голосов
/ 21 ноября 2018

Как я уже писал в заголовке, у меня проблема с несоответствием, генерируемым стереоБМ.

Проблема в том, что я вижу различия только в диапазоне расстояний, т.е. я вижу себя, если стою от 1 метра до 2 метров, до и после того, как я вижу только черные (дыры, используя словарь OpenCV)).

Мне нужно, чтобы я мог создать карту глубины с расстоянием более 2 метров, и я не знаю, почему существует это ограничение.

Есть ли проблемы, связанные с калибровкой или выпрямлениемпроцесс?

Надеюсь, вы мне поможете.

edit:

https://mega.nz/#!c5BnlCxT!U0EVi2cizy3fJbyfUF7m3haBibhz-SJpecdw0hYjFv8

https://mega.nz/#!RgBnhY4Z!v2CJKVRAPGK0cco1C02AFc8HeUgTCfhrTtWZs4aREqQ

https://mega.nz/#!IpJnRQSb!YVfd094W2KfRr6gdyiduiwJtkr2n13TVaGf1THvTM3A

здесь есть необработанные изображения (неискаженные), dmap после процесса выпрямления и исходный код, который я использую для проверки калибровки, ниже.

    bm->setPreFilterType(StereoBM::PREFILTER_XSOBEL);
    bm->setPreFilterSize(preFilterSize);                                        //31
    bm->setPreFilterCap(preFilterCap);                                      //31
    bm->setBlockSize(blockSize);                                            //31
    bm->setMinDisparity(minDisp);                                           //-5
    bm->setNumDisparities(numDisp);                                         //16
    bm->setTextureThreshold(textThres);                                 //10
    bm->setUniquenessRatio(uniqueRatio);                                        //15
    bm->setSpeckleWindowSize(speckleSize);                                  //101
    bm->setSpeckleRange(speckleRange);                                      //32
    bm->setDisp12MaxDiff(dispDiff);                                 //1
    cvtColor(img1,img1gray,CV_BGR2GRAY);
    cvtColor(img2,img2gray,CV_BGR2GRAY); 
    bm->compute(img1gray, img2gray, disp);
    disp.convertTo(disp8, CV_8UC1, 255/(numDisp*16.));
    displayImages();

Все параметры настраиваютсяв реальном времени с ползунками и значением, прокомментированным после каждой строки, является значение по умолчанию или начальное значение.

Спасибо за ваше терпение.

...