图像格式转换
在图像处理中,读入的图片通常是uint8格式,一是由于unit8的精读问题,二是由于有的函数不支持uint8类型,所以通常要转换成为double格式。
转换通常要用im2double()函数,而不用double()或mat2gray()函数
他们的区别如下
im2double():将0-255的uint8类型转换为0-1的double类型
double():直接将0-255的uint8类型转换为0-255的double类型
mat2gray():将0-”最大的数“的uint8类型转换为0-1的double类型
例如:
B = [5,5,5;5,2,25;25,5,2]
5 5 5
5 2 25
25 5 2 (类型为uint8)
B1 = im2double(B)
0.0196 0.0196 0.0196
0.0196 0.0078 0.0980
0.0980 0.0196 0.0078 (类型为double)
B2 = mat2gray(B)
0.1304 0.1304 0.1304
0.1304 0 1.0000
1.0000 0.1304 0 (类型为double)
B3 = double(B)
5 5 5
5 2 25
25 5 2 (类型为double)