2013-11-18 2 views
2

Если у меня есть четыре изображения тех же сцены с известным субпикселным сдвигом между ними, и я хочу, чтобы интерполировать эти четыре изображений на высоком разрешении сетки с помощью функции MatLab griddataинтерполяции с функцией MatLab GridData

см рисунка ниже: четыре изображения зеленые, серые, черные круги и белые треугольники enter image description here

у меня есть проблема с первым, вторым и третьим аргументом функции griddata

output = griddata(X,Y,Z,[1:numberOfHrColumns],[1:numberOfHrRows]','cubic'); 

Какими должны быть значения X, Y, Z?

Есть ли какая-либо другая функция matlab, которая может сделать эту интерполяцию?

ответ

1

Вам не нужно griddata, так как ваш источник находится на обычной сетке, всего interp2.

Синтаксис interp2 похож на griddata:

Vq = interp2(X,Y,V,Xq,Yq) 

Первые два аргумента (X и Y) являются координаты сетки из исходных данных, а третий (V) является соответствующие точки данных. Сетка высокого разрешения задается Xq и Yq.

+0

«Интер2» может интерполировать четыре изображения, я думаю, что он интерполирует только одно изображение. Как я могу определить 'X' и' Y' всех изображений с помощью 'meshgrid' – HforHisham

+0

Вы запускаете его для каждого изображения. 'meshgrid' прост, обычно как' [X, Y] = meshgrid (1: numCols, 1: numRows); '. – chappjc

+0

ОК, и после запуска 'interp2' для каждого изображения окончательное изображение представляет собой сумму? – HforHisham

Смежные вопросы