


Pad an image along its four boundaries.
Similar to Matlab's padarray, with the following differences:
(1) limited to padding along height and width
(2) input format allows for separate padding along each dimension
(3) padding values may be negative, in which case performs *cropping*
(4) optimized (speedup can be significant, esp. for small arrays)
The amount of padding along each of the four boundaries (referred to as
T/B/L/R) is determined by the parameter "pad" as follows:
if(numel(pad)==1): T=B=L=R=pad
if(numel(pad)==2): T=B=pad(1), L=R=pad(2)
if(numel(pad)==4): T=pad(1), B=pad(2), L=pad(3), R=pad(4)
USAGE
J = imPad( I, pad, type )
INPUTS
I - [hxwxk] input image (single, double or uint8 array)
pad - pad or crop amount: 1, 2, or 4 element vector (see above)
type - pad value or 'replicate', 'symmetric', 'circular'
OUTPUTS
J - [T+h+B x L+w+R x k] padded image
EXAMPLE
I=imread('peppers.png'); pad=[10 20]; type=50;
tic, J1=imPad(I,pad,type); toc
tic, J2=padarray(I,pad,type,'both'); toc
figure(1); im(J1); isequal(J1,J2)
See also padarray
Piotr's Computer Vision Matlab Toolbox Version 3.00
Copyright 2014 Piotr Dollar. [pdollar-at-gmail.com]
Licensed under the Simplified BSD License [see external/bsd.txt]