matlab padarray函数详解

    xiaoxiao2022-07-12  140

    本文来自于matlab帮助页面,命令:help padarray

    语法:

    B = padarray(A,padsize)

    B = padarray(A,padsize,padval)

    B = padarray(A,padsize,padval,direction)

    gpuarrayB = padarray(gpuarrayA,___)

    描述:

    B = padarray(A,padsize) 用0填充数组A。padsize是一个由非负整数组成的向量,它指定要添加的填充量和维度。向量中元素的值指定要添加的填充量。向量中元素的顺序指定要添加填充的维度。

    例如,padsize值[2 3]表示沿第一个维度添加2个填充元素,沿第二个维度添加3个填充元素。默认情况下,paddarray沿着指定的维度在第一个元素之前和最后一个元素之后添加填充。

    B = padarray(A,padsize,padval) 填充数组A,其中padval指定要用作pad值的值。padarray使用值0(0)作为默认值。padval可以是直接指定填充值的标量,也可以是指定填充数组(三维填充用的到,见例子3)用于确定作为填充添加的元素值的方法的以下文本字符串之一。

    例子:

    例1:

    在向量的开头添加三个填充元素。填充元素(由灰色底纹表示)包含数组元素的镜像副本。

     

    a = [ 1 2 3 4 ];

    b = padarray(a,[0 3],'symmetric','pre')

    b ==

    例2:将三个填充元素添加到数组第一个维度的末尾,并将两个填充元素添加到第二个维度的末尾。该示例使用最后一个数组元素的值作为填充值。

     

    A = [1 2; 3 4];

    B = padarray(A,[3 2],'replicate','post')

    B =

    例3:

    向三维数组的垂直和水平维度添加三个填充元素。使用缺省值作为pad值和方向。

    A = [ 1 2; 3 4];

    B = [ 5 6; 7 8];

    C = cat(3,A,B)

    C(:,:,1) =

     

         1     2

         3     4

     

    C(:,:,2) =

     

         5     6

         7     8

     

    D = padarray(C,[3 3])

    D(:,:,1) ==

    D(:,:,2) ===

    在GPU上执行填充

    在图像的所有边添加填充。

    gcam = gpuArray (imread (' cameraman.tif '));

    padcam = padarray(gcam,[50 50],'both');

    imshow (padcam)

    更多

    代码生成

    此函数支持使用MATLAB®Coder™生成C代码。有关更多信息,请参见图像处理的代码生成。

    在生成代码时,padarray只支持最多3-D输入,并且输入参数、padval和方向必须是编译时常量。

    MATLAB 函数块

    您可以在Simulink中的MATLAB函数块中使用这个函数。

    在生成代码时,padsize必须是编译时常量。

    另请参阅

    circshift | gpuArray | imfilter

    Introduced before R2006a

     

     

    最新回复(0)