《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实际用到的位数

像素深度:整个像素占用的位数

位深度:像素构成通道占用的位数


相关推荐
ujainu3 分钟前
CANN仓库中的AIGC可持续演进工程:昇腾AI软件栈如何构建“活”的开源生态
人工智能·开源·aigc
秋邱14 分钟前
用 Python 写出 C++ 的性能?用CANN中PyPTO 算子开发硬核上手指南
开发语言·c++·python
光锥智能14 分钟前
从连接机器到激活知识:探寻工业互联网深水区的山钢范式
人工智能
GHL28427109016 分钟前
分析式AI学习
人工智能·学习·ai编程
我在人间贩卖青春31 分钟前
C++之析构函数
c++·析构函数
ujainu32 分钟前
CANN仓库中的AIGC性能极限挑战:昇腾软件栈如何榨干每一瓦算力
人工智能·开源
wenzhangli734 分钟前
ooderA2UI BridgeCode 深度解析:从设计原理到 Trae Solo Skill 实践
java·开发语言·人工智能·开源
brave and determined35 分钟前
CANN ops-nn算子库使用教程:实现神经网络在NPU上的加速计算
人工智能·深度学习·神经网络
brave and determined35 分钟前
CANN算子开发基础框架opbase完全解析
人工智能
一枕眠秋雨>o<41 分钟前
调度的艺术:CANN Runtime如何编织昇腾AI的时空秩序
人工智能