当前位置: 首页 > article >正文

《opencv实用探索·二》根据RGB的像素排列来理解图像深度、像素深度和位深度

通常对于RGB图像主要分为RGB16,RGB24和RGB32。RGB16从高位到低位的排列为R->G->B,RGB24和RGB32从高位到低位的排列为B->G->R。

RGB16:
16 位为一个存储单元(一个像素),来存储一个RGB像素;因为人眼对绿色比较敏感,所以有时候会用6位绿色,有时候会用5位,分为 RGB565、RGB555。

对于RGB565:
R: 0~11111 (0-31)
G: 0~111111 (0-63)
B: 0~11111 (0-31)

对于RGB555:
R:11111 (0-31)
G:11111 (0-31)
B:11111 (0-31)

排布方式从高位到低位:
RRRRR GGGGGG BBBBB (00000 000000 00000–11111 111111 11111)
空RRRRR GGGGG BBBBB (空00000 00000 00000–空11111 11111 11111)

RGB24:
24位为一个像素

B:11111111
G:11111111
R:11111111

排布方式从高位到低位:
BBBBBBBB GGGGGGGG RRRRRRRR(00000000 00000000 00000000–11111111 11111111 111111111)

RGB32:
32位为一个像素(Vec3b),RGB32与RGB24排列方式一样都是从高到底,从B到R,唯一不同就是在低字节保留了8位

B:11111111
G:11111111
R:11111111

排布方式从高位到低位:
BBBBBBBB GGGGGGGG RRRRRRRR 空空空空空空空空
(00000000 00000000 00000000 空空空空空空空空–11111111 11111111 11111111 空空空空空空空空)

ARGB32:
32位为一个像素(Vec4b),带alpha通道的RGB24,与RGB32的区别在于保留的8个Bit用于表示透明,也就是alpha值。
B:11111111
G:11111111
R:11111111
Alpha:11111111

排布方式:BBBBBBBB GGGGGGGG RRRRRRRR AAAAAAAA
(00000000 00000000 00000000 00000000–11111111 11111111 11111111 11111111)

图像深度,像素深度和位深度

图像深度:RGB实际用到的位数
像素深度:整个像素占用的位数
位深度:像素构成通道占用的位数

在这里插入图片描述


http://www.kler.cn/a/146672.html

相关文章:

  • Leetcode 快乐数
  • Spring Boot 中使用 @Transactional 注解配置事务管理
  • 优化 MFC CGridCtrl 的表格布局与功能
  • SpringCloud处理Websocket消息过长自动断开连接
  • Spring Security 核心组件
  • 解决Spring Boot整合Redis时的连接问题
  • Python与设计模式--建造者模式
  • 【M365运维】修复Bitlocker在AAD里没有密钥的故障
  • 基于C++实现水仙花数
  • STM32 F1 串口空闲中断 + DMA实现数据发送
  • 数据结构 / 结构体位域
  • 以太网通讯协议小结--持续更新中
  • Shell 脚本自动化备份与恢复实践
  • CSGO搬砖如何选品?选品软件和教程靠谱吗?
  • mysql 行转列 GROUP_CONCAT 试验
  • upgrade openstack from ovs to ovn (by quqi99)
  • Linux 设置文件开启数量限制
  • 8.统一异常处理 + 统一记录日志
  • 地理坐标系转换
  • 使用 .toISOString() 方法生成当前时间的ISO格式字符串,解决UTC时区差问题
  • pycharm中requirements
  • 【matlab程序】图像最大化填充画布
  • Oracle查询数据库中当前用户每个表的数据条数
  • 形态学操作—顶帽运算
  • Grafana采用Nginx反向代理,部分功能报错‘Origin not allowed’ behind proxy
  • Unity阻止射线穿透UI的方法之一