Sis*_*sta 7 matlab image image-processing pad
我有一个大小为61x56的图像,我想将图像填充到392x392大小.
我试图使用,padarray但因为我得到一个非整数值,我无法做到这一点.谁能帮我这个.非常感谢!我附上了我想要做的事情.
K = imread('test.jpg');
K = rgb2gray(K);
[m n] = size(K);
p = 392;
q = 392;
K_pad = padarray(K, [(p-m)/2 (q-n)/2], 'replicate');
Run Code Online (Sandbox Code Playgroud)
这是另一种不使用填充它的方法padarray.
imgSize=size(img); %#img is your image matrix
finalSize=392;
padImg=zeros(finalSize);
padImg(finalSize/2+(1:imgSize(1))-floor(imgSize(1)/2),...
finalSize/2+(1:imgSize(2))-floor(imgSize(2)/2))=img;
Run Code Online (Sandbox Code Playgroud)
你可以padarray用两个电话划分你的指令:
K_pad = padarray(K, [floor((p-m)/2) floor((q-n)/2)], 'replicate','post');
K_pad = padarray(K_pad, [ceil((p-m)/2) ceil((q-n)/2)], 'replicate','pre');
Run Code Online (Sandbox Code Playgroud)
但是你可能想要检查图像角落里发生了什么,看看你想用它做什么就好了.