【发布时间】:2013-02-16 18:27:00
【问题描述】:
这是我的代码。我不确定为什么这不起作用。它说索引超过矩阵尺寸。然后它说 Grayscale1 中的错误(第 7 行) avg=mean(pic(col, row, :)); 我想通过输入 image(grayscale1(imagename)) 来使用该功能
这也是我的提示 编写一个名为“grayscale1.m”的函数,该函数接收图像文件的文件名并返回具有图像灰度版本的 3-D 数组。它应该适用于任何大小的图像。您的解决方案应该使用嵌套循环来设置每个像素的值。
function grayscale1(picture)
pic = imread(picture);
[r c] = size(pic);
for row = 1:r
for col = 1:c
avg=mean(pic(row, col, :));
pic(row,col,:)=avg;
end
end
end
【问题讨论】:
标签: arrays matlab nested nested-loops grayscale