У меня есть ‘стерео_матч’ через компилятор g ++.
Моя среда это:
Я не знаю команду бега. Я старался :
./stereo_match --left left12.jpg --right right12.jpg --method BM --ndisp 32.
Но это не удалось с ошибкой:
Ошибка OpenCV: неверный аргумент (запрошена необъявленная позиция 0) в
getByIndex, file
/home/usera/opencv-3.1.0/modules/core/src/command_line_parser.cpp line
169прекращение вызова после создания экземпляра cv :: Exception
какие():
/home/usera/opencv-3.1.0/modules/core/src/command_line_parser.cpp:169:
ошибка: (-5) необъявленная позиция 0 запрошена в функции getByIndexПрервано (ядро сброшено)
Это вызвано неправильной строкой ключа парсера. В нем отсутствуют позиционные аргументы для двух имен файлов (самые важные параметры!)
В «stereomatch.cpp» вместо:
cv::CommandLineParser parser(argc, argv,
"{help h||}{algorithm||}{max-disparity|0|}{blocksize|0|}{no-display||}{scale|1|}{i||}{e||}{o||}{p||}");
это должно читать:
cv::CommandLineParser parser(argc, argv,
"{@image1||} {@image2||} {help h||}{algorithm||}{max-disparity|0|}{blocksize|0|}{no-display||}{scale|1|}{i||}{e||}{o||}{p||}");
тривиальная ошибка, возможно, пережиток предыдущей версии.
Других решений пока нет …