0

我需要使用函数生成的一个非常大的矩阵imread()。这会将图像(我的是 jpg 文件;691x763)转换为矩阵。

我需要将矩阵中的每个元素除以 255,并以至少 3 个小数位显示每个元素。

我试过的:

output_precision(4)但它不适用于矩阵内的元素。

format long e但矩阵内的值仍然不受影响。

4

2 回答 2

2

您应该使用im2double http://octave.sourceforge.net/image/function/im2double.html为您缩放到 0..1,而与输入格式(可能是 uint、uint16、int16 等)无关。

于 2016-04-24T07:31:57.353 回答
1

我猜imread()给了你一个矩阵uint8。试试这个:

I = imread('image.jpg'); %// your image
A = double(I)/255; %//convert matrix to double before dividing it by 255
于 2016-04-24T06:26:03.877 回答