Arrays 使用大小为1的输入必须为整数时出错?
大家好,我的错误代码有问题Arrays 使用大小为1的输入必须为整数时出错?,arrays,matlab,math,image-processing,Arrays,Matlab,Math,Image Processing,大家好,我的错误代码有问题 r =[zeros(size(img2,1),size(img2,2)) ones(size(img2,1),size(img2,2)/2)]; 其中img2大小为[111 235] Error using ones Size inputs must be integers 我想要一个大小相同的图像,大概是因为size(img2,2)是一个奇数,所以size(img2,2)/2不是整数,因此会得到错误消息 您需要考虑在这些情况下该怎么做,或者将其四舍五入到最接近的
r =[zeros(size(img2,1),size(img2,2)) ones(size(img2,1),size(img2,2)/2)];
其中img2
大小为[111 235]
Error using ones
Size inputs must be integers
我想要一个大小相同的图像,大概是因为
size(img2,2)
是一个奇数,所以size(img2,2)/2不是整数,因此会得到错误消息
您需要考虑在这些情况下该怎么做,或者将其四舍五入到最接近的整数,或者在除以2之前加/减1。如果size(img2,2)
是奇数(如您的示例中,235
),则size(img2,2)/2
不是整数,因此会显示错误消息。要生成与img
大小相同的数组,请执行zero(size(img))
。我不明白你为什么要用2除法。