我有一个 size 的图像350X450
。我正在尝试用零填充表示图像的矩阵,使原始矩阵位于新填充矩阵的中心,新维度为700X900
. 这是我想做的事情:
我正在尝试使用padarray
函数来实现它:
(假设w是所需的宽度,h是所需的高度,im是图像(矩阵))
new_image=paddarray(im, [0.5*w 0.5*h]);
我没有得到想要的结果。我错过了什么?有一个更好的方法吗?
我有一个 size 的图像350X450
。我正在尝试用零填充表示图像的矩阵,使原始矩阵位于新填充矩阵的中心,新维度为700X900
. 这是我想做的事情:
我正在尝试使用padarray
函数来实现它:
(假设w是所需的宽度,h是所需的高度,im是图像(矩阵))
new_image=paddarray(im, [0.5*w 0.5*h]);
我没有得到想要的结果。我错过了什么?有一个更好的方法吗?
你的语法是正确的,你应该设置w = ceil((700-350)/2)
and h = ceil((900-450)/2)
。
正如帮助条目所说:
B = padarray(A,PADSIZE)
沿 A 的第 k 维用 PADSIZE(k) 个零填充数组 A。
padarray([1 2; 3 4],[1 1]) %makes a 4x4 matrix
你不想用 w 和 h 填充,你想用
(wDesired - wCurrent)/2 %floor or ceil
,取决于你的心情。