Я пытаюсь построить сканер структурированного света, используя OpenCV Structured Light API. Я использую стереокамеру и калибрую их между парами камер.
Ошибка стерео камеры составляет около 0,26
Индивидуальная ошибка камеры также составляет около 0,22
Но в конце декодирования кода серого я получаю странное искажение глубины на изображении (ссылка ниже). Результат должен быть ровным, но поверхность кажется очень пышной.
Что делает такую ошибку?
https://docs.opencv.org/3.1.0/dc/da9/tutorial_decode_graycode_pattern.html
Изображение ошибки искажения глубины
https://ibb.co/fp8jU6
https://ibb.co/f16op6
Когда я сравниваю с другими проектами с открытым исходным кодом, кажется, ошибка с переназначением.
Функции переназначения должны использоваться как ниже
remap( captured_pattern[0][i], captured_pattern[0][i], map1x, map1y, INTER_NEAREST, BORDER_CONSTANT, Scalar() );
remap( captured_pattern[1][i], captured_pattern[1][i], map2x, map2y, INTER_NEAREST, BORDER_CONSTANT, Scalar() );
Других решений пока нет …