Azzera filtri
Azzera filtri

I am trying enlarge an image using interpolation without using MATLAB commands, but my image isn't resizing properly.

1 visualizzazione (ultimi 30 giorni)
This function interpolates the rows first and then the columns from the interpolated rows.
function [enl] = enlarge(image)
img = imread(image);
img = double(img);
[m,n] = size(img);
% enl = zeros(m,n);
for i = 1:1:m
for j = 1:2:n-1
enl(i,j+1) = (img(i,j)+img(i,j+1))/2;
end
end
for i = 1:2:m-1
for j = 1:1:n
enl(i+1,j) = (img(i,j)+img(i+1,j))/2;
end
end
imshow(enl)
imwrite(enl, 'enl.gif')
end

Risposta accettata

Walter Roberson
Walter Roberson il 24 Ott 2013
You are interpolating in one direction, but then you are ignoring the results of that when you interpolate in the other direction. Both times you overwrite the matrix en1 with values computed solely from img.

Più risposte (2)

Image Analyst
Image Analyst il 24 Ott 2013
Why not just imresize?

Dingbang Liang
Dingbang Liang il 30 Apr 2018
i tried this one, but it doesnt work. error is saying unusage of the first column "image", how to solve it?
  1 Commento
Image Analyst
Image Analyst il 30 Apr 2018
It doesn't say that. "unusage" is not even a word. Paste the actual error message, including the line of code and the line numbers and the actual error message, as well as your script. In other words, attach your script, and any image or data that needs to be read in by it, and paste back here the complete error message ( ALL the red text).

Accedi per commentare.

Categorie

Scopri di più su Images in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by