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 ...
随机推荐
- 添加本地jar包到本地的Maven仓库以及在Maven仓库中搜索想要添加的jar包
今天在学习Memacached的时候,将java_memcached-release下载下来,要使用maven来集成相关的jar包,Memcached的jar包如下: java_memcached-r ...
- bash下. : () {} [] [[]] (())的解释 (非原创,侵删)
Copy from http://blog.chinaunix.net/uid-20380484-id-1692999.html bash下有很多像{}.[]等一些符号命令,下面是我对一些常用的符号命 ...
- linux通配符与正则表达式
通配符 * 任意字符,可重复多次 ? 任意字符,重复一次 [] 代表一个字符 举例: [a,b,c] 表示abc中任意一个 通配符的作用是用来匹配文件名的 正则表达式 正则表达式 ...
- repo版本切换
repo init -u https://android.googlesource.com/platform/manifest repo sync 之后 这样初始化之后,相当于下载了全部的分支, 本想 ...
- 几张图带你轻轻松松了解小程序和APP的区别
微信"小程序"的公测一开放,立即在朋友圈刷屏无数,仿佛人人都在互联网圈.但是因为微信限制,程序还不能发布使用,所以也极少人看到真正的小程序是怎么样的. 小程序驿站专注微信小程序的开 ...
- java虚拟机学习-JVM调优总结(5)
数据类型 Java虚拟机中,数据类型可以分为两类:基本类型和引用类型.基本类型的变量保存原始值,即:他代表的值就是数值本身:而引用类型的变量保存引用值.“引用值”代表了某个对象的引用,而不是对象本身, ...
- nodejs服务实现反向代理,解决本地开发接口请求跨域问题
前后端分离项目需要解决第一个问题就是,前端本地开发时如何解决通过ajax请求产生的跨域的问题.一般的做法是通过本地配置nginx反向代理进行处理的,除此之外,还可以通过nodejs来进行代理接口.当然 ...
- DATA VISUALIZATION – PART 2
A Quick Overview of the ggplot2 Package in R While it will be important to focus on theory, I want t ...
- 多线程编程-- part 5.3 LockSupport
一.LockSupport的介绍 LockSupport是用来创建锁和其他同步类的基本线程阻塞原语. LockSupport中的park() 和 unpark() 的作用分别是阻塞线程和解除阻塞线程 ...
- 基于类(Java)和基于原理(JavaScript)的对象系统的比较
Java:面向对象编程语言,吸收了C++语言的各种优点,丢掉了C++让人头疼的多继承.指针等概念.具有功能强大和简单易用的两大特征.Java具有简单性.面向对象.分布式.健壮性.安全性.平台独立与可移 ...