YUV图像
创始人
2024-05-26 00:01:37

YUV的存储方式

UV格式有两大类:planar和packed。

对于planar的YUV格式,先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V。

对于packed的YUV格式,每个像素点的Y,U,V是连续交替存储的。

YUV的采样

主流的采样方式有三种,YUV4:4:4,YUV4:2:2,YUV4:2:0

YUV4:4:4 表示完全取样,一个Y对应一组UV分量。一个YUV占 8+8+8 = 24bits,3个字节。

YUV4:2:2 表示2:1的水平取样,垂直完全采样,两个Y共用一组UV分量。一个YUV占 8+4+4 = 16bits 2个字节。

YUV4:2:0 表示2:1的水平取样,垂直2:1采样,每四个Y共用一组UV分量。一个YUV占 8+2+2 = 12bits 1.5个字节

YUV与RGB转换

RGB转成YUV:

Y      =  (0.257 * R) + (0.504 * G) + (0.098 * B) + 16
Cr = V =  (0.439 * R) - (0.368 * G) - (0.071 * B) + 128
Cb = U = -(0.148 * R) - (0.291 * G) + (0.439 * B) + 128

YUV转成RGB:

B = 1.164(Y - 16) + 2.018(U - 128)
G = 1.164(Y - 16) - 0.813(V - 128) - 0.391(U - 128)
R = 1.164(Y - 16) + 1.596(V - 128)

YUV420p和YUV420sp

YUV420:是目前最主流的采样方式,因为这样的采样最省空间,而又不会影响肉眼的观赏性。

YUV420p:又叫planer平面模式,Y ,U,V分别在不同平面,也就是有三个平面。

YUV420p又分为YU12 和 YU21(又叫I420):他们的区别只是存储UV的顺序不一样而已。

YU12:安卓的模式。存储顺序是先存Y,再存U,最后存V。YYYYUUUVVV

YV12:存储顺序是先存Y,再存V,最后存U。YYYVVVUUU

YUV420SP是packed类型的。它是先存储了 Y 分量,但接下来并不是再存储所有的 U 或者 V 分量,而是把 UV 分量交替连续存储。

NV12 和 NV21 格式都属于YUV420SP类型。

NV12 是 IOS 中有的模式,它的存储顺序是先存 Y 分量,再 UV 进行交替存储。

NV21 是 安卓 中有的模式,它的存储顺序是先存 Y 分量,在 VU 交替存储。

相关内容

热门资讯

今年贵州科学城先进装备制造产业... 转自:贵州日报贵州科学城一角(本报资料图)。 本报讯 记者12月18日从贵州科学城服务中心获...
富国上证科创板200交易型开放... 富国上证科创板200交易型开放式指数证券投资基金发起式联接基金基金合同全文和招募说明书全文于2025...
消失的“红牌楼”,被一首诗留住... “红牌楼”成了成都的一处文化符号。图据成都方志如今的红牌楼立交桥。图据《成都市武侯区志》改建前的川藏...
美军称再次对一艘“贩毒船”发动...   美军南方司令部12月17日在其官网上发布消息说,“南方之矛”联合特遣部队当天在国际水域对一艘“被...
SpaceX上市预期升温之际 ...   马斯克正向投资者兜售无人驾驶汽车、机器人助手以及火星生活的未来图景。但对投资者而言,问题在于,要...