How can I resample an image in matlab?
22 ビュー (過去 30 日間)
古いコメントを表示
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.
0 件のコメント
採用された回答
Walter Roberson
2013 年 11 月 15 日
Before you start the interpolation, do
img = im2double(img);
3 件のコメント
その他の回答 (2 件)
Alex Taylor
2013 年 11 月 15 日
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.
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!