(信号与信息处理专业论文)基于mpeg2视频编解码的软件实现.pdf_第1页
(信号与信息处理专业论文)基于mpeg2视频编解码的软件实现.pdf_第2页
(信号与信息处理专业论文)基于mpeg2视频编解码的软件实现.pdf_第3页
(信号与信息处理专业论文)基于mpeg2视频编解码的软件实现.pdf_第4页
(信号与信息处理专业论文)基于mpeg2视频编解码的软件实现.pdf_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 l 随着计算机和通信技术的发展,多媒体监控系统已广泛应用于银行、f l i j _ 物馆、安全部门等,本课题的目的是对监控系统中的关键技术一视频的压缩 和传输进行一定的研究。 视频压缩采用m p e g 一2 标准,在m p e g 一2 中所应用的算法如离散余弦变 换、量化、运动预测、运动补偿、游程编码等,不仅易于软件实现,丽儿能 取得良好的压缩效果。同时,m p e g 一2 中有很多可供选择的参数和选罗i ,改 变这些参数和选项可以得到不同的视频质量,能满足不同的要求。y 本课题的开发工具是微软的v i s u a lc + + 6 0 ,借助于微软提供的岁;库,j 以充分利用面向对象的编程技术,实现代码的良好封装,方便地制作出人女r 的操作界面。 论文首先介绍了视频压缩解压的理论基础和课题涉及到一些m p e ( ;一2 标准 的内容,包括m p e g - 2 中i 、p 、b 帧的编码模式和所使用的视频数据结构,如 视频序列、组块、宏块和块,这对于课题的研究是非常重要的。接着介绍丁, 作者开发的基于m p e g 一2 标准的视频编解码软件。该软件由服务器和客户端眄 部分组成,客户端的功能模块主要包括显示图象文件( y u v 格式) 、编码以技 发送压缩后的文件。显示模块的工作有两个:先把文件从y u v 格式转化为r ( j | 1 格式,再显示文件。编码模块采用离散余弦变换、量化、游程编码等方法减 小视频的空间冗余,再利用运动预测等方法降低时间冗余,这样视频数掘将 得到有效压缩。服务器的功能模块包括接受压缩后的视频文件、解码及j ,j i 图象。解码是编码的反变换。服务器和客户的通信主要是通过从c s o c k e t f f 继承的函数予以实现。同时,对视频的压缩比、压缩后视频的视觉效果和 输等实验结果进行了分析和讨论,充分证明了本视频通信系统可适用予 d 的以太网。最后,指出了需要进一步改进的地方。 关键词 m p e 洒压缩解压t c p ;p 视$ 菇输 、, a b s t r a c t _ i r it ht h e d e v e l o p m e n t o ft h e c o m p u t e r a n dt h ec o m m u n lc a t 】oj 1 m u l t i m e d i am o n i t o rs y s t e mi sw i d e l y u s e di nb a n k ,m u s e u ma n d t h e s e c u r l t yd e p a r t m e n t e t c t h ep r o j e c ti sa i m e da ts t u d y i n gt h ek e y t e c h n i q u e si nm u l t i m e d i am o n i t o rs y s t e m 一一v i d e oc o m p r e s s i o n a n dv l d e ( t r a n s m i s s i o n v i d e oc o m p r e s s i o nm a ya d o p tm p e g 一2 s t a n d a r d t h ea l g m it h m ii i m p e g 一2s u c ha sd c t 。q u a n t i z a t i o n , m o t i o n p r e d i c t i o n ,t o o li ( ) c o m p e n s a t i o na n dr u n l e n g t hc o d i n ge t c ,n o to n l yi se a s yt oi m p l e m e l l l b y t h es o f t w a r e ,b u ta l s oa c h i e v e st h eg o o dc o m p r e s s i o ne f f e c t 1 j a d d i t i o n t h e r ea r em a n ys e l e c t i v ep a r a m e t e r sa n do p t i o n st h a tc a nb c c h a n g e d t o g e t t h ed i f f e r e n tv i d e oq u a l i t ya n dm e e ta 1 1k i n d s o f r o q u i r e l i l e n t s t h ed e v e l o p i n gt o o li nt h ep r o j e c tisv i s u a lc + + 6 0 b ym e a n f 0 1 t h ec l a s sl i b r a r yp r o v i d e db ym i c r o s o f t w ec a nm a k ef u l lu s eo f t o h j e c t o r i e n t e dp r o g r a m m i n gt e c h n i q u e ,e n c a p s u l a t et h ec o d ew e l 1a n ( i m a k et h ef r i e n d l yo p e r a t i n gi n t e r f a c e t h et h e s i sf i r s ti n t r o d u c e st h et h e o r yh a s i so fv i d e nc o m p r e s s i 0 1 1 a n dd e c o m p r e s s i o na n dt h ec o n t e n to ft h em p e g 一2s t a n d a r di n v o l v e d if i t h ep r o j e c t ,i n c l u d i n gi ,p ,bf r a m ee n c o d i n gm o d ea n dt h ev i :l e od a t a s t r u c t u r es u c ha sv i d e o s e q u e n c e g r o u p o fb l o c k s ,m a c r o b l o c ka n di ) 】o i k w h i c ha r ec r u c i a lf o rt h ep r o j e c tr e s e a r c h t h e ni n t r o d u c et h ev 1d e ( 1 s o f t w a r eb a s e do nm p e g 一2s t a n d a r di d e v e l o p w h i c hh a st w op a r t s : s e r v e ra n dc l i e n t t h ec l i e n t sf u n c t i o n sa r ed i s p l a y i n gt h ef i l e ( y 1 1 v f o r m a t ) ,c o m p r e s s i n g t h ef i l ea n d s e n d i n g t h e c o m p r e s s e d f jl e d i s p l a y i n gt h ef il en e e d st w os t e p s :f i r s tc h a n g et h ef il ef r o my i j v f o r m a tt or g bf o r m a t ,t h e nd i s p l a yt h eb m pf i l e c o m p r e s s i n gt h ef ii t 、 i n c l u d e s r e d u c i n gs p a t i a lr e d u n d a n c eb yw a yo fd c t ,q u a n t i z a t i o n , r u n 。l e n g t hc o d i n ge t ca n dr e d u c i n gt e m p o r a lr e d u n d a n c eb yw a yo l m o t i o r l p r e d i c t i o ne t c t h u st h ev i d e of i l ec a nb ee f f e c t i r e l yc o m p r e s s e d 。r h , - s e r v e r sf u n c t i o n sa r er e c e i v i n g ,d e c o m p r e s s i n ga n dd i s p l a y i n gt l l e v i d e of i l e d e c o m p r e s s i n gt h ef i l ei st h ei n v e r s et r a n s f o r m a t i o no l t h ef i l ec o m p r e s s i o n t h ec o m u n i c a t i o nb e t w e e ns e r v e ra n dc 1i e n t i s 2 一 m a i n l ya c c o m p l is h e db yt h ei n h e r i t e df u n e t i o n s f r o mc s o c k e t a tt h e s a m et i m e t h ee x p e r i m e n tr e s u l t ss u c ha st h ec o m p r e s s i o nr a t i o o i v i d e o 。t h ev i s u a le f f e c to ft h ec o m p r e s s e dv i d e oa n dt r a n s m i s s i o na t :- a n a l y z e d a n dd is c u s s e d ,w h i c hp u t sa b u n d a n ta t t e s t a t i o n s o nt1 1 0 s o f t w a r e a p p l i c a t i o n t oe t h e r n e t a t l a s t p o i n t o u tt h e w a y s ( i im p r o v e m e n t k e y w o r d s m p e g 一2 、c o m p r e s s i o n 、d e c o m p r e s s i o n 、t c p i p 、v i d e ot r a n s m i s s i o r 一3 一 第1 章课题的背景 1 1图像监控系统的发展过程 随着电子信息和数字化技术的发展,图像处理技术在电视、通信和监拧 等场合得到广泛应用。一般的说,监控系统的技术水平是和当时的图像处删 水平相适应的,监控系统的发展大致可分为三个阶段。 1 1 1 模拟图像监视阶段 原始的黑白图像监视系统从黑白摄像机、电视机出现起,就已诞生,被 广泛应用于保安、生产管理等场合。当时的监视系统采用模拟方式,般足 将图像信号直接送入视频电缆进行传输,每一监视点的视频信号都通过一条 电缆线连接到中心控制室的多路切换器上,手动切换方式选择监视点图像 使之显示在监视器上。 后来,为了适应在一个地点需要传送多台摄像机的图像信号、减少i 乜缆 路数的要求,采用了模拟射频调制的方法。该方法是将各路视频信号调制存 不同的射频载波上,通过多路合成器、多路分解器进行调制解调,最终还原 出各路视频。 1 1 2 数字化图像监控阶段 随着数字化技术的发展,开始使用p c 处理图像信号。通过视频采集f : 将视频信号采集到计算机中,并进行显示。但是控制与切换一般采用传统的 单片机。由于通信协议的多样化与专用化很难统一,计算机的运行速度较低, 而数字视频的数据量又很大,这样就限制了利用一台p c 同时处理更多数字 视频信号的能力,很难组建大型监控系统。 1 1 3 多媒体网络图像监控阶段 随着数字视频压缩技术的日益成熟,再加上网络和通信技术的发展,为 多媒体应用提供了条件。新的图像监控技术所涉及的区域范围包括局域| 哪、 城域网和广域网,能实现对现场的实时监控。 1 2 图像监控系统中的关键技术 稳定可靠的数字图像监控系统需解决音视频的编解码、网络传输、远端 设备控制等关键技术。同时还要考虑系统软件的稳定性、易用性、实时性。 1 2 1 视频编解码 因为未经压缩的视频数据需要的存储容量太大,对视频编解码即对现实 世界中的模拟视频采样、压缩和解压缩是必须的。对于现代数字图像监控系 统来说,实时传输视频数据也是基本功能之一。当前已有许多有效的压缩标 准应用于数字监控系统,如h 2 6 3 ,m p e g 1 ,m p e g - 2 ,m p e g 一4 等。 1 2 2 网络传输 随着多媒体通信技术和网络技术的发展,多媒体远程图像监控系统:j r 始 出现。该系统能把远处的多媒体信息通过网络实时传送到本地的不同监控,乜 可使多个不同的部门能同时查看远处的情况,也能使一个部门同时查看远处 多个不同地点多媒体信息。由于数据流量大,实时性要求高,网络的稳定t : 十分重要。 1 2 3 软件设计 在数字图像监控系统软件设计中,良好的用户界面能使用户操作更为乃+ 便。由于当前的处理器速度已足够用于实现图像的解压缩工作,图像监撺系 统可以用软件对图像进行解码显示,因此良好的图像解码算法非常重要,它 能缩小图像的延迟速度。同时软件的实现应采用最新的面向对象化技术,便 于系统升级、扩展和维护。 1 3 数字图像监控系统主要用途 数字图像监控系统主要用于国民经济中机要部门和其他部门,川来刈i f 要地点监视、控制和报警。对重要部门的监控,如档案室、文件室、金阼 博物馆等;对工厂、市场等的监控,如工厂生产过程、市场、营业厅:、肥览 厅、货场等:对交通运输的监控,如公共交通、铁路车站、铁路调度场锋: 安全报警方面如防盗、防火等。 1 4 课题的目的 本课题主要目的是研究基于m p e g 2 标准的视频编解码软件。该视频软 件包含两个终端程序:s e r v e r 和c l i e n t ,使用纯软件的方法实现了以下功能: s e r v e r 的功能: ( 1 ) 视频源文件的显示( y u v 格式) ( 2 ) 视频编码 ( 3 ) 视频图像文件的传输 c l i e n t 的功能: ( 1 ) 压缩后的视频图像文件的接受 ( 2 ) 视频解码 ( 3 ) 视频图像文件的显示( y u v 格式) 开发终端软件的环境为v i s u a lc + + 6 0 ,主要使用m f c ( 微软基本类阼) 来编写程序。论文中出现的源代码若无特别注明均为c + + 语言代码,文巾f h 现的“工程”、“类”若无特别注明均为v i s u a lc + + 6 0 中的工程项目( w o r k p r o j e c t ) 和类( c l a s s ) 。 第2 章数字图像压缩理论基础 2 1数字视频信号压缩的必要性和可能性 数字图像具有很多模拟图像无法比拟的优势,但数字图像也存在着数捌 速率太高的问题。因此,必须采用压缩编码技术以减少码率。 数字化的图像信号之所以能进行压缩主要依赖于下面两个基本事实: 一、图像信号存在大量的冗余度并且这种冗余度在编解码后可以无失真地恢 复。第二、可以利用人的视觉特性,在图像变化不被觉察的条件下以定的 失真换取数据压缩。 图像信号的冗余度主要表现为很强的空间( 帧内) 和时间( 帧问) 枇火 性。既然数字图像信号在时间和空间上存在很强的相关性,所以可以利川相 关的压缩编码算法去除这些冗余信息,从而降低信息传送的速率。 与此同时,由于人眼对图像的细节分辨率、运动分辨率和对比度分辨率 的感觉都有一定的界限,因此只要在图像处理时引入的失真不是很大,人的 眼睛是不易察觉的,仍会认为图像是完好的或足够好的。因此可以在满足刘 图像质量一定的要求的前提下,减少表示信号的精度,实现数据压缩。 本文所说的压缩编码是有损的,也就是在允许图像有一定的失真。在小 影响观看的前提下,利用图像信源的特点,采用适当的编码方法去除图像化 源相关性引起的冗余度,以尽可能少的码元来传送尽可能多的信息。 2 ,2 视频编码理论基础 2 2 1无失真压缩图像编码 ( 1 ) h u f f m a n 编码 变字长编码的最佳编码定理:在变字长编码中,对于出现概率大的信息 符号编以短字长的码,对于概率小的符号编以长字长的码。 h u f f m a l l 编码是根据可变长度最佳编码定理,应用h u f f r n a n 算法得到的 一种编码方法。它是整数编码的一种晟佳码,即它的平均码长在具有相同输 入概率的前提下,比其它任何一种唯一译码都短。h u f f m a n 编码是图像j 臣缩 中的重要编码方法。 ( 2 ) 算术编码 算术编码是另一种利用信源编码概率分布特性,能够趋近熵极限的编码 方法。尽管它也是对出现概率大的符号采用短码,对出现概率小的符号采用 长码,但其编码原理与h u f f m 锄编码却不相同,它和h u f f m a n 编码的最火k 别在于它不是使用整数码。 算术编码的方法是将被编码的每个信源消息按其概率大小表示成实数 轴o 1 之间的一个区域( 或称之区间) ,概率越大,所占间隔越大,表示这 间隔所需的二进制分数值位数就越小;反之就越大。算术编码所产生的码字 实际上就是一个二进制分数值的指针,该指针指向所编符号对应的概率区阃, 该区间为半开区间,包括左端点,不包括右端点a ( 3 ) 游程编码 游程编码( r u n 1 e n g t hc o d i n g ) 是一种相对简单的编码技术,主要思想 是将一个相同值的连续串用一个代表串长和值的组合码字( r u n ,l e v e l ) 来 代替。其中游程( r u n ) 表示系数系列中连零系数的长度;量化电平( l e v e l ) 表示连零系数之后第个非零系数的值。 为达到较好的压缩效果,游程编码经常和其他一些编码方法混合使片】。 2 2 2 限失真压缩编码 率失真理论从理论上指出,在给定信号允许失真度的条件下,为了减少 图像传输的比特率,应尽量减小传输信号的方差。预测编码和变换编码m 足 根据这一理论对原始图像进行压缩,使处理后的图像信号的方差减小,i 专终 达到压缩编码的目的 ( 1 ) 预测编码 对于绝大多数图像来说,在局部空间和时间上是高度相关的,因而1 j 以 在已得到像素的基础上通过对当前像素的预测来减少图像的数据量。即可利 用x i - i ,x m ,x i - m 来预测x i 的值,它们的差值d i 的方差比原始图像系列的方,笠 要小。因此,传输它们的差值就可用比较少的比特数。 帧内预测编码 帧内预测编码的理论根据是二维图像中像素间存在很强的相关性,因此 可用已知的前面几个像素值来预测当前像素值,这些像素可以是前几行的或 i i 几帧的,分别称为一维、二维和三维预测,然后对实际值与预测值的辨值 ( 预测误差) 进行量化和编码。 帧闯预测编码 帧间预测编码的理论依据是视频信号的相邻帧间存在极强的相关性。利 用这种时间相关性来进行帧间编码,可获得比帧内d p c m 高得多的压缩比, 采用的预测方法有以下几种:帧重复,对于静止或活动很慢的视频信号,i 】 以少传一些帧:阈值法,即只传送像素亮度的帧间差值超过某一阙值的像素: 帧内插,对活动缓慢的图像,可以使用前后两帧图像进行内插以得到实际图 像的预测图像,然后对实际帧与预测的差值信号进行编码:运动补偿预测。 ( 2 ) 变换编码 绝大部分图像信号在空间域中像素之间的相关性是很大的。它们经过t f : 交变换后,其能量主要集中在低频部分,而且经过正交变换后相关性大大降 低。变换编码的基本思路就是利用上述特点,在编码时略去某些能量很小的 高频分量,或在量化时对方差较小的分量分配以较少的比特数。另外,变执 编码还可以根据人眼对不同频率分量的敏感程度而对不同系数采用:,:剐的| | i 化台阶,以进一步提高压缩比。 经过变换后,其频谱系数将被量化( 可采用标量量化或矢量量化) 。:a 化 过程将在重建图像中引入量化噪声,导致图像的损伤。接下来要对鼓化的结 果进行无损熵编码,此时可采用哈夫曼码或算术码。熵编码的目的是进1 步 去除符号的冗余度。 在图像压缩中,最常用的变换方法是d c t 。d c t 变换矩阵的大小可以从 去除相关程度和实现难易程度等方面来综合考虑,8 8 通常被认为是种较 好的选择。其二维d c t 及i d c t 变换如下: 胤,) :知川l 壹壹邝s 譬竽s 号竽】沼 巾= 去壹塞c c 脚m 。s 竽s 等竽 u - 0 l 七0 1 ” ” 其中: c ( 咖击,u = 。c ( u ) = 1 u 。 c ( v ) = 万1 ,v = 。c ( v ) = l ,v 0 f ( i j ) 表示输入图像的样点值 f ( u ,v 1 表示d c t 变换后的变换系数 在各种图像编码标准( h 2 6 1 ,h 2 6 3 ,m p e g ) 中均使用了8 8 d c l 变换 编码。二维d c t 及i d c t 的实现有很多种算法,其快速算法的基本思想。般 是先将二维d c t 转化为一维d c t ,利用d c t 与d f t 的联系,使用蝶形g 构的d f t 计算。 变换编码在当前的软件水平上易于实现,且具有良好的压缩性能,通常 在l o 倍压缩比的情况下提供优良的图像质量。但另一方面,变换编码也彳f 其固有的缺点:( 1 ) 变换编码是一种块结构编码方法,因此若处理不当,很容 易出现所谓的“块效应”,即块与块之间的不连续性。( 2 ) 图像中的边界、纹 理处理出现较明显的损伤。因为图像的边界、纹理部分有较丰富的高频成分, 在高压缩比条件下,高频系数常常被租糙的量化,甚至被丢弃,导致高频信 息的损失。这使得在这些区域的图像变得模糊,影像图像质量。 2 3 图像压缩中的关键技术 基于d c t 的图像压缩主要包括以下几个步骤:图像分块、d c t 变换、 量化、熵编码、运动估计与运动补偿以及速率控制等主要几个步骤。 2 ,3 】图像分块 在基于d c t 的压缩编码过程中,由于变换是对一个一个的图像块进:ii 的,所以在对图像进行d c t 变换之前需要将图像分为互不重叠的图像块。似 设一帧图像的大小为m n ,我们将其分为尺寸为l x l 的彼此没有重魏的 子图像。m 、n 必须为l 的整数倍。 2 3 2 d c t 变换 对于8 8 的二维图像块,离散余弦变换的定义见( 2 - 1 ) ,( 2 2 ) 。 在对图像进行二维d c t 时,处理对象为n n 且不与其他子块重叠的方形 予图像。一般说来,尺寸越大,越能利用图像的空问相关性,压缩效果会啦 好一些。但研究表明,当尺寸大n - 。定程度时,由于图像像素之间的棚矢t i j 减弱,使得压缩效果的改善不是很大,而且还导致运算复杂性的增加。实验 表明,在具有相同图像质量的情况下,压缩比与选取的尺寸有如下图2 i 天 系: 2 5 2 o 1 5 1 0 0 5 子块尺0 图2 - 1 压缩比与图像块尺寸的关系 由上图可知,当子块尺寸超过8 8 时,压缩效果的改善不是很大,行以 现在一般都选择8 x 8 的尺寸为d c t 的处理单元。现在的v l s i 技术已经能搬 容易地实现8 8 的d c t 运算。 需要说明:d c t 变换是一个无损变换,即我们对得到的变换系数进 ,反 变换,从理论上应该得到原始的输入图像块。但由于在计算机中进行d c t 变 换需要进行浮点计算,而计算机在运算中存在字长效应,因此反变换得到的 信号与原始信号会有很小的差别,但差别很小,几乎可以忽略。 2 3 3 量化 d c t 变换将时间域的图像变换到了频率域,其中左上角的系数对应于图 像的低频信息,而右下角的系数对应于高频的信息。由于人的眼睛对图像的 低频特性比如物体的总体亮度之类的信息很敏感,而对图像中高频信息4 i 敏 感,因此在传送过程中可以少传或不传送高频信息,而只传送低频的信息, 图像压缩编码正是利用人眼的这种特性来进行图像压缩的。基于d c t 的图像 压缩编码算法通过量化过程来判断是否要传送某一个频率分量,量化的 1 的 是去除人眼视觉不敏感的信息,从而降低信息传送的速率。 量化的过程可以简单的用下面的公式来表示: f ,( “m ) :,。m d ( i 堕上l1 ) ( ! 3 ) 。 l q ( u ,v j 。q j 其中:c ,( “v ) 表示经过量化后的d c t 系数 f ( u r ) 表示量化前的d c t 系数 9 ( v ) 表示量化加权矩阵 q 表示量化步长 r o u n d 表示归整,即将输出的值取为与之最接近的整数值。 类似地我们可以很容易地写出反量化的表达式: 尸( ”t v ) = 局( 玑v ) q ( u ,v ) “q ( 2 4 ) 由于量化过程是一个非线性过程,信号f ( u ,v ) 经过量化和反量化后得到的 值f ( ) 与f ( u ,v ) 本身是不同的,即存在一定的误差。 由于人的眼睛对不同的频率分量具有不同敏感度,比如人的眼睛对低频 分量比较敏感,而对高频分量不太敏感,因此在量化过程中可以对不同系 数采用的不同加权系数,使得在量化步长为口时,不同的系数具有不同的误 差。量化加权矩阵是很多的国际性组织和个人经过对各种各样的图像综彳 统 计后给出的。在实际应用中,量化的方法还要复杂一些并且可能有多个醅 化加权矩阵,但最终的目的是相同的,那就是更好地利甩人眼的特性,以最 低的信息速率获得最好的图像质量。 在量化过程中还有一个重要的参数:量化步长g 。量化步长的作用是控制 量化误差的大小。通过调整q 的值可以改变编码后所需要的比特数目实i 斩i 上是牺牲图像质量来换取较低的传送速率或用宽的带宽来换取较高的图像质 量。事实上目前的图像编码器的输出速率之所以能在较大的范围内变化,最 主要的原因就是它可以调节量化器的量化步长。 2 3 4 熵编码 在图像压缩编码中经常采用的熵编码有游程编码( r l c ) 及变字长编6 q ( v l c ) 等,这两个编码方法常结合使用。 游程编码般用于在数字信号中经常有相同码字连续出现的场合。在矧 像压缩编码时,数据经d c t 等变换编码后。其系数按照一定的方式排列后 高频系数经常会出现连o 的情况。此时如果对0 的长度( 游程) 进行编码, 则可以有效地对这些系数进行压缩。 游程编码与变字长编码相结合,可获得更高的压缩比。 当对m 个字长为b 比特的码字进行编码时,如果码字出现的概率不灶均 匀分布,则由信息论的理论可知,一定存在一种编码方法,能够以每样值n 0 平均码长少于b 比特的码字对该数据进行编码。 在变字长编码中,最著名的是h u f f m a n 于1 9 5 2 年提出的编码方法,根捌 该方法得到的码字,平均码长最短。 经过以上各节的讨论。可得出结论:对于图像序列的压缩,不仅要考虑 到图像空间方向的相关性,而且还要考虑序列在时间轴上的相关性,同时还 要利用无损编码来达到可观的压缩性能。这三者结合起来能更有效地对阁像 数据进行压缩。 2 3 5 运动估计和运动补偿 运动估计与补偿是活动图像压缩的关键技术之一。目前已经成为副际轫i 准的图像压缩算法,从h 2 6 1 。h 2 6 3 ,m p e g 1 ,m p e g 2 到m p e g 4 锦标 准,都无一例外的使用了运动补偿( 简称m c ) 技术。 运动补偿( m c ) 是消除图像序列时间方向冗余度的有效手段,占常常祁 各种其它技术组合在一起实现完整的编码器。运动估值技术般将输入图像 分割成若干彼此不相重叠的方块( 通常为1 6 x1 6 大小的块) ,然后为每个 块寻找一个运动矢量,如下图2 2 所示。寻找运动矢量的过程是一个优化过 程,即按照某种匹配准则( 如m s e ,最小均方误差准则) 为当前块在参考图 像中寻找一个误差最小的块,这两个图像块的相对位移便是运动矢量。运幼 补偿是将运动矢量所指的图像块“粘贴”到当前块所在位置,作为当前块的 预测值,如图2 - 3 所示。 候选补 图2 - 2运动估值原理 图2 3运动补偿原理 图像分割是运动补偿预测的基础,但实际上要把图像分割成不同运动的 物体是比较困难的。通常采用两种比较简单的方法:一是把图像划分成矩形 子块,适当选择子块大小,把子块分为静止和运动两类,估计出运动予块的 位移,进行预测编码,这种方法称之为块匹配法( b m a ) 。另一种方法是对 每个像素的位移都进行递归估计,因此称之为像素递归法( p r a ) 。这两种算 法各有其特点,通常像素递归法较块匹配法精度高,对运动画面的适应能力 也强,但只能跟踪较小的位移,且实现复杂。块匹配法虽然精度低于像素递 归法,但由于其位移跟踪能力强,且实现简单,因此在实际中得到了广泛的 应用。 := = = 兰坠奎兰垦皇釜垒垒圣圣= = = = 一 _ - - _ h _ _ _ _ _ _ _ _ _ 一一 2 3 6 解码过程 接收端的解码过程比较简单。首先它要根据接收到的码流解出不f | i f i q : 维事件,然后根据事件中的游程和数据值恢复出量化后的系数矩阵。 接下来就是进行反量化,也就是利用与量化过程相反的计算公式来推钟 d c t 系数。 在d c t 系数矩阵的基础上可以进行i d c t 变换,最终得到原始的在时m 域图像的像素值。 2 3 7 混合编码 现在流行的图像压缩的国际标准几乎无一例外的都同时采用上面叙述的 编码算法,即变换编码十运动补偿+ 熵编码的混合编码方案来实现图像序 y j j ( i 虱像) 的压缩。即用d c t 变换来消除图像帧内相关性,用运动估计和运动 补偿来去除图像的帧间相关性,用熵编码来进一步提高压缩的效率等。 图2 4 给出了混合编码( 变换编码+ 运动补偿+ 熵编码) 的模型。该模型 普遍用于h 2 6 1 、h 2 6 3 、m p e g i f i m p e g 2 等标准之中。 x ( m ,n ) a 三厮蕊孤 运动朴偿 运动估计i + h 帧存储器 述串控制 哥卧晦等 型 i 反变换l l + 一x ( m ,月) 运动矢量 图2 4 基于d c t 的图像压缩编码系统 从图中可以看到,当前输入的图像首先要进行分块,分块得到的小图像 要与经过运动补偿的预测图像块相减得到差值图像块x ( r e , n ) ,然后对泼燕他 劁像块进行d c t 变换和量化,量化的输出有两个不同应用:第一个应用足i l 给熵编码器进行编码,编码后的比特流输出到一个缓冲器中保存,等待信 的传输部分来将其读出送到线路上去。另一个应用是进行反量化和反变换历 得到信号( r a ,一) ,该信号将与运动补偿输出的图像块相加得到新的预测阳像 信号,并将新的预测图像块送帧存储器。 帧存储器的作用是保存前面一帧图像的值以便用于运动估计剃运动 偿。从图中可以看到每输入一个图像块,运动估计均要根据当前输入的【蝈像 块和保存在帧存储器中的参考图像来确定运动矢量,输入的运动矢量要送给 运动补偿模块,运动补偿将根据运动矢量从帧存储器中保存的参考图像中耿 _ “一个小块的图像作为当前输入图像块的预测值,并将该值送给减法器以便 导到x ( m ,n ) 。 从图中还可以看到:信息经过熵编码送入缓冲器。通常情况下缓冲器的 大小是固定的。如果某个时刻输入图像很复杂,编码后输出的比特数比较多, i 们比时后续的电路还没有将缓冲器中已经编码的图像数据取出,那么当前编 码的数据就没有地方可以保存,从而造成缓冲器的上溢出;相反,如果:。j 前 编码的图像很简单,编码后输出的比特数很少,而此时后续电路读l 仪信息的 速率很快,那么就可能出现缓冲器中无数据可读的状态,即缓冲器i 现下溢 出。为了避免这两种情况的出现,通常从缓冲器到量化器上会有一条反馈通 路,用以控制编码器输出的比特数。当发现缓冲器快出现上溢出时,控制电 路会要求量化器提高量化步长,更多的d c t 系数在量化后变成了0 ,这4 :f 纾 过熵编码后输出的比特数就很少,从而使缓冲器不会出现上溢出的现象。反 之,如果发现缓冲器快出现下溢出时,控制电路会要求量化器减小量化步长, 型多的d c t 系数在量化后不为0 ,这样经过熵编码后输出的比特数就比较多, 从而使缓冲器不会出现下溢出的现象,这个过程叫速率控制。速率控制足图 像压缩编码中一个非常重要的技术,它使得同样一个编码器能在多利t 不n 日输 l 叶j 速率的环境中正常工作。 虽然编码的过程非常复杂,但解码的过程比较简单。图2 5 给出了解矾 的系统框图。从图中可以看出。接收端接收到的信息首先要经过熵解码,还 原为量化系数,然后送给量化器进行反量化得到d c t 系数,最后通过i ”i 的反变换恢复原始的图像数据。由于在编码端编码的只是当前图像和参考图 像的差值,所以在接收端必须要将解码获得的差值图像和参考图像村| 力【1 ,以 恢复最原始图像。当然在解码过程中也需要利用运动矢量等边信息以确定参 考图像块在前面图像中的位置。 图2 - s 解码系统框图 2 3 8i 、b 、p 帧编码模式 在基于d c t 的图像压缩编码中常常采用l 、b 、p 帧的编码模式。在编码 过程中,编码算法将输入到编码器的每一帧图像分为i ( i n t r a ) 帧、b ( b i d i r e c t i o np r e d i c t i o n ) 和p ( p r e d i c t i o n ) 帧三种不同的类型,并且具订 定的排列顺序。如图2 - 6 所示的i 、b 、p 帧的组织结构是一种非常典型的约:i 织结构。 问 图2 6 典型的i 、b 、p 帧结构顺序 不同类型的帧在编码过程有不同的处理方法。对于i 帧图像来说,在编 僻5 过程中它不需要进行运动估计和运动补偿,它只是对当前输入图像的每个 小块直接进行编码,没有消除时间方向的相关性,所以压缩的效果不是很好。 p 图像与i 图像不同,它在编码过程中要利用前面的i 或p 图像作为参考阁像 迸行运动补偿,编码实际上是对当前图像与运动补偿图像的差值进行编码。 b 图像的编码方式与p 图像相似,唯一不同的地方是在编码过程中它要利川 在当前位置前面的i 或p 图像和后面的i 或p 图像进行预测,并从- ,选 个最佳的运动矢量。图2 7 给出了i 、b 、p 帧图像在编码时使用参:弩图像的 情况。从图中可以看出在对第4 帧的p 图像进行编码时需要使用第l 帧的l 图像作为预测帧,而对位于第2 帧的b 图像进行编码时需要用位于第1 4 顷的 l 图像和位于第4 帧的p 图像作为参考帧。 图2 7b 、p 帧编码时使用的参考帧 从图中可以看出编码端在进行图像编码时需要对图像编码的顺j 芋进j i 渊 整,通常需要在编码器中有一个大的输入缓冲器将当前输入的图像进行缓存。 解码过程与编码过程相似。解码后的图像也要先写入缓冲器,然后_ | i f 舨 照显示顺序从缓冲器中读出要显示的图像帧,利用这样的方法就可以保证输 入图像和输出图像在时间顺序上的一致性。 需要注意的是:在解码过程中只有i 帧图像才能独立的解码,b 和p 嘲像 均需要利用参考图像并结合运动矢量完成解码过程,所以说在解码过程t i j 通 常需要从i 图像的位罱丌始解码。 些垒垒垒坠圭垦垒垄= = = = = 一 - _ _ _ - _ - _ - - _ 一。 第3 章m p e g - 2 标准及应用 国际标准化组织活动图像专家组( m o v i n gp i c t u r ee x p e r t sg r o u p :m p e g ) 从1 9 9 3 年开始制定了m p e g 2 标准。m p e g 一2 是一种高质量的压缩标准,也 有人称它为用于广播电视的视频压缩标准。m p e g - 2 标准共有九项:l 系统i 2 视频;3 音频;4 符合性测试;5 软件;6 数字存储媒体的指令和控制:7 非向后兼容的音频;8 十比特视频:9 实时接i = 1 。 3 1m p e g 一2 中类( p r o f ii e ) j 口级另0 ( 1 e v o i ) m p e g 2 的最重要扩充即是含有分级编码的各种算法,它是以空间和时 间滤波与亚取样技术和系数分段技术为基础的。 m p e g 一2 标准有四种分级方法:空间分辨率的分级;时间分辨率的分级: 数据分割和信噪比可分级性。这四种方法均可生成至少两种码流:基层码流 和增强层码流。其中基层码流可被独立解码,得到比原始编码图像质量低的 i 到像。这几种方法生成的增强层都含有为获得高质量图像而必需的信息。p q 种方法的主要差别在于基层所包含的内容上。在数据分割方法中,基层j ,j l 包含一部分变换系数。在信噪比可分级方法中,基层则含有原始图像的粗: 矗 化的数据信息。在空间可分级方法中,基层的空间分辨率可比原始图像的空 问分辨率低。而在时间可分级方法中,基层的时间分辨率可比原始图像f l j , 1 问分辨率低。m p e g 一2 标准规定了待解码码流应符合的语法结构,而对编 码不作规定。我们根据解码码流的标准语法结构,相应地推出编码码流j j 迂彳= 7 合的语法结构,然后就可在自己的需求下,较为灵活地选择其编解码方案。 为了适应广播、通信、计算机和家电视昕工业的广阔需求以及不同的数 字h d t v 体系。i s o i e cd i s l 3 8 1 8 2 ( 即m p e g 2 视频部分) 制定了5 类、 4 个等级。 ( 1 ) 简单( s i m p l e ) 类:除了没有内插图像帧以外,与主( m a i n ) 类相同以 节省r a m 。 ( 2 ) 主类:没有可分级性,但质量要尽量好。 ( 3 ) s n r 可分级( s c a l a b l e ) 类:一种对主类的改进,给出按信噪比的i 叮分 级性。 ( 4 ) 空间可分级类( s p a t i a l l ys e a l a b l e ) 类:支持图像空间域分辨率的可分级 性。 ( 5 ) 高( h i g h ) 类:支持4 :2 :2 及全部可分级性。 等级则与每类相关联。d i s l 3 8 1 8 - 2 确认4 个等级。 ( 1 ) 高( h i g l l ) 级:粗略地与每扫描行1 9 2 0 取样的h d t v 对应。 ( 2 ) 高1 4 4 0 ( i l i g h1 4 4 0 ) 级:粗略地与每扫描行1 4 4 0 取样的h d t v 对府。 ( 3 ) 主( m a i n ) 级:与常规电视对应。 ( 4 ) 低( l o w ) 级:类似i t u t h 2 6 l 建议的c 1 f 。 类,等级的组合将给出2 0 种不同规格,但并非所有组合都有实际意义u 其中如下4 种技术规范比较重要: ( 1 ) m p m l :即主类主级,可能的应用包括数字视频广播( d v b ) 、数 字视盘( d v d ) 、数字有线电视和交互电视等。美国的1 5 0 路卫星直播电桃铃 业务都采用m 旦蛰垦些。 ( 2 ) s m l :即简单类主级,将用于数字有线电视和数字录像机。 ( 3 ) m p 囝h l :即主类高级,用于全数字h d t v 。美国的a f v 采, t l j 丛p h k ( 4 ) s s p h 1 4 4 0 :即空间可分级类高1 4 4 0 级,用于h d t v ,欧洲的h d f v 系统倾向f 采用s s p h 1 4 4 0 。 m p e g 2 的首选应用是基于主要档次和主要等级上( 由二号家确i i 三为 “m e m l ”) 。在质量要求不高的情况下,低等级可用在主要档次j ( m p l l ) 。 3 2m p e g 一2 视频压缩方法 m p e g v i d e o 图像压缩技术基本思想和方法可以归纳成两个要点:i 在空间方向上,图像数据压缩采用j p e g 压缩算法来去掉冗余信息。2 在时 l b j 方向上,图像数据压缩采用运动补偿( m o t i o nc o m p e n s a t i o n ) 算法:彩去掉。几 余信息。为了在保证图像质量基本不降低而又能够获得较高压缩比,m f e g 专家组定义了三种图像:帧内图像l 、预测图像p 和双向预测图像b 。这z 砷 图像采用不同的处理方法,具体细节见2 3 8 。 m p e g - 2 利用相继序列传输的相似性形成图像组( g o p ) 从而减少了数 据传输量。另外,它能够在在图像质量和传输速率上进行选择,可选择给定 图像质量级别下的低传输率,也可为选择高质量的图像而设定某一传输炽, 传输速率范围在2mb ! r8 0m b s ,子采样格式y u v 即可支持4 :2 :0 也) ! c = 拍:4 :2 :2 。 3 3 m p e g - , 7 建议使用的图像数据结构 3 3 1 视频序列。编码的比特流中的最高语法结构就是视频序列,个枞 频序列以一个序列头开始,后面可选

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论