视频编解码 — DCT变换和量化
目录
视频编码流程
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变换和量化相关推荐
- 被压缩的视觉:视频编解码技术
视觉是人类获得信息的主要方式,每天有大量的视频信息被生产并传输.未经压缩的视频内容占用的存储空间和传输带宽十分巨大,以常见的30fps高清视频为例,采用avi格式存储的YUV420视频流一分钟就有2G ...
- 视频编解码的理论和实践1:基础知识介绍
近几年,视频编解码技术在理论及应用方面都取得了重大的进展,越来越多的人想要了解编解码技术.因此,网易云信研发工程师为大家进行了归纳梳理,从理论及实践两个方面简单介绍视频编解码技术. 相关阅读推荐 &l ...
- H.264/AVC视频编解码技术详解 第一章 视频信息与压缩编码
H.264/AVC视频编解码技术详解系列笔记 是对 H.264/AVC视频编解码技术详解 课程的学习 文章目录 人与世界的交互 视频信号的表示方法 视频压缩编码 视频信息为什么可以被压缩? 视频压缩编 ...
- 音视频开发(9)--视频编解码的理论和实践
视频编解码的理论和实践1:基础知识介绍 1.视频介绍 视频的本质是图像序列,根据视觉暂留的原理,每秒播放20~25张图像,就会形成连续平滑的视觉效果,人眼将无法区分其中单幅的图像,就这样连续的画面 ...
- 各种音视频编解码标准
编解码学习笔记(一):基本概念 媒体业务是网络的主要业务之间.尤其移动互联网业务的兴起,在运营商和应用开发商中,媒体业务份量极重,其中媒体的编解码服务涉及需求分析.应用开发.释放license收费等等 ...
- 各种音视频编解码学习详解 h264 ,mpeg4 ,aac 等所有音视频格式
编解码学习笔记(一):基本概念 媒体业务是网络的主要业务之间.尤其移动互联网业务的兴起,在运营商和应用开发商中,媒体业务份量极重,其中媒体的编解码服务涉及需求分析.应用开发.释放license收费等等 ...
- 回首十几年视频编解码之路
最近读了大师兄悟空的一篇公众号文章,深有体会.其中有一段话: 非常同意,若非喜欢真的就放弃了. 引起了我的许多回忆,因此想要写这篇文字. 学习阶段 第一次接触视频编解码是研一的时候,当时导师有一个北京 ...
- H.266视频编解码标准(H.266的新技术介绍)
H.266多功能视频编码编解码器标准,新的H.266 /VCC编解码器在保持清晰度不变的情况下,数据压缩效率获得极大提高,数据量减少了50%. 新标准的公告中指出,由于改进了压缩技术,H.266将减少 ...
- 视频编解码——视频编解码器工作原理
目录 视频编码器基础认知 什么是视频编解码器 为什么需要视屏编解码器 视频编码器与数字视频容器 视频编码标准的历史 通用编解码器 1.图片分区 查看分区 2.预测 3.转换 使用全部像素形成每个系数 ...
最新文章
- AntD Checkbox 的三种状态处理
- linux命令: tree的c实现
- 消消乐实现下坠_手把手教你如何实现iOS消消乐小游戏Demo
- 圣诞节海报设计还没开始?感受下合适的节日感PSD模板
- 普通的测试员和牛逼的测试员有什么区别?完成这两次跨越,你也可以
- iOS利用Speech Kit实现语音识别
- WebRequest中的工厂方法模式
- Android HandlerThread 消息循环机制之源代码解析
- Java源码阅读神器之Translation翻译插件
- .bat文件和脚本文件
- 云效研发效能度量体系,如何展示和解读交付效能数据
- 【高通SDM660平台】(2) --- Camera Kernel 驱动层代码逻辑分析
- 这个神器:功能强大的 Mac 剪切板记录管理工具
- 自己开发基于Web的打印控件,真正免费不是共享
- DS1819 对应版本的FFMPEG_使用 FFmpeg 对 webp转png , webm转mp4或者gif等进行操作
- wordpress插件API入口
- 戴尔inspiron14 5000系列拆机图解教程
- abap日期函数_ABAP - 日期格式转换 ABAP常用日期处理函数
- [激光器原理与应用-9]: 开关电源主要指标
- Html5版全套股票行情图开源了