1

我试图在 MATLAB 中对我的图像(它是一个 128x128 Uint8)求和(只是一个简单的 for 循环),但是,我的总和只会上升到 255 的值。后记它只是一遍又一遍地显示 255。

这是否意味着我的变量已被分配了 Uint8 或其他东西?如果是这样,我该如何改变?

干杯!

4

1 回答 1

4

是的,大概您的数据是 Uint8 类型的。但是您不必循环求和,只需使用该sum函数即可。假设您的数据位于x

total = sum(double(x(:)))

sum将在单个维度上进行操作,因此如果您直接传递它double(x),它将返回一个1x128矩阵;在这里,我们将所有重整的数据传递给一维向量(使用),使用函数(:)将其转换为双精度。double

请注意,变量的类型将连同其名称和大小一起显示在 Workspace 窗口中。

于 2013-03-29T20:20:54.513 回答