YUV 格式
1. YUV比例
分三种:YUV44,YUV422,YUV420
2. YUV排布
分三种:YUV planar,YUV Semi-Plannar,YUV packed
以YUV422 8*4 为例
① 平面格式,3个plane:
Y0 Y1 Y2 Y3
U0 U1
V0 V1
② Semi-Plannar
半平面格式,Y和UV分别为一个plane,共两个plane:
Y0 Y1 Y2 Y3
U0 V0 U1 V1
③ YUV packed(YUV Interleaved)
打包格式,或称为交叉格式,一个plane:
Y0 U0 Y1 V0 Y2 U1 Y3 V1
3. YUV顺序
根据具体顺序还可以分为:YUYV、YVYU、UYVY等
4. align,占位和存储
align会分为width align和height align,一般height align不做要求,设置为1;
align指的是字节对齐,因为其主要目的是为了方便存取;
YUV储存的时候是以行为单位的,不同行的数据绝对不会直接混放在一起,对齐也是以行为单位的;
比如YUV420sp_888_1920x1080_width_align_256_height_align_1:
1920pixel * (1 bytes/pixel) / 256 = 7.5,每行256 * 8 = 2048 bytes —— 对齐只是针对Y的width计算;
semi-plannar格式,Y有1080行,UV有1080 / 2 行 —— Y补0的地方UV也会补零,其他地方UV填满,没有行的概念;
所以整个照片size = 256 * 8 * (1 + 0.5)。
写到DDR里面和传输的时候占用字节是否相同,中间是否有空白字节,这些也是有规定的,需要结合实际情况判断,否则无法解析。
参考:
https://www.cnblogs.com/cumtchw/p/10224329.html
YUV 格式的更多相关文章
- YUV格式介绍
原文链接:http://www.cnblogs.com/azraelly/archive/2013/01/01/2841269.html YUV格式有两大类:planar和packed.对于plana ...
- YUV格式分析
转自:http://www.cnblogs.com/armlinux/archive/2012/02/15/2396763.html Andrew Huang <bluedrum@163.com ...
- 关于yuv格式
首先,内存分布 1:YUV420 (1):I420: YYYYYYYY UU VV =>YUV420P (2): ...
- 【视频处理】YUV格式说明
YUV,是一种颜色编码方法,Y表示明亮度(Luminance.Luma),U和V则是色度.浓度(Chrominance.Chroma). YUV,Y`UV,YCbCr,YPbPr等都可以称为YUV,彼 ...
- YUV格式&像素
一幅彩色图像的基本要素是什么? 说白了,一幅图像包括的基本东西就是二进制数据,其容量大小实质即为二进制数据的多少.一幅1920x1080像素的YUV422的图像,大小是1920X1080X2=4147 ...
- 关于YUV格式数据
(1) YUV格式有两大类:planar和packed.对于planar的YUV格式,先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V.对于packed的YUV格式,每个像素点 ...
- 图文详解YUV420, yuv格式2
YUV格式有两大类:planar和packed. 对于planar的YUV格式,先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V. 对于packed的YUV格式,每个像素点的Y ...
- 【转】YUV格式&像素
一幅彩色图像的基本要素是什么? 说白了,一幅图像包括的基本东西就是二进制数据,其容量大小实质即为二进制数据的多少.一幅1920x1080像素的YUV422的图像,大小是1920X1080X2=4147 ...
- YUV格式具体解释
YUV是指亮度參量和色度參量分开表示的像素格式,而这样分开的优点就是不但能够避免相互干扰,还能够减少色度的採样率而不会对图像质量影响太大.YUV是一个比較笼统地说法,针对它的详细排列方式,能够分为非常 ...
- 使用X264编码yuv格式的视频帧使用ffmpeg解码h264视频帧
前面一篇博客介绍在centos上搭建点击打开链接ffmpeg及x264开发环境.以下就来问个样例: 1.利用x264库将YUV格式视频文件编码为h264格式视频文件 2.利用ffmpeh库将h264格 ...
随机推荐
- C# 串口读取并转换字符串
public string ReadString() { ASCIIEncoding ascii = new ASCIIEncoding(); byte[] readBuffer = new byte ...
- 2020-2021 ACM-ICPC Brazil Subregional Programming Contest
A. Sticker Album 你想要得到\(n\)张贴纸,每包礼物中等概率出现 \([A,B]\)范围内数量的贴纸,求需要买多少包礼物才能至少获得\(n\)张贴纸的期望次数 \(1 \leq n ...
- PM-企业数字化转型,数据治理是关键
企业数字化转型是大势所趋,通过数据治理.数据平台建设.数据分析与建模,把数据变成服务,使数据能在企业内顺畅流动起来,为企业带来巨大的价值.数据是企业数字化转型的重要基础. 数据能创造价值,但数 ...
- Flutter之GetX之GetConnect
Flutter之GetX之GetConnect GetConnect可以便捷的通过http或websockets进行前后台通信. 默认配置 能轻松的通过extend GetConnect就能使用GET ...
- SAGA/TCC 就是 WORKFLOW!!!
SAGA TCC 的本质就是一个 workflow, 用 activiti, conductor 或 zeebee 都可以实现. saga, tcc 依赖的状态机模型在 workflow 引擎一直在用 ...
- logback 中打印自定义参数 (ip 服务名)
打印 application.properties 配置文件中的参数 首先需要引入文件 <property resource="application.properties" ...
- IPV6禁用导致 RabbitMQ 无法启动的问题
问题现象 在开发的过程中遇到了 RabbitMQ 怎么也启动不起来的现象.查看 RabbitMQ 自身的启动日志,并没有发现有什么有用的报错信息,只是从某天开始就一直在打印重启的日志,尝试多次重启也不 ...
- Qt编写物联网管理平台(支持win/linux/mac/嵌入式linux/modbus等)
一.前言 这个物联网综合管理平台前后迭代了五年,一点一滴慢慢积累起来,从最开始的只有modbus串口协议解析以及简单的表格显示数据,慢慢的逐渐增加了tcp_rtu支持,用户管理模块,地图监控模块,而后 ...
- C#操作MySQL数据库——思路简单清晰
1.下载mysql.Data.dll,在解决方案->引用中引入,并在文件头部引入 using MySql.Data.MySqlClient; 2.创建MySqlConnection对象(链接库) ...
- postgresql-10.12-2-windows-x64安装成功后在安装postgis-bundle-pg96x64-setup-2.5.3-1时提示Spatial database creation failed
问题描述: postgresql-10.12-2-windows-x64安装成功后在安装postgis-bundle-pg96x64-setup-2.5.3-1时提示Spatial database ...