How can I resample an image in matlab?

Hello
I want to resample an image in matlab. I use imresample code of by Omer Demirkaya. but I have bellow error.
  • | |Error using griddedInterpolantSample values must be a single or double array.
Error in interp2/makegriddedinterp (line 214) F = griddedInterpolant(varargin{:});
Error in interp2 (line 135) F = makegriddedinterp(X, Y, V, method,extrap);
Error in imresample (line 49) nimg(:,:,i) = interp2(Ox,Oy,img(:,:,i),Nx,Ny,intmethod);| | *
Could you help me how can I resample an image?
Thanks for your help.

 Réponse acceptée

Walter Roberson
Walter Roberson le 15 Nov 2013
Before you start the interpolation, do
img = im2double(img);

3 commentaires

bkshn
bkshn le 15 Nov 2013
Hello Walter Roberson
Thanks for your answer I have another question, Could you answer me, I'll appreciate your help. I do resampling and done an algorithm on my Image, right now I want to return resampled image to first image(I want to undo resampling), what can I d0? I resample my image by this
NI = imresample([0.2,0.2],I,[1,1],'linear');
I want to undo resampling by this
NI2 = imresample([1,1],NI,[0.2,0.2],'linear');
but It didn't work!
Walter Roberson
Walter Roberson le 15 Nov 2013
What happens instead of it "working" ?
bkshn
bkshn le 16 Nov 2013
Modifié(e) : bkshn le 16 Nov 2013
I found my answer thanks alot for your help

Connectez-vous pour commenter.

Plus de réponses (2)

Alex Taylor
Alex Taylor le 15 Nov 2013

0 votes

The MATLAB interpolation functions require that the inputs be floating point, since interpolation is a floating point operation. Walter's comment is accurate, if you want to interpolate in double precision floating point, im2double will work.
To Image Analyst's point: are you trying to apply a geometric transformation like scaling, rotating, or a generic affine transformation to an image? If so, it would be easier to look at imresize, imrotate, or imwarp if you have the Image Processing Toolbox. These will take care of the resampling for you.

Community Treasure Hunt

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

Start Hunting!

Translated by