uint8数据类型图片和double数据类型图片的转化和显示

  • Post author:
  • Post category:其他


为了节省存储空间,一般imread把灰度图像读入时的数据类型是uint8

  • uint8数据类型的灰度值范围是0-255;

  • double数据类型的灰度值范围是0-1;

一般情况下,将uint8的灰度图像转化为double的灰度图像,有两种数据转换方式。

第一种:在对uint8数据类型处理(/255)后直接使用double转化数据类型,这里只是将/255取整后的值变为double类型,不改变数据。

I = imread('地图舟山灰度图二值化.png');               
I = rgb2gray(I);             % 灰度化                 
K = double(floor(I/255));    % 这里使用floor向下取整,将原图在0-255灰度之间的像素都转化为0
imshow(K);

第二种:im2double会将uint8灰度值0-255的像素点映射到0-1之间,也就是说存在非0非1的数据点

K = im2double(I)

我在使用第二种方法是,最后调出的图像依然是一片黑。存在一些问题没有搞清楚,还望向各位多多学习



版权声明:本文为qq_45053161原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。