【发布时间】:2015-11-24 22:09:41
【问题描述】:
我运行了这段代码,但由于某种原因,输出是一个带有黑色右边框的白色屏幕。有谁知道为什么会这样?
image=imread('lena.jpg');
image=rgb2gray(image);
[rows,cols]=size(image);
paddedimage=padarray(image,[1 1]);
newimage=zeros(rows,cols);
tot=0;
for i=2:(rows-1)
for j=2:(cols-1)
for i1=i-1:i+1
for j1=j-1:j+1
jk=image(i1,j1);
tot=tot+jk;
end
end
tot=tot/9;
newimage(i-1,j-1)=tot;
end
tot=0;
end
imshow(newimage);
【问题讨论】:
-
在使用
imshow之前检查newimage的数据类型。它必须是uint8,范围为0-255(仅限整数)或类型为double,范围为0-1。 -
另外,你有什么理由不只是为此使用
conv2?至少用它来检查自己