B = padarray(A,padsize,padval,direction)
padsize:[r,c] 表示扩展的行数和列数
padval: 扩展模式(如果不设置该参数,默认值为补零)。
‘symmetric’:矩阵通过边界进行镜像反射来扩展;
‘replicate’矩阵通过复制外边界中的值来扩展;
‘circular’ 将矩阵看成是一个二维周期函数的一个周期来进行扩展。
direction: (如果不设置该参数,默认值为’both’)
'pre’表示在每一维的第一个元素前填充;
'post’表示在每一维的最后一个元素后填充;
'both’表示在每一维的第一个元素前和最后一个元素后填充,此项为默认值。
实例
X=magic(5)
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
padarray(X, [0 1])
ans =
0 17 24 1 8 15 0
0 23 5 7 14 16 0
0 4 6 13 20 22 0
0 10 12 19 21 3 0
0 11 18 25 2 9 0
padarray(X, [1 1])
ans =
0 0 0 0 0 0 0
0 17 24 1 8 15 0
0 23 5 7 14 16 0
0 4 6 13 20 22 0
0 10 12 19 21 3 0
0 11 18 25 2 9 0
0 0 0 0 0 0 0
padarray(X, [2 2], ‘symmetric’)
ans =
5 23 23 5 7 14 16 16 14
24 17 17 24 1 8 15 15 8
24 17 17 24 1 8 15 15 8
5 23 23 5 7 14 16 16 14
6 4 4 6 13 20 22 22 20
12 10 10 12 19 21 3 3 21
18 11 11 18 25 2 9 9 2
18 11 11 18 25 2 9 9 2
12 10 10 12 19 21 3 3 21
padarray(X, [2 2], ‘replicate’)
ans =
17 17 17 24 1 8 15 15 15
17 17 17 24 1 8 15 15 15
17 17 17 24 1 8 15 15 15
23 23 23 5 7 14 16 16 16
4 4 4 6 13 20 22 22 22
10 10 10 12 19 21 3 3 3
11 11 11 18 25 2 9 9 9
11 11 11 18 25 2 9 9 9
11 11 11 18 25 2 9 9 9
padarray(X, [2 2], ‘circular’)
ans =
21 3 10 12 19 21 3 10 12
2 9 11 18 25 2 9 11 18
8 15 17 24 1 8 15 17 24
14 16 23 5 7 14 16 23 5
20 22 4 6 13 20 22 4 6
21 3 10 12 19 21 3 10 12
2 9 11 18 25 2 9 11 18
8 15 17 24 1 8 15 17 24
14 16 23 5 7 14 16 23 5