视频压缩预测编码和变换编码概述
2015-11-25 19:48
260 查看
预测编码: 一幅图像由许多个称为像素的点组成,如下图所示,“o”表示一个像素。大量的统计表明,同一幅图像的像素之间具有较强的相关性,两个像素之间的距离越短,其相关性越强,即两个像素的值越接近。 于是,人们可以利用这种像素间的相关性进行压缩编码。例如,当前像素X可以用前一个像素a、b、c或者三者的线性加权来预测。a、b、c被称为参考像素。实际传送时,把实际像素X(当前值)和参考像素(预测值)相减,只传送X-a,到了接收端再把(X-a)+a恢复成X。由于a是已传送的(在接收端被存储),于是得到当前值。由于X与a相似,(X-a)值很小,视频信号被压缩,这种压缩方式称为帧内预测编码。
而帧间预测是利用视频时间域的相关性,使用邻近已编码帧图像像素预测当前帧图像的像素,以达到有效去除视频时域冗余的目的。由于邻近帧之间的相关性一般比帧内像素间的相关性更强,因此压缩比也更大。
变换编码:大量统计表明,视频信号中包含着能量上占大部分的直流和低频成分(图像的平坦部分),还有少量的高频成分(图像的细节部分)。因此,可以用另一种方法进行视频编码,将图像经过某种数学变换后,得到变换域中的图像,如下图,其中u、v分别是空间频率坐标轴。用“o”表示的低频和直流占图像能量中的大部分;用“X”表示的高频成分则是少量的;其余均是零值,用“O”表示。于是可用较少的码表示直流、低频以及高频,而“O”则不必用码表示,由此可完成压缩编码。
相关文章推荐
- JavaScript包装对象
- LeetCode 28_Implement strStr()
- VLC 实现的简单播放器
- 黑马程序员——JDK的新特性笔记整理
- Linux学习笔记之Makefile多个c文件的编写
- 干货:2016年百度技术面试官的一些思考
- OpenJudge_P1746 子串(KMP)
- Tcpdump
- JavaScript作用域链
- Xcode_代码段
- 总结Spring、Hibernate、Struts2官网下载jar文件
- 053-19 What recommendations does the SQL Access Advisor provide for optimizing SQL queries? (Choose
- 匹配指定字符开头,但不包含该字符,已指定字符结尾的字符串
- lua的metatable讲解
- 机器学习笔记之Logistic回归算法实践
- 使用ZooKeeper ACL特性进行znode控制
- struts2的s:iterator 标签 详解
- 网络传输文本数据格式JSON
- CSS media queries
- 补充myeclipse引入MySQL