目录

视频编码流程

DCT变换

Hadamard变换

量化

H264中的DCT变换和量化

H264各模式的DCT变换和量化过程

1、亮度16x16帧内预测块

2,其它模式亮度块

3,色度块

小结


视频编码流程

DCT变换

离散余弦变换

它能将空域信号转换到频率上表示,并能够比较好的去除相关性。

对于图像来说,空域是平时看到的图像,频率是图像做完DCT变换之后的数据。

DCT变换是对残差块做的,通常情况下是在4X4的子块上进行变换的

二维DCT变换公式如下,f(i,j)是指第(i,j)位置点的信号值,N是采样点的总个数

计算公式:

其中 

其中       X为4x4 残差块

A矩阵如下

cos函数有小数,计算速度慢

Hadamard变换

一定程度上粗略的代替 DCT 变换,从而用来简化运算。

计算公式:

没有浮点运算,计算速度快

量化

将图像块变换到频域后,AC系数比较多,一般幅值比较小,通过去除一些AC系数,达到压缩的目的。

量化公式

z是量化后的系数;y是变换系数;round函数是四舍五入

QP与QStep之间有转换关系

通常QStep值越大,DC系数和AC系数被量化成0的概率越大,压缩程度越大。

值太大会造成一个个块状效应,严重的时候出现马赛克。

值小的话,压缩程度比较小,图像失真比较小,码流比较大

H264中的DCT变换和量化

H264为了减少这种浮点运算带来的误差,将DCT变换成整数变化,DCT变换中的浮点运算和量化过程合并,这样就只有一次浮点运算过程。

H264的整数变化和量化,公式如下:

将DCT变换一步步修改为整数变换,最后H264的DCT变换变成了整数变换。

量化

 变成        

H264各模式的DCT变换和量化过程

1、亮度16x16帧内预测块

亮度16x16,首先被划分成16个4x4的小块做整数变化。变化之后将16个4x4小块的DC系数都拿出来,组成4x4的DC块,再对这个4x4的DC进行Hadamard变换。然后,再总体进行量化操作。

2,其它模式亮度块

对于除亮度16x16帧内预测块之外的其它亮度块,都是直接划分成4x4的块进行整数变化,之后再进行量化操作。

3,色度块

对于YUV420图像,色度块大小是8x8,现将8x8色度块划分成4个4x4的小块做整数变换。变换之后将4个小块的DC系数拿出来,组成2x2的DC块,再对这个2x2的DC块进行hadamard变换。最后总体进行量化操作。

小结

DCT变化主要是将图像从空域转换到频域,并将图像的高频和低频信息分离开来。高频信息数据多,但是幅值比较小,在高频信息量化过程中能够比较容易被量化成0,这样达到压缩的目的。

视频编解码 — DCT变换和量化相关推荐

  1. 被压缩的视觉:视频编解码技术

    视觉是人类获得信息的主要方式,每天有大量的视频信息被生产并传输.未经压缩的视频内容占用的存储空间和传输带宽十分巨大,以常见的30fps高清视频为例,采用avi格式存储的YUV420视频流一分钟就有2G ...

  2. 视频编解码的理论和实践1:基础知识介绍

    近几年,视频编解码技术在理论及应用方面都取得了重大的进展,越来越多的人想要了解编解码技术.因此,网易云信研发工程师为大家进行了归纳梳理,从理论及实践两个方面简单介绍视频编解码技术. 相关阅读推荐 &l ...

  3. H.264/AVC视频编解码技术详解 第一章 视频信息与压缩编码

    H.264/AVC视频编解码技术详解系列笔记 是对 H.264/AVC视频编解码技术详解 课程的学习 文章目录 人与世界的交互 视频信号的表示方法 视频压缩编码 视频信息为什么可以被压缩? 视频压缩编 ...

  4. 音视频开发(9)--视频编解码的理论和实践

    视频编解码的理论和实践1:基础知识介绍   1.视频介绍 视频的本质是图像序列,根据视觉暂留的原理,每秒播放20~25张图像,就会形成连续平滑的视觉效果,人眼将无法区分其中单幅的图像,就这样连续的画面 ...

  5. 各种音视频编解码标准

    编解码学习笔记(一):基本概念 媒体业务是网络的主要业务之间.尤其移动互联网业务的兴起,在运营商和应用开发商中,媒体业务份量极重,其中媒体的编解码服务涉及需求分析.应用开发.释放license收费等等 ...

  6. 各种音视频编解码学习详解 h264 ,mpeg4 ,aac 等所有音视频格式

    编解码学习笔记(一):基本概念 媒体业务是网络的主要业务之间.尤其移动互联网业务的兴起,在运营商和应用开发商中,媒体业务份量极重,其中媒体的编解码服务涉及需求分析.应用开发.释放license收费等等 ...

  7. 回首十几年视频编解码之路

    最近读了大师兄悟空的一篇公众号文章,深有体会.其中有一段话: 非常同意,若非喜欢真的就放弃了. 引起了我的许多回忆,因此想要写这篇文字. 学习阶段 第一次接触视频编解码是研一的时候,当时导师有一个北京 ...

  8. H.266视频编解码标准(H.266的新技术介绍)

    H.266多功能视频编码编解码器标准,新的H.266 /VCC编解码器在保持清晰度不变的情况下,数据压缩效率获得极大提高,数据量减少了50%. 新标准的公告中指出,由于改进了压缩技术,H.266将减少 ...

  9. 视频编解码——视频编解码器工作原理

    目录 视频编码器基础认知 什么是视频编解码器 为什么需要视屏编解码器 视频编码器与数字视频容器 视频编码标准的历史 通用编解码器 1.图片分区 查看分区 2.预测 3.转换 使用全部像素形成每个系数 ...

最新文章

  1. AntD Checkbox 的三种状态处理
  2. linux命令: tree的c实现
  3. 消消乐实现下坠_手把手教你如何实现iOS消消乐小游戏Demo
  4. 圣诞节海报设计还没开始?感受下合适的节日感PSD模板
  5. 普通的测试员和牛逼的测试员有什么区别?完成这两次跨越,你也可以
  6. iOS利用Speech Kit实现语音识别
  7. WebRequest中的工厂方法模式
  8. Android HandlerThread 消息循环机制之源代码解析
  9. Java源码阅读神器之Translation翻译插件
  10. .bat文件和脚本文件
  11. 云效研发效能度量体系,如何展示和解读交付效能数据
  12. 【高通SDM660平台】(2) --- Camera Kernel 驱动层代码逻辑分析
  13. 这个神器:功能强大的 Mac 剪切板记录管理工具
  14. 自己开发基于Web的打印控件,真正免费不是共享
  15. DS1819 对应版本的FFMPEG_使用 FFmpeg 对 webp转png , webm转mp4或者gif等进行操作
  16. wordpress插件API入口
  17. 戴尔inspiron14 5000系列拆机图解教程
  18. abap日期函数_ABAP - 日期格式转换 ABAP常用日期处理函数
  19. [激光器原理与应用-9]: 开关电源主要指标
  20. Html5版全套股票行情图开源了

热门文章

  1. 【白苹果系统镜像】macOS Big Sur 11.6.6正式版(20G608)镜像
  2. C# 实现对PPT插入、编辑、删除表格
  3. 这些你必须知道的 Linux 技能
  4. 应用场景:征信和权属管理
  5. 基于php的房产中介信息网
  6. 快速无损原样提取PDF文档中的图片
  7. Java线上诊断工具:Arthas简单快速学习
  8. 为什么顶尖高手,都是深度思考者?
  9. 锂离子电池热失控的机理
  10. ZBrush中常用3D笔触效果