块编码、对象编码、小波编码、分布式编码【转贴】

人类获取的信息中70%来自于视觉,视频信息在多媒体信息中占有重要地位;同时视频数据冗余度最大,经压缩处理后的视频质量高低是决定多媒体服务质量的关键因素。因此数字视频技术是多媒体应用的核心技术,对视频编码的研究已成为信息技术领域的热门话题。

传统压缩编码建立在仙农信息论基础之上的,以经典集合论为工具,用概率统计模型来描述信源,其压缩思想基于数据统计,因此只能去除数据冗余,属于低层压缩编码的范畴。

伴随着视频编码相关学科及新兴学科的迅速发展,新一代数据压缩技术不断诞生并日益成熟,其编码思想由像素块或基于内容 content-based)。它突破了仙农信息论框架的束缚,充分考虑了人眼视觉特性及信源特性,通过去除内容冗余来实现数据压缩。下面主要讲与之相关的四种编码体系:块编码(H.261Mpeg2H.263H.264AVSVC1等)、对象编码(Mpeg4)、小波编码、分布式编码。

块编码体系

视频序列按时间先后分为一系列帧,每一帧图像又分成(宏)块以进行运动估计和运动补偿,得到运动矢量和残差。对运动矢量进行差分编码,对残差进行变换、量化、zigzag扫描、熵编码,从而得到最终的压缩码流。

去除冗余主要在如下几个模块:RGBYCbCr减少视觉冗余、帧内预测减少空域冗余、运动补偿减少时域冗余、熵编码减少码间冗余、变换量化则保证了在有限的码流下包含最大的信息量。

该编码体系规则简单、高效,便于软硬件实现。发展迅速,也最为成熟,被大多数视频编码标准所采纳。

基于块的操作一个主要缺陷是:将图像固定地分成相同大小的块,在高压缩比的情况下会出现严重的块效应,即马赛克效应。以前的学术论文中,出现了很多去块效应算法。最新的压缩标准H.264中,规定了具体的环状滤波算法,该算法综合使用了运动矢量、残差、量化系数、预测模式等信息确定滤波强度,效果俱佳。一下子学术论文中探讨滤波的少多了,^_^,提出一个更好的算法实在太难。

基于块的操作另一个主要缺陷是:交互性差 ^_^ 这就引出了mpeg4的对象编码。

对象编码体系

MPEG4标准是对运动图像中的内容进行编码,其具体的编码对象就是图像中的音频和视频,称为AV对象。AV对象可以组成AV场景。因此,MPEG4标准就是围绕着AV对象的编码、存储、传输和组合而制定的,高效率地编码、组织、存储、传输AV对象是MPEG4标准的基本内容。

MPEG-4的特点是其更适于交互AV服务以及远程监控。这是一个有交互性的动态图像标准。主要用于三个领域:数字电视、交互式的图形应用(包括内容上的合成技术)、交互式多媒体领域等。MPEG-4提供了标准的技术使其能被整合到产品、分类、内容访问等过程中去,为解决日渐庞大的图像、声音信息的管理和迅速搜索提供了可行性,这是基于块的编码体系所远远不能比拟的。

然而,视频对象分割本身就是一个多义、病态的问题,涉及对视频内容的分析和理解,计算机还不具有观察、识别、理解图像的能力;同时关于计算机视觉的研究也表明要实现正确的图像分割需要在更高层次上对视频内容进行理解。视频压缩中,当然可以运动帧间冗余信息加速对象分割,但对于复杂的运动物体还是困难重重。比如,行进的人,手、腿、身体运动趋势各不相同,甚至还可能伴随面部表情,如何有效的提取一个人体对象出来?如果不考虑整体,只根据运动信息获取局部的甚至没有实际意义的对象,这样的分割对于交互、对于图像检索又有什么意义?如果要在编解码段建立对象模型,这样的模型又怎能保证适合千差万别的实际序列?

因此,尽管MPEG-4 框架已经制定,但至今仍没有通用的有效方法根本解决视频对象分割问题,视频对象分割被认为是一个具有挑战性的难题,基于语义的分割则更加困难。

另:(以下纯属个人理解)

1、  mpeg4引入了对象,就增加了形状编码,也即对象的实现是牺牲码流为代价的。

2、  mpeg4中的运动补偿、变换、量化、熵编码,还是以块为单元,也就是mpeg4还不是完全意义上的对象编码。

3、  目前对象编码只适用于特定的有先验知识的场合,比如交通管理、安防系统、视频会议等。

小波编码体系

见我另一篇文章《小波在图像视频压缩领域中的应用分析》

分布式编码体系

记得原先有网友问过这方面的问题,我居然回答成了分布式视频点播方面的内容,误人子弟,惭愧惭愧。

前述的编码体系,都在编码端充分利用了运动估计和运动补偿技术消除时间冗余,而运动估计模块是非常耗时的,也是编码器实现的瓶颈之一^_^。而分布式编码将运动估计模块从编码器中抹去了,放在了解码端!!!

分布式编码中也有IPB帧,这里只试举IP帧做简单说明。I帧和H.26xMpeg系列的规定没什么区别,都是消除空域冗余。而对于P帧,由于编码端没有运动估计和运动补偿,所以P帧信息也只用到了帧内压缩方式,而且此时只传输了图像的基本轮廓信息(主要是高频和部分低频)。在解码端,参考I帧进行运动估计和运动补偿,结合P帧信息就得到了重构图像。

分布式编码体系的优点:编码器较为简单,为移动视频设备更有效地集成到现有的网络中提供了条件。

缺点也是显而易见的:1、编码端没用到运动补偿,压缩效率远不及传统的编码方式(虽然理论证明可以无限逼近)。2、编码端没有重建路径,错误扩散严重,I帧的间隔必须比较小。

注:

以上只是我个人的理解,可能划分并不确切,或者漏掉了某些编码体系。各编码体系并不是相互独立的。比如小波编码体系可以用到对象的概念,分布式也可以用到小波变换……

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/455549.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

cookie练习

cookie是网站便于辨别用户身份,进行 session 跟踪而储存在用户本地终端上的数据。 cookie通过jsdom操作完成。 添加cookie: document.cookie ‘name val’;前一个是name,后一个是val。添加的时间是永久的。 document.cookie ‘name val ;…

算法学习系列(十):用数组模拟链表、双链表、栈、队列、单调栈、单调队列

目录 引言一、数组模拟链表1.模板2.例题3.测试 二、数组模拟双链表1.模板2.例题3.测试 三、数组模拟栈1.模板2.例题3.测试 四、数组模拟队列1.模板2.例题3.测试 五、数组模拟单调栈1.例题模板2.测试 六、数组模拟单调队列1.例题模板2.测试 引言 首先说一下为什么要拿数组来模拟…

为什么你的路由器穿墙能力差?看完秒懂

1、信号弱赖我咯? 不管你承认与否,只要有墙家中就会存有信号死角,不要小看一墙之隔。如何让路由器的信号增强? 网上一搜旁门左道真不少,什么调整天线寻找合理角度,又或是用易拉罐DIY一个信号放大器,然鹅并非简单的将…

fish工具_Python程序员使用哪些开发工具

Python程序员使用哪些开发工具?很多Python学习者想必都会有如下感悟:最开始学习Python的时候,因为没有去探索好用的工具,吃了很多苦头。后来工作中深刻体会到,合理使用开发的工具的便利和高效。今天,北京学佳澳小编总…

[shiro学习笔记]第二节 shiro与web融合实现一个简单的授权认证

本文地址:http://blog.csdn.net/sushengmiyan/article/details/39933993shiro官网: http://shiro.apache.org/shiro中文手冊:http://wenku.baidu.com/link?urlZnnwOHFP20LTyX5ILKpd_P94hICe9Ga154KLj_3cCDXpJWhw5Evxt7sfr0B5QSZYXOKqG_FtHeD-RwQvI5ozyT…

Web安全之Cookie劫持

1.Cookie是什么? 2.窃取的原理是什么? 3.系统如何防Cookie劫持呢? 看完这三个回答,你就明白哪位传奇大侠是如何成功的!!! Cookie: HTTP天然是无状态的协议,为了维持和跟踪用户的状态,引入了Cookie和Session。Cookie包含了浏览器客户端的用…

python中关于深拷贝和浅拷贝的详解

python中关于深拷贝和浅拷贝的详解 概述 在python的语法中,有两种变量的拷贝方式 一种是深拷贝,一种是浅拷贝 我们先说深拷贝 语法 这里需要通过导入系统的copy模块中的deepcopy才可以 import copy 新的对象 copy.deepcopy(被拷贝对象) 解释 深拷贝是将操作对象整体复制…

运动估计简介

运动估计( Motion Estimation) 维基百科链接:http://en.wikipedia.org/wiki/Motion_estimation运动估计的应用有很多,最初的应用的领域是视频的编码。运动估计算法一般分为: 像素递归法pel-recursive algorithm (PRA)和块匹配法 block-matching algorith…

tutte定理证明hall定理_深入浅出|中心极限定理(Central Limit Theorem)及证明

在介绍统计学中最重要的定理之一-中心极限定理-之前&#xff0c;我们先来想一个问题&#xff1a;统计学的目的是什么&#xff1f;根据<Mathematical statistics with application 7th Edition>书中所写的&#xff1a;统计学的目的是基于从总体中的样本所获得的信息&#…

让数据中心变得更加友好

通常来说&#xff0c;数据中心是一个安全防护十分严密的地方&#xff0c;其安全功能的设计旨在阻止不速之客的访问。但专家认为数据中心可以变得更加友好&#xff0c;因为数据中心需要在人类社会中发挥更大的作用。 数据中心的整体概念是一种可以通过云计算或其他方法进行远程访…

traceroute/tracert--获取网络路由路径

traceroute 是用来检测发出数据包的主机到目标主机之间所经过的网关数量的工具。traceroute 的原理是试图以最小的TTL发出探测包来跟踪数据包到达目标主机所经过的网关&#xff0c;然后监听一个来自网关ICMP的应答。发送数据包的大小默认为 38个字节。 通过traceroute我们可以知…

使用Cygwin实现vlc 1.0.5的wince移植

本文完全参照了天将降的博客文章&#xff0c;写于此以作来日备忘之用&#xff0c;原文地址&#xff1a;http://bk6.blog.163.com/blog/static/24498560201051193449196/ 第一步&#xff1a;下载安装Cygwin。笔者建议大家不要安装不完整的版本&#xff0c;以免出现不必要的错误…

andriod studio 运行 无结果_华为物联网操作系统LiteOS内核教程01——IoT-Studio介绍及安装...

1. 物联网一站式开发工具 —— IoT StudioIoT Studio 是支持 LiteOS 嵌入式系统软件开发的工具&#xff0c;提供了代码编辑、编译、烧录 及调试等一站式开发体验&#xff0c;支持 C、C、汇编等多种开发语言&#xff0c;让您快速&#xff0c;高效地进 行物联网开发。2. IoT Stud…

5G通信技术能否终结商用WiFi?

科技创新与体育发展可谓相生相伴&#xff0c;而如今科技在体育领域的应用也越来越广泛。本周的话题关于5G技术与球场&#xff0c;作者为英国体育娱乐营销咨询公司Stadia Solutions的联席首席执行官戈登坎贝尔。在坎贝尔先生看来&#xff0c;球场Wi-Fi赋予了俱乐部对数据的掌控力…

颜色转换

以蓝色为例&#xff0c;#0000FF应该被表示成rgb(0,0,255)。 我们将函数命名为getRGB() &#xff08;可以将字符串视为数组&#xff0c;这个数组的元素为字符&#xff09; function getRGB(color) {var rgb [parseInt(0xcolor.slice(1,3)),parseInt(0xcolor.slice(3,5)),parseI…

wince ./configure

CPPFLAGS"-I/usr/wince/include -D_WIN32_WCE0x0500" LDFLAGS"-L/usr/wince/lib" ./configure--hostarm-mingw32ce 指定软件运行的系统平台&#xff1b;host就是你编译好的程序可以运行的平台--target-osmingw32ce 指定软件面向(target to)的系统平台.这主…

android 按键会触发ontouch吗?_Android实现炫酷的拖拽浮动按钮

IOS的Assistive Touch效果很炫酷&#xff0c;可以任意拖拽&#xff0c;同时点击后会展开菜单栏。然而&#xff0c;这不只是IOS的特权&#xff0c;Android也可以实现。但是由于悬浮窗需要申请权限&#xff0c;所以本文仅在app内实现&#xff0c;可以任意拖拽&#xff0c;并可以响…

强名称程序集(strong name assembly)——为程序集赋予强名称

引言&#xff1a;在曾经的项目开发中&#xff0c;在程序集中见到过一个后缀为*.snk的文件。当时看这个文件的图标。感觉可能是企业内部保护版权啥的一种方式。一&#xff0c;强程序集攻克了哪些问题&#xff1f;1&#xff0c;唯一标识一个程序集2&#xff0c;放置程序集被仿冒和…

如何成为一名合格的数据分析师

“21世纪什么最贵&#xff0c;人才”&#xff0c;在目前大数据时代下&#xff0c;什么最难找&#xff0c;什么最贵&#xff0c;实现数据价值的人&#xff0c;数据分析师。 但是对于数据分析师的认识&#xff0c;比较极端&#xff0c;但对数据分析师价值的认识正在回归理性。很多…

【ffmpeg for wince】音视频编解码多平台移植(for window/wince))ffmpeg

from: http://www.cnblogs.com/windwithlife/archive/2009/05/31/1492728.html 终于完成了了第二个Client side原型&#xff08;for Wince)&#xff0c;其中花掉我最多时间的就是ffmpeg的对WINCE的移植。其中有大半时间是由于网上的一些不完整及不正确信息所误导&#xff0c;但…