matlab用户名不匹配,MATLAB中有关尺寸不匹配的错误

您可以尝试用零填充较小的图像,使其与较大的图像具有相同的尺寸。例如

%Start with rows:

if size(I1,1) > size(I2,1) %I1 has more rows so pad I2

pad = zeros (size(I1,1) - size(I2,1), size(I2,2));

I2 = [I2 ; pad]; %Append the rows of zeros to the bottom of I2

else %I2 has more rows so pad I1

pad = zeros (size(I2,1) - size(I1,1), size(I1,2));

I1 = [I1 ; pad]; %Append the rows of zeros to the bottom of I1

%Pad the columns

if size(I1,2) > size(I2,2) %I1 has more rows so pad I2

pad = zeros (size(I2,1), size(I1,2) - size(I2,2));

I2 = [I2 , pad]; %Append the columns of zeros to the left of I2

else %I2 has more rows so pad I1

pad = zeros (size(I1,1), size(I2,2) - size(I1,2));

I1 = [I1 , pad]; %Append the columns of zeros to the left of I1我没有测试过,所以你可能需要调整一下才能使尺寸完美,比如尺寸(I2,2) - 尺寸(I1,2)+ 1而不是尺寸(I2,2) - 尺寸(I1) ,2),那种事。

但是你需要首先弄清楚你想要做的事情的逻辑。使用零填充可能在您的应用程序中没有意义。此外,我的代码填充在底部和左侧,但您可能想要一直填充,以便您的图像位于新图像的中心。

你可能感兴趣的:(matlab用户名不匹配)