% 对图像进行归一化处理 for i = 1:length(images.Files) im = readimage(images, i); im = imresize(im, inputSize(1:2)); im = (im - mean(im(:))) / std(im(:)); images.readimage(i) = {im}; end 错误使用 var (第 74 行) 数据类型无效。第一个输入参数必须为单精度值或双精度值。 出错 std (第 59 行) y = sqrt(var(varargin{:})); 出错 wangluo2 (第 68 行) im = (im - mean(im(:))) / std(im(:)); 怎么修改,给出修改后的代码
时间: 2023-10-11 21:09:33 浏览: 68
dct.rar_4 3 2 1_dct matlab_error image_图像归一化_归一化系数
根据错误提示,我们需要将图像数据类型转换为单精度或双精度。可以使用 `im2single` 函数将图像转换为单精度类型。
修改后的代码如下:
```matlab
for i = 1:length(images.Files)
im = readimage(images, i);
im = imresize(im, inputSize(1:2));
im = (im2single(im) - mean(im2single(im(:)))) / std(im2single(im(:)));
images.readimage(i) = {im};
end
```
这里使用 `im2single` 将图像转换为单精度类型,并在计算均值和标准差时也使用了 `im2single` 函数。
阅读全文