Я пытаюсь вычислить карту несоответствия на C ++ с помощью OpenCV 3.1. Я использую алгоритм StereoSGBM, и мне нужно уметь распознавать далекие и очень близкие объекты. Поэтому я установил MinDisparity на -16 и MaxDisparity 160.
Камера теперь правильно откалибрована, но полученная карта несоответствия обрезана слева. Величина разреза зависит от настроек MaxDisparity.
Я бы понял, почему это происходит с близкими объектами. Просто потому, что пиксели на одном изображении недоступны на втором изображении. Но с более далекими объектами этого не происходит. В таком случае объект полностью виден на изображениях обеих камер, но не виден на полученной карте диспаратности.
Посмотри на эту картинку. Почему моя рука не видна на результате?
Есть ли решение этой проблемы? Для расчета карты диспаратности для всей видимой области в случае высоких настроек MaxDisparity?