Исправление гарантирует, что совпадения будут найдены в одном ряду (для горизонтально разделенных камер). Если у вас есть сомнения по поводу исправления ваших изображений, вы можете попробовать сравнить строки, нарисовав горизонтальные линии между изображениями, разделенными по горизонтали. Если линии соответствуют тем же функциям, что и у вас все в порядке, см. рисунок ниже, где изображения НЕ исправлены. Тот факт, что они искажены, означает, что была коррекция искажения объектива, а также попытка (но не выполненная на самом деле правильно) исправление.
Теперь давайте посмотрим, что вы имели в виду под теми же изображениями. Вы имели в виду изображения одного и того же объекта, сделанные с разных точек зрения? Обратите внимание, что если изображения буквально одинаковы (одинаковые точки зрения), несоответствие будет равно нулю, как было отмечено в другом ответе. Определение несоответствия (для горизонтально разделенных камер) — это значение сдвига (в одной строке) между совпадающими объектами. Несоответствие связано с глубиной (если оптические оси камер параллельны) как несоответствие d=f*B/z, где z - глубина, B - базовая линия или расстояние между камерами, а f - фокусное расстояние. Вы можете преобразовать приведенную выше формулу в несоответствие / B = f / z, что в основном говорит о том, что несоответствие, связанное с разделением камер, поскольку фокусное расстояние связано с расстоянием. Другими словами, отношения мер по горизонтали и расстояний равны.
Если ваши изображения сделаны с камерами, смещенными по горизонтали, несоответствие (в простом алгоритме корреляции) обычно рассчитывается с помощью 5 встроенных циклов:
loop over image1 y
loop over image1 x
loop over disparity d
loop over correlation window y
loop over correlation window x
Несоответствие, или D_best, дает вам наилучшее соответствие окна между изображением1 и изображением2 по всем возможным значениям d. Наконец, диаграммы рассеяния предназначены для трехмерных облаков точек, в то время как несоответствие может быть скорее визуализировано в виде карты цветов тепла. Если вам нужно визуализировать 3D-реконструкцию или просто сказать 3D-облако точек, рассчитайте X, Y, Z как: Z=fB/D, X=uZ/f, Y=v*Z/f , где u и v связаны со столбцом и строкой изображения wxh как u=col-w/2 и v=h/2-row, то есть u, v образуют центрированную систему координат изображения.
person
Vlad
schedule
03.04.2014