padarray是MATLAB自带的一种图像填充函数,通常应用于将一幅矩形图像填充成为正方形图像,它的几种定义方法见下:
B = padarray(A,PADSIZE)
B = padarray(A,PADSIZE,PADVAL)
B = padarray(A,PADSIZE,PADVAL,DIRECTION)
B = padarray(A,PADSIZE,METHOD,DIRECTION)
参数的意思见下:
A:输入图像
B:输出图像
PADSIZE:要填充的行数和列数,通常用[r c]表示
PADVAL和METHOD:填充方法,有如下几种:
symmetric:表示图像大小通过围绕边界进行镜像反射来扩展;
replicate:表示图像大小通过复制外边界中的值来扩展;
circular:表示图像大小通过将图像看成是一个二维周期函数的一个周期来进行扩展。
DIRECTION:填充方向,有如下几种:
pre:表示在每一维的第一个元素前填充;
post:表示在每一维的最后一个元素后填充;
both:表示在每一维的第一个元素前和最后一个元素后填充,此项为默认值。
若参量中不包括DIRECTION,则默认值是both,若参量中不包含PADVAL,则默认用零来填充。若参量中不包含任何参数,则默认填充为0且方向为both。在计算结束时,图像会被修剪成原始大小。
例如
B = padarray([1 2; 3 4],[3 2],’replicate’,’post’)
则输出为:
1 2 2 2
3 4 4 4
3 4 4 4
3 4 4 4
3 4 4 4