0

我是 matlab 新手。有人可以告诉我这个片段对图像的 3-D 数组求和有什么问题。它在第 3 行显示错误,我无法调试它。

x=imread('test.jpg');
imshow(x);
sumdiff=sum(sum(sum(testArr2, 3),2),1)
4

2 回答 2

3

虽然马克可能已经回答了这个问题,但我想补充一点,对整个数组求和的最简单方法可能是使用冒号语法:

sum_all = sum(x(:))

另请注意,imread通常返回一个整数数组(uint8对于标准 jpeg 图像)。使用这种类型的数组时,并非所有数学运算都允许 - 有时使用im2double是必要的。

于 2013-01-24T11:14:28.560 回答
3

唯一让我觉得明显是错误的事情是,您正在对名为的变量中的值求和,testArr2但在名为的变量中包含图像像素数据x。在哪里testArr2定义和填充数据?

于 2013-01-24T11:06:10.043 回答