Я пытаюсь написать свою собственную функцию для увеличения входного изображения с помощью алгоритма интерполяции Nearest-neighbour. Плохая часть - я могу видеть, как она работает, но не может найти сам алгоритм. Я буду благодарен за любую помощь.
Вот что я пробовал для увеличения входного изображения в 2 раза:
function output = nearest(input)
[x,y]=size(input);
output = repmat(uint8(0),x*2,y*2);
[newwidth,newheight]=size(output);
for i=1:y
for j=1:x
xloc = round ((j * (newwidth+1)) / (x+1));
yloc = round ((i * (newheight+1)) / (y+1));
output(xloc,yloc) = input(j,i);
end
end
Вот результат после Mark предложение