我想大家应该知道了YUV的颜色表示原理即:

  Y = 0.299R + 0.587G + 0.114B 
  U = -0.147R - 0.289G + 0.436B 
  V = 0.615R - 0.515G - 0.100B 
  R = Y + 1.14V 
  G = Y - 0.39U - 0.58V 
  B = Y + 2.03U

如果通过上面的公式从RGB转换成YUV的话,得出的YUV一帧图片和RGB一样大(如果都用8bit表示一个像素分量值)

而YUV采样格式有: YUV 4:4:4 YUV 4:2:2 YUV 4:2:0  等

我就介绍下YUV4:2:0采样怎么转换成YUV4:4:4

YUV444示意图(4*4大小):4*4大小的图中每个像素都对应三个YUV分量,如下图。所占空间为 4*4*3=48 bytes

       
       
       
       
       
       
       
       
       
       
       
       

YUV4:2:0 采样方式为: U分量和V分量隔行采样, 同时UV分量在其采样行也是隔行采样

Y00 Y01 Y02 Y03
Y10 Y11 Y12 Y13
Y20 Y21 Y22 Y23
Y30 Y31 Y32 Y33
U00    ?     U02   ?    
? ? ? ?
U20 ? U22 ?
? ? ? ?
? ?        ? ?       
V10 ? V12 ?
? ? ? ?
V30 ? V32 ?

从上面的比较可知,要将YUV420转换成YUV444的关键就在于插值到采样的缺口处。大家GOOGLE下图像的放大缩小的插值方法原理 :最近邻插值法,双线性插值法和三次插值法

这里我们介绍使用双线性插值法(只给出算法,原理自己GOOGLE):

  • 对U分量进行插值 从上面可知  U00 U02 U20 U22是已知的:

U01 = (U00 + U02)/2;

U10 = (U00 + U20)/2;

U11 = (U00 + U02 + U20 + U22)/4;

剩下的也采用此种方法计算即可。  (当然了对于边缘的点如U30~U33, U03~U33的处理可以直接用邻近的点代替)

  • 对V变量的插值处理也是一样.
  • 不过呢,我看的几个3D合成视图的软件中直接用的邻近的值代替的.应该说也差不多

转载于:https://my.oschina.net/fuyajun1983cn/blog/263968

YUV420转YUV444 , YUV420转RGB相关推荐

  1. YUV420转YUV444

    在最近的CCP测试中,需要使用YUV444的测试序列,而平时使用的全都是YUV420的序列,因此自己尝试用C写了一个YUV420转YUV444的程序. 1.YUV分三种采样方式: YUV444:对于每 ...

  2. YUV420 Planar 和YUV420 Semi-Planar详解

    参考:https://blog.csdn.net/qq_25005909/article/details/79480935 前言 YUV 格式通常有两大类:打包(packed)格式和平面(planar ...

  3. 图文详解YUV420数据格式YUV444数据格式YUV422数据格式

    转:https://www.cnblogs.com/azraelly/archive/2013/01/01/2841269.html YUV格式有两大类:planar和packed. 对于planar ...

  4. yuv420 YUV422 YUV444格式及存储排列

    YUV420: YUV422: 另外,YUV422还有YUYV,YVYU,VYUY,UYVY四种排列(格式) YUV444:

  5. 视频图像数据处理八:将rgb视频图像转换为yuv420格式视频图像

    文章目录 转换公式 需要注意 函数代码 测试用例 下载 本文介绍了将rgb视频图像转换为yuv420格式视频图像的方法,附有详细的代码和图像示例.文中rgb24和yuv420文件需要使用yuv/rgb ...

  6. YUV420存储为BMP和JPG图片

    网上大多数关于YUV420的资料都是关于YUV420P的,很少有YUV420SP的,因为YUV420SP的UV是交错存放的,处理起来相对麻烦点,但是YUV420SP也是一种常见格式,因此,在这里,我将 ...

  7. 海思开发板中的YUV420格式解析

    一.什么是YUV YUV是被欧洲电视系统所采用的一种颜色编码方法(属于PAL),是PAL和SECAM模拟彩色电视制式采用的颜色空间. YUV主要是用于优化彩色视频信号的传输,使其与早期的黑白电视机相容 ...

  8. 视频图像数据处理三:将yuv420视频图像转换为灰度图像

    文章目录 函数代码 测试用例 下载 本文介绍了将yuv420视频图像转换为灰度图像的方法,附有详细的代码和图像示例.文中yuv420文件需要使用yuv/rgb播放器才能查看,参考播放器可选择雷神推荐的 ...

  9. 视频图像数据处理五:对yuv420视频图像加边框

    文章目录 函数代码 测试用例 下载 本文介绍了对yuv420视频图像加边框的方法,附有详细的代码和图像示例.文中yuv420文件需要使用yuv/rgb播放器才能查看,参考播放器可选择雷神推荐的修改了一 ...

最新文章

  1. 收藏 | 做人工智能必看的45篇论文-附下载地址
  2. linux文本编辑器vim的基本使用
  3. IIS7.0 网站发布页面显示 500 - 内部服务器错误。您要查找的资源有问题,无法显示...
  4. Crash工具实战-变量解析【转】
  5. 数据转数字类型的方法总结
  6. TFS版本管理(八)
  7. TMS320F28335项目开发记录1_CCS的使用介绍
  8. java构造函数的执行顺序,java构造函数和初始化函数的执行顺序
  9. html页面的ajax请求,【提问】ajax请求返回整个html页面
  10. eclipse 替换注释
  11. VR全景图之图片拼接教程
  12. 关于ubuntu上,usb设备编号
  13. Python(4)print一个10行10列的星星图案
  14. 【历史上的今天】4 月 10 日:Github 诞生;人类第一张黑洞照片;计算机延误航天飞机
  15. 新闻文化建设杂志新闻文化建设杂志社新闻文化建设编辑部2022年第14期目录
  16. 关于自行修改人人商城模板文件目录指引
  17. linux 硬盘错误,linux – 硬盘读取错误……停止?
  18. Prometheus源码学习(8) scrape总体流程
  19. 用计算机说唱的 那个男的是谁,中国十大嘻哈歌手排名:有名的rapper都有谁
  20. 3、点评搜索服务推荐系统 -门店 - 实现点评门店推荐搜索初级

热门文章

  1. 基于nginx的tomcat负载均衡和集群(超简单)
  2. IPsec NAT穿越
  3. KVM日常管理-克隆-快照-磁盘扩容-虚拟磁盘挂载
  4. C++随笔——虚拟继承
  5. 关系竞争 :今目标可能成为个一个的企业社交网络
  6. 20个公司绝对不会告诉你的秘密
  7. golang 字符串 去首尾字符
  8. linux nDPI 协议检测 源码分析
  9. easyui datagrid表头 toolbar 固定
  10. python3 字符串格式化