Code covered by the BSD License  

Highlights from
Statistical Learning Toolbox

from Statistical Learning Toolbox by Dahua Lin
Functions for statistical learning, pattern recognition and computer vision, covering many topics.

slresizeimg(imgs, newsiz, interpker)
function rimgs = slresizeimg(imgs, newsiz, interpker)
%SLRESIZEIMG Resizes the images by interpolation
%
% $ Syntax $
%   - rimgs = slresizeimg(imgs, newsiz, interpker)
%
% $ Arguments $
%   - imgs:         The set of images
%   - newsiz:       The new image size to be resized to
%                   It can be in two forms:
%                   - [new_height, new_width]
%                   - ratio to the original size
%   - interpker:    The interpolation kernel (default = 'linear')
%   - rimgs:        The resized images
%
% $ Description $
%   - rimgs = slresizeimg(imgs, newsiz, interpker) resizes the image
%     to new size by interpolation. 
%
% $ Remarks $
%   - The implementation is based on slimginterp.
%
% $ History $
%   - Created by Dahua Lin, on Sep 3, 2006
%

%% parse and verify input

if nargin < 2
    raise_lackinput('slresizeimg', 2);
end
h0 = size(imgs, 1);
w0 = size(imgs, 2);

if isnumeric(newsiz)
    if length(newsiz) == 1
        h = newsiz * h0;
        w = newsiz * w0;
    elseif length(newsiz) == 2
        [h, w] = sltakeval(newsiz);
    else
        error('sltoolbox:invalidarg', 'The newsiz is invalid');
    end
else
    error('sltoolbox:invalidarg', 'The newsiz is invalid');
end

if nargin < 3 || isempty(interpker)
    interpker = 'linear';
end

%% generate coordinate map

I = linspace(1, h0, h)';
J = linspace(1, w0, w);
I = I(:, ones(1, w));
J = J(ones(h, 1), :);

%% Do interpolation

rimgs = slimginterp(imgs, I, J, interpker);


    

Contact us at files@mathworks.com