Chapter 5. MPEG-4 Visual
本章着重介绍有关MPEG-4 Visual标准的细节。
Tool
编码工具集合的子集(比如支持交织等)。
Object
视频元素(比如一个矩形视频帧,或者一个任意形状的区域,静止的图像)。
Profile
视频对象类型的集合。
Level
每个Profile都会有多个Level,不同的Level对机器性能的要求各不相同,因此适用于不同的应用和环境。
VO(Video Object)
视频的一帧是一个VOP(Video Object Plane),多个VOP组成一个VO。VOP可以是矩形的也可以是任意形状的。
The Simple Profile
Simple Profile中的特性。
I-VOP
即通常所说的I帧,该帧的编码不依赖于其他帧,即Intra mode。
P-VOP
即通常所说的P帧,该帧的编码依赖于之前编码了的I帧或P帧。P帧中的宏块可以用帧内编码(出现一块新的找不到很好匹配的区域),或者帧间编码(利用运动补偿,估计)。
编码效率工具
这里介绍了一些提升编码效率的工具
Four motion vector per macroblock
缩小宏块大小,增加运动向量个数,达到更精确的匹配
Unrestricted Motion Vector
在帧边缘位置的宏块,如果物体从边缘位置进入屏幕范围,极有可能搜索不到比较好的匹配,但是如果将边缘位置按照像素值“外推(extrapolate)”,那么匹配准确度会明显提升。
Intra Prediction
因为相邻宏块的内容变化可能并不显著(马尔科夫特性),因此宏块的DC和AC系数可以根据相邻宏块进行预测。
传输效率工具
这里介绍了一些提升传输效率的工具
Video Packet
Packet又称之为Slice,在Packet的头部可以增加一个Sync标签,辅助解码器同步,防止错误的传递。
Data Partitioning
将数据分成两部分传递,第一部分保存每个宏块的编码模式和每个帧内编码宏块的DC系数或者帧间编码宏块的运动向量。而帧间编码宏块的AC系数和DC系数存储在第二部分,这样即使第二部分数据出现了错误,依靠第一部分的数据依然可以恢复出来。
Reversible VLCs
即Reversible Variable Length Codes,使得解码器可以正反两个方向解码,以此减小错误所影响的范围。
The Advanced Simple Profile
Advanced Simple Profile中的特性。
B-VOP
即B帧,双向预测帧。
Quarter-Pixel Motion Vectors
四分之一像素为单位的运动向量,提升精度。
Alternate quantiser
边长的量化步长,低频区域步长小,高频区域步长大,这样能够更高效地压缩。
Global Motion Compensation
支持全局的运动向量共享。
Interlace
对交织的支持。
- Frame DCT Mode
- Field DCT Mode
The Advanced Real Time Simple Profile
Advanced Real Time Simple Profile中的特性。
NEWPRED
new prediction,即支持选择更早的VOP进行预测,当出现错误时,利用之前较早的未出现错误的VOP预测,可以防止错误的传递。
Dynamic Resolution Conversion
当画面中出现较复杂的场景变化时,往往会意味着码率的瞬时提高,此时可以通过降低分辨率的方式来减小码率。
Chapter 5. MPEG-4 Visual的更多相关文章
- (英文版)使用Visual Studio 2015 编写 MASM 汇编程序!
原文地址:http://kipirvine.com/asm/gettingStartedVS2015/index.htm#CreatingProject Getting Started with MA ...
- Interacted Action-Driven Visual Tracking Algorithm
文章来源:Attentional Action-Driven Deep Network for Visual Object Tracking 博士论文(2017年8月份完稿) http://s-s ...
- VES Hand Book Contents
3...ABOUT THE VES4...Foreword 6...Chapter 1......Introduction6......Visual Effects and Special Effec ...
- 转:LIRe 源代码分析
1:整体结构 LIRE(Lucene Image REtrieval)提供一种的简单方式来创建基于图像特性的Lucene索引.利用该索引就能够构建一个基于内容的图像检索(content- based ...
- LIRe 源代码分析 2:基本接口(DocumentBuilder)
===================================================== LIRe源代码分析系列文章列表: LIRe 源代码分析 1:整体结构 LIRe 源代码分析 ...
- 零元学Expression Blend 4 - Chapter 33 简单轻松的学会如何使用Visual States(下)
原文:零元学Expression Blend 4 - Chapter 33 简单轻松的学会如何使用Visual States(下) 上篇提到了Visual State Manager中文翻译为视觉状态 ...
- 零元学Expression Blend 4 - Chapter 32 简单轻松的学会如何使用Visual States(上)
原文:零元学Expression Blend 4 - Chapter 32 简单轻松的学会如何使用Visual States(上) Visual State Manager中文翻译为视觉状态管理器,这 ...
- how to build apache log4cxx 0.10 by Visual Studio 201*
Chapter 1 Official Steps We are going to follow the steps here, http://logging.apache.org/log4cxx/b ...
- [转]第四章 使用OpenCV探测来至运动的结构——Chapter 4:Exploring Structure from Motion Using OpenCV
仅供参考,还未运行程序,理解部分有误,请参考英文原版. 绿色部分非文章内容,是个人理解. 转载请注明:http://blog.csdn.net/raby_gyl/article/details/174 ...
随机推荐
- 【JAVAWEB学习笔记】06_jQuery基础
接05的学习笔记. 四.使用JQ完成省市二级联动 1.需求分析 使用jquery完成省市二级联动 2.技术分析 2.1数组的遍历操作 方式一: $(function(){ // 全选/ 全不选 $(& ...
- 销量预测和用户行为的分析--基于ERP的交易数据
写在前面: 这段时间一直都在看一些机器学习方面的内容,其中又花了不少时间在推荐系统这块,然后自己做了一套简单的推荐系统,但是跑下来的结果总觉得有些差强人意,我在离线实验中得到Precision,Rec ...
- Lua学习(2)——表达式
1. lua算术操作符lua支持的算数操作符: + - * /除 ^指数 %取模 -符号 2. lua关系操作符 <小于 >大于 <= >= == ~=不等于 3. 逻辑操作符 ...
- jQuery对象的创建(一)
在jQuery的常规用法中,执行"$()"返回的是一个jQuery对象,在源码中,它是这样定义的: ... var jQuery = function() { return new ...
- 什么样的PPT能助你成为一个优秀的演讲者——程序员的演讲之道
欢迎访问我的个人博客,原文链接:http://wensibo.top/2017/05/28/speaker/ ,未经允许不得转载! 前言 今天是端午节假期的第一天,在这里祝大家假期快乐,不过像我这种渣 ...
- 由Find All References引发的思考。,
今天在研究C#代码问题的时候遇到了一个Visual Studio的小问题.在Visual Studio 2013中,使用Find All References功能不能找到同一类型不同版本的所有引用,具 ...
- Xmpp学习之Android-smack入门指导
Xmpp学习之Android-smack入门指导 版权声明:本文为博主原创文章,未经博主允许不得转载. 转载请表明出处:http://www.cnblogs.com/cavalier-/p/69404 ...
- 游戏UI框架设计(五): 配置管理与应用
游戏UI框架设计(五) --配置管理与应用 在开发企业级游戏/VR/AR产品时候,我们总是希望可以总结出一些通用的技术体系,框架结构等,为简化我们的开发起到"四两拨千金"的作用.所 ...
- 【小练习04】HTML+CSS--医药健康小页面
要求实现如下效果图: 代码演示 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"&g ...
- Java IO流之【缓冲流和文件流复制文件对比】
与文件流相比,缓冲流复制文件更快 代码: package Homework; import java.io.BufferedOutputStream; import java.io.File; imp ...