文章目录

  • 文件格式的角度
  • 图片深度
    • 深度
    • 像素值
    • 像素值范围
      • 8位
      • 16位
      • 24位
      • 32位
    • 单个原始颜色
  • 图片存储
    • 8bit
    • 24bit
    • 32bit
    • 16位
  • 色彩 16.7M

文件格式的角度

从文件格式角度看,一张图片可以保存为很多种不同的格式,比如bmp/png/jpeg/gif等等。

图片深度

从图片深度来看,图片可以分为8位, 16位, 24位, 32位等。

深度

右键单击图片属性->详细信息,即可查看图片位深度:

像素值

说的直白一些,图片可以看成是一个2维数组组成的矩形结构。每个格子里存放的是图片在此坐标处的像素的取值,即这一点的颜色值。

像素值范围
8位

282^828= 22(B)∗23(G)∗23(R)=256(色)2^2(B) * 2^3(G)* 2^3(R) = 256(色)22(B)∗23(G)∗23(R)=256(色)
总共显示256种颜色
取值范围:0~255

16位

216=25(B)∗26(G)∗25(R)=65536(色)2^{16} = 2^5(B)*2^6(G)* 2^5(R) = 65536(色)216=25(B)∗26(G)∗25(R)=65536(色)
总共显示65536种颜色
取值范围:0~65535

24位

224=28(B)∗28(G)∗28(R)=16777216(色)2^{24} = 2^8(B) *2^8(G) *2^8(R) = 16777216(色)224=28(B)∗28(G)∗28(R)=16777216(色)
总共显示16777216种颜色
取值范围:0~16777215

32位

32位:Alpha透明度 + 24位

单个原始颜色
  • 当8/16位深度时,单个原始颜色 (R/G/B)最大只能表示为(0−23)/(0−26)(0 -2^3 )/(0-2^6)(0−23)/(0−26), 无法满足(0~0xff)的范围,所以显示的颜色范围有限。
  • 当24位深度时,使用24bit显示一个像素点, 由8bit Red 8bit Green 8bit Blue组合颜色而成,每一个原始颜色(R/G/B)都可以完全显示(0~0xff),所以24位及以上,我们就叫做真彩色。

图片存储

首先需要知道计算机中的数据都是使用0,1表示出来的。即计算机中1位只能取值0或者1。

电脑磁盘空间 ,资源管理器内存占用都是B,以字节为单位,即分配内存块时以字节为单位进行分配。一个字节(Byte)占用8位(bit)。

计算机常见数据存储单位换算:
1GB=1024MB
1MB=1024KB
1KB=1024Byte(字节)
1Byte(字节)=8bit(位)

8bit

如果一个图片支持256种颜色(如GIF格式),那么就需要256=2^8 个不同的值来表示不同的颜色。也就是从0到255,用二进制表示就是从00000000到11111111,总共需要8位二进制数,所以颜色深度是8 Bit。

  • 存储一个像素值需要1B的内存。
24bit

如果是BMP格式,每个像素可以支持RGB各8bit,即R8,G8,B8,不同的红绿蓝组合可以构成2563256^32563种颜色,就需要3个8位的2进制数,总共24位,所以颜色深度是24 Bit。

  • 存储一个像素值需要3B的内存。
32bit

还有PNG格式,这种格式除了支持24位的颜色外,还支持alpha通道(就是控制透明度用的),总共是32位,所以颜色深度是32 Bit。颜色深度越大,图片占的空间越大。

  • 存储一个像素值需要4B的内存。
16位

较上面的比较复杂,每像素用16位表示,RGB分别为5bitR,6bitG,5bitB的组合。

  • 存储一个像素值需要2B的内存。

色彩 16.7M

色彩16.7M意思是支持显示最大色彩数量为1670万,即可以显示1670万种不同的颜色。“M”是百万的意思,是英文million的缩写。16.7M=16.7百万=1670万。

显示器一般用二进制来表示颜色。16位色的发色总数是65536色,也就是2的16次方;24位色被称为“真彩色”,它可以达到人眼分辨的极限,发色数是1677万多色,也就是2的24次方。一般所有显示器或液晶电视都会标注这个值。

显示器的像素由RGB三基色组成低端的显示器各个基色只能表现6位色,即2的6次方=64种颜色,可以计算出每个独立像素可以表现的最大颜色数是64×64×64=262144种颜色

中高端液晶显示器利用FRC技术使得每个基色则可以表现8位色,即2的8次方=256种颜色,则像素能表现的最大颜色数为256×256×256=16777216种颜色,这种显示板显示的画面色彩丰富,层次感好。高端显示器的分辨率较中端显示器要更高。

除了16位色、24位色之外,现在越来越多的显示器采用32位色。32位色并非是2的32次方的发色数,它其实也是1677万多色,不过它增加了256阶颜色的灰度,为了方便称呼,就规定它为32位色。色彩过渡更自然,色彩表现力更好,屏幕更细腻。

在同样大小的屏幕分辨率越高就显示得越清楚,所以,如果同样大小的屏幕分辨率低的话就算显示1600万色也没有分辨率高的26万好。例如:同样材质制作的2.4英寸的TFT屏幕、240×320的分辨率,那么1600万色要好于26万色和6.5万色。

学习:色彩16.7M

如何理解图像深度:8bit、16bit、24bit、32bit; 16.7M色彩相关推荐

  1. 将HBITMAP转换成BMP位图文件的各个部分,可以在1BIT,4BIT,8BIT,16BIT,24BIT,32BIT之间转换

    VC将HBITMAP转换成BMP位图文件的各个部分,可以在1BIT,4BIT,8BIT,16BIT,24BIT,32BIT之间转换 http://blog.ednchina.com/wxleasyla ...

  2. 理解图像深度:8bit、16bit、24bit、32bit; 16.7M色彩

    文章目录 文件格式的角度 图片深度 深度 像素值 像素值范围 8位 16位 24位 32位 单个原始颜色 图片存储 8bit 24bit 32bit 16位 色彩 16.7M 文件格式的角度 从文件格 ...

  3. python 16bit转8bit的工具_python存储16bit和32bit图像的实例

    笔记:python中存储16bit和32bit图像的方法. 说明:主要是利用scipy库和pillow库,比较其中的不同. ''' 测试16bit和32bit图像的python存储方法 ''' imp ...

  4. opencv 图像深度depth的理解

    我们在创建mat的时候,可以选择的CvType中有很多的选项 CV_8UC1 CV_8SC1 CV_16U C1 CV_16SC1 CV_8UC2 CV_8SC2 CV_16UC2 CV_16SC2 ...

  5. python存储16bit和32bit图像

    笔记:python中存储16bit和32bit图像的方法. 说明:主要是利用scipy库和pillow库,比较其中的不同. ''' 测试16bit和32bit图像的python存储方法 ''' imp ...

  6. bmp格式 8bit与24bit深度相互转换

    bmp格式 8bit与24bit相互转换 一.实验要求 在图像处理软件中生成8bit和24bit深度的BMP文件,编写程序实现不同像素深度文件的相互转换.重点掌握函数定义.缓存区分配.倒序读写.结构体 ...

  7. c++下Gdal将16bit的tif图像转8bit

    c++下Gdal将16bit的tif图像转8bit [使用软件及版本]Gdal4.x(含proj等),vs2019 打包完的,到手即用. 头文件(仅罗列关键文件,其他基础自行添加) #include ...

  8. opencv关于图像深度转换的一点理解

    常用图像深度如下: 图像类型 数据类型 字节 取值范围 显示范围 CV_8U unsigned char 1 0~255 0~255 CV_8S char 1 -128~127 -128~128 CV ...

  9. 16bit图像任选8bit显示

    C++之取出一个字节中的某几位 把一个16位的变量的高8位和低8位取出来 C/C++ 16bit转8bit 16bit灰度图像映射到8bit显示 RGB转8色16色256色

  10. 图像深度(Image Depth)

    图像深度是指存储每个像素所用的位数,他也是用来度量图像的色彩分辨率的.他确定了彩色图像的每个像素可能有的色彩数,或者确定灰度图像的每个像素可能有的灰度级数.他决定了色彩图像中可能出现的最多的色彩数,或 ...

最新文章

  1. 一个JQuery发送ajax请求
  2. Java内存管理之软引用(Soft Reference)
  3. 常用的20个正则表达式
  4. 无线局域网技术白皮书
  5. android手机连接PC后怎样切换为U 盘模式
  6. Mysql事务[学习笔记]
  7. EL 11个内置对象
  8. NSURLSession学习笔记(二)Session Task
  9. 【UCOSIII操作系统】硬件初始化篇(1)硬件初始化以及开始运行系统
  10. 最详细的Extmail安装文档
  11. cuda9升级cuda10方法记录 ubuntu1604
  12. 入侵网络游戏服务器修改,如何入侵网络游戏服务器
  13. Linux 8723be无线网卡,rtl8723be无线网卡驱动 for ubuntu
  14. opencv convertTo函数
  15. Win11打开本地组策略编辑器的两种方法
  16. 2021-1-13 印象深刻的Bug记录
  17. 最新UE下载地址和可使用注册码(公布)
  18. FM25V05-GTR 存储器 CYPRESS
  19. 读《穷爸爸富爸爸》有感
  20. 1210篇新冠肺炎论文文献合集整理,附论文原文地址(合集)

热门文章

  1. unity点光源消失
  2. 华为云计算08—灾备
  3. c语言薛定谔方程,如何解薛定谔方程?-- k · p method
  4. 上行带宽,下行带宽;上传速度,下载速度
  5. 【统计学】三大相关系数之肯德尔相关系数(kendall correlation coefficient)
  6. 如何用GoldWave交叉淡化两首音乐?
  7. JS仿iGoogle自定义首页模块拖拽效…
  8. 显示网站Alexa世界排名的代码
  9. 发生致命事故8个月后,优步被获准在匹兹堡恢复自动驾驶测试
  10. js代码实现点击按钮出现60秒倒计时