




已阅读5页,还剩59页未读, 继续免费阅读
(信号与信息处理专业论文)嵌入式系统下的实时视频软件编码器的实现及其应用.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 论述了一种在p h i l i p s 的n e x p e r i ap n x l 3 0 0 嵌入式多媒体处理d s p 平台 上,采用软件实现实时视频编码的方案。 硬件方面,采用p h i l i p sd v e 一2 嵌入式多媒体实验板。该实验板由 n e x p e r i ap n x l 3 0 0 结合必要的外围电路所构成。 软件设计方面,首先通过对现有的多种视频编器结构和算法的研究,借鉴 现有的视频编码方法和算法,利用c 语言进行程序设计,在p c 机上对原始视频 序列编码和解码过程进行原理验证,基本实现了在p c 机上进行视频图像序列的 编码和解码。 之后,将该编码软件向n e x p e r i ap n x l 3 0 0 多媒体处理d s p 平台进行移植, 并在该平台下根据p n x l 3 0 0 嵌入式系统的特点,对编码软件采取了大量的优化 措施,大幅度提高了该编码软件在p n x l 3 0 0 上的编码速度,最终实现了在该d s p 平台上对采集到的视频图像序列进行实时同步编码。并在此基础上,将该编码 器应用于实时远程视频监控系统的设计并获得成功。 目前,该编码器的全部设计已经完成,采用该编码器设计的实时远程视频 监控系统也已经投入实际应用。 关键字:m p e g 一4h 2 6 3 视频编解码数字信号处理p n x l 3 0 0 a b s t r a c t a b s t r a c t ar e a lt i m es o f t w a r ev i d e oe n c o d e rd e s i g n i n gb a s e do np h i l i p s n e x p e r i ap n x l 3 0 0m u l t i m e d i ad s pi s d i s c u s s e do nt h i sp a p e r d v e 一2 ,ap h i l i p s m u l t i m e d i ap r o c e s s i n gb o a r d ,p r o v i d e st h e h a r d w a r ep l a t f o r mi nt h ep r o c e s so ft h ee n c o d e rd e s i g n i n g ,w h i c hi s c o n s t r u c t e db yan e x p e r i ap n x l 3 0 0d s pc p ui n t e g r a t e dw i t ho t h e r p e r i p h e r a lc i r c u i t s i nt h ep r o c e s so ft h ee n e o d e rd e s i g n i n g ,s o m ee x i s t i n gv i d e o e n c o d i n ga r i t h m e t i ci sr e f e r e n c e d f i r s t l y ,t h et h e o r e t i e a lv e r i f y i n g o ft h ee n c o d e r d e c o d e ri sm a d eo i lp e r s o n a lc o m p u t e ru s i n gcl a n g u a g e t h e nt h ee n c o d e ri sg r a f t e dt on e x p e r i ap n x l 3 0 0d s p i na d d i t i o n , s o m es o f t w a r eo p t i m i z a t i o n sa r ea p p l i e di n o r d e rt oi m p r o v ei t s p e r f o r m a n c e l a b o r a t o r yt e s t i n gh a ss h o w nt h a tt h ee n c o d e rc anf u l l ys a t i s f your d e s i g n i n gr e q u i r e m e n t s f o rt h em o s ti m p o r t a n to ft h e s er e q u i r e m e n t s , t h ea i mo fr e a l t i m ev i d e oe n c o d i n gh a sb e e nr e a c h e d u n t i ln o w ,t h ee n c o d e rd e s i g n i n gh a sb e e nf i n i s h e d :t h er e m o t ev i d e o m o n i t o r i n gs y s t e mb a s e d o dt h ee n c o d e rh a sa l s o b e e np u ti n t o a p p l i c a t i o n k e yw o r d s :m p e g 一4 h 2 6 3 d i g i t a ls i g n a lp r o c e s s o r v i d e oc o d e c p n x l 3 0 0 独创性声明 本人声明所呈交的学位论文是本人在导师指导下迸行的研究工作及 取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方外, 论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得电 子科技大学或其它教育机构的学位或证书而使用过的材料。与我一同工 作的同志对本研究所做的任何贡献均己在论文中作了明确的说明并表示 谢意。 签名: 日期:年月 日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文的 规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允 许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全部或 部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制 手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名: 导师签名:牲 e l 期:幽加f 年f 月乙孓日 电子科技大学硕士论文嵌入式系统下的实时视频软件编码器的实现及其应用 第一章绪论 1 1 视频编码技术的应用现状和视频编码标准 近年来,随着通信技术、网络技术以及数字信号处理技术日新月异的发展, 多媒体技术也得到了越来越广泛的应用,进而推动了以h x x x 和m p e g 系列为代 表的数字视频压缩编码标准的迅速发展,并取得了极大的成功。 对于m p e g ( 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 在1 9 9 2 年被通过,并于1 9 9 3 年8 月公布。m p e g - 1 标准适用于码率1 5 m b i t 左 右的应用环境,也就是为c d r o m 、光盘的视频存储和放像而制定的【1 】。 m p e g - 2 是m p e g 开发的第二个标准,它在1 9 9 4 年月被正式确定为国际标 准。m p e g 一2 是m p e g - 1 的进一步发展,它是针对标准清晰度电视的数字压缩标 准【l 】。 在m p e g 一2 的基础上,m p e g 在1 9 9 9 年1 月公布了m p e g 一4 的v 1 0 版本,同 年1 2 月又公布了m p e g 一4 的v 2 0 版本。 m p e g - 4 的制定旨在建立一种能被窄带网络、宽带网络、无线网络、多媒体 数据库等各种存储传输设备广泛支持的通用的音频、视频数据格式1 2 。它适 用于多种不同的应用场合,如视频广播、远程监控、个人通信、娱乐、移动多 媒体、虚拟场景等等。 m p e g - :4 的标准具有开放性。它定义的是一种格式,一个框架,而不是具体 算法。 3 1m p e g 一4 中有许多算法,如运动搜索算法、图像变换的算法等等。用 户可以根据自己的需求特点选择适合自己的算法,从而提高了编码效率。同时, 许多新的算法不断被加入m p e g 一4 中,持续改进着m p e g 一4 的性能,丰富和完善 着m p e g - 4 的标准体系。 h 2 6 3 是i t u 开发的视频编码标准。它能够使视频通信在模拟电话线上进行 传输。它采用了半像素的运动补偿,改善的可变长编码以及多种图像格式( 大 小) 的支持。同时它还包括众多的可选项,以进一步改善编码性能。此外,在 后来的版本中,h 2 6 3 提供了更多的可选模式,用于提高编码效率。 1 2 嵌入式系统及其在视频编码中的应用 嵌入式系统具有功耗小,成本低,体积小等优点,在通信、自动控制、信 号处理以及多媒体处理等领域得到了广泛的应用。但是,由于嵌入式系统的系 电子科技大学硕士论文嵌入式系统下的实时视频软件编码器的实现及其应用 统资源相对有限,c p u 处理速度也不是太高,对于多媒体,特别是视频图像处 理领域,由于涉及到复杂的视频处理算法,采用嵌入式系统实现实时视频图像 处理比较困难。 但是,技术的发展使得这一状况正在得到改善。随着嵌入式系统处理速度 的不断提高和系统功能的日益完备,在嵌入式系统上实现实时视频图像处理已 经成为技术应用和理论研究的一个重要的方向。 1 3 论文的选题和研究目标 视频编码是一个非常复杂的过程,从原始图像的输入到最终的编码后码流 的输出,需要经过一系列的编码处理过程。其中涉及到大量的编码算法,包括 了运动估计算法、图像变换算法、图像的量化和二进制编码算法等等。每进行 一帧图像的编码,都要重复地进行这些算法处理过程,反复地进行与这些算法 相关的运算,其运算量是相当惊人的。所以,如何实现这些算法以及实现的方 法和效率基本决定了编码器输出码流的质量和编码系统的性能指标。 对于实时的视频编码,不仅要求在系统的性能上完全或基本满足实际应用 所要求的性能指标,而且在编码速度上,要求能够达到2 5 帧秒( p a l ) 以上, 才能够及时对输入码流进行编码。此时,对编码器而言,编码速度就变得非常 重要。为了能够实现实时编码,一方面要求硬件系统的运算速度要足够地快, 才能及时完成对输入视频图像的各种算法的运算;另一方面,也要求算法应该 简洁和高效,因为单纯的提高硬件速度是远远不够的,只有对算法进行必要的 优化,才能够在同样的硬件条件下,提高算法的运行速度,实现编码过程的实 时性。 基于这些原因,要实现对视频图像的实时采集和实时编码,无论对软件的 设计或者对硬件系统的性能来讲,都提出了相当高的要求。因此,目前快速、 高效的嵌入式实时编解码软件产品并不多见,而与此相关的理论和实际应用方 面的课题却被广泛的进行讨论和研究。 所以,如果能改进现有的视频编码算法,从而开发出快速、高效的嵌入式 实时视频编解码软件,必将具有广阔的应用前景,在技术上和实际应用上都具 有很高的价值。 因此,我们的目标是,通过对现有的多种视频编解码算法和软件结构的优 化,最终开发出一种能够在p c 机上对输入的原始视频图像序列进行编解码的软 件;同时将软件向嵌入式系统进行移植,并要求在嵌入式系统上能够获得2 5 帧秒以上的编码速度,实现视频图像的实时采集和实时编码,并尽可能降低码 电子科技大学硕士论文 嵌入式系统一f 的实时视频软件编码器的实现及其应用 率和提高图像质量。 由于嵌入式系统存在着固有的局限性,这对软件的设计提出了一些限制。 为了在嵌入式系统上实现实时视频编码,一方面,在硬件的选择上,应当采用 处理能力强的嵌入式c p u ;另一方面,还应针对硬件系统的特点,对软件进行 有针对性的优化处理。 p h i l i p s 公司的n e x p e r i ap n x l 3 0 0 嵌入式多媒体d s p 为实现课题的目标提 供了一个比较好的硬件平台。由于它主要针对多媒体应用领域而设计的,所以 特别适合于实现诸如视频编码之类的应用。它具有以下主要优点: 它的c p u 频率高达2 0 0 m h z ,具有很高的处理速度; 它采用v l i w 超长指令字结构,可以使得最多5 条指令并行运行,可以极大 地提高软件的运行速度,也为相关的视频编码算法的优化提供了可能: 它的定制操作进一步为编码算法的实现提供快捷的途径,利用这些定制操 作,可以快速而且高效地实现相关的视频编码算法,提高软件的运行速度和效 率; 它专门为多媒体应用而设计,为多媒体输入、输出和网络传输提供了必要 的硬件资源和丰富的通信接口。 在课题的研究方法上,主要是通过参考现有的视频编码方法和算法,特别 是利用m p e g - 4 标准视频编码部分中关于简单视频类的定义与h 2 6 3 视频编码标 准的相似性,在帧结构上采用了m p e g 一4 的视频帧结构,算法方面则参考了h 2 6 3 的一些基本的编码算法,同时对程序结构有针对性地进行优化,最终在嵌入式 系统上实现了视频图像的实时采集和实时编码,在获得良好的图像质量的同时, 还具有较快的编码速度和较低的码率。 在实现了实时视频编码器的设计后,还结合其它几位同学的研究成果,将 编码器软件应用于实时远程视频监控系统设计。 本论文研究主要是以软件实现的,相应的软硬件工具为m i c r o s o f tv i s u a l c + 十和p h il i p st r i m e d i a 嵌入式多媒体实验板及其调试软件。 1 4 论文的结构 本文第二章介绍了视频编码器的结构和视频压缩编码的一般原理、方法 第三章对编码器实现的硬件平台一 体处理d s p 的结构和特点进行了介绍 p h i l i p s 公司的n e x p e r i ap n x l 3 0 0 多媒 并分析了利用该平台实现实时视频编码 电子科技大学硕士论文嵌入式系统下的实时视频软件编码器的实现及其应用 的可行性和实现方法,并对嵌入式系统下实时软件编码器的应用背景进行了介 绍。 第四章详细论述了嵌入式系统下实时视频软件编码器的具体实现方法、算 法和其它的相关技术细节。特别是对软件的优化过程和采取的优化措旌进行了 详细介绍。此外对编码器软件的编译、连接、调试方法也进行了必要的介绍。 第五章分析了在实时远程视频监控系统中,为了实现远程的反馈控制功能, 对解码后的视频数据中的目标运动参数进行检测和提取的具体方法。 最后,第六章对本文进行了总结。 电子科技大学硕士论文嵌入式系统下的实对视频软件编码器的实现及其应用 第二章数字视频编码原理 2 1 数字视频压缩编码的依据和途径 原始的视频图像的数据量十分庞大,不利于进行传输、存储和发行:一方 面由于目前的网络带宽资源的限制,直接进行原始图像数据的网络传输极不现 实,也无必要;另一方面,从数据存储和产品发行的角度来看,直接存储原始 图像数据代价高昂,我们希望尽可能压缩数据的存储空间,以节约成本;同时, 从实际应用来讲,没有经过加工处理的原始视频图像也无法满足用户对于视频 图像进行控制的需求,更无法实现诸如对视频序列的检索、与视频内容的交互 等更进一步的需求。 视频编码主要是在保证原始视频信号的图像质量失真很小或使失真保持在 容许的范围内的前提下,尽量压缩视频文件的大小,降低视频信号的码率,以 便于进行视频的传输和存储,同时进行编码序列的功能扩充,以满足在实际的 应用中不断产生的各种需求, 从信息论的角度来看,视频信号的压缩主要利用了视频图像序列内部或视 频图像之间的各种冗余特性( 即相关性) 。这包括了在空间上的冗余性( 即图像 帧空间上相邻区域的相关性) ,以及相邻图像帧序列在时间上的冗余性( 即在时 间上相邻的图像帧序列间的相关性) 和人眼的心理视觉冗余特性( 即人眼对图 像的不同空间频率部分敏感程度不同) 。【2 】对于图像的空间冗余,主要采用信 号变换,去掉空间上的相关性,保留信号的必要空间信息,去掉多余信息达 到在图像的帧内进行压缩的目的。常用的变换有离散余弦变换d c t ( d i s c r e t e c o s i n et r a n s f o r m ) 以及小波变换等。对于图像序列在时间上的冗余性,主要 采用运动估计和运动补偿,由当前帧之前的图像帧对当前帧进行预测,仅对预 测误差进行编码,以达到在图像的帧间进行压缩的目的。对于人跟的心理视觉 冗余特性,则利用人眼的视觉特性,采用视觉滤波的方式,在保证主观感觉失 真不易察觉的情况下,以更大的图像失真换取更低的码率。 基于以上提到的基本思想,人们开发了各种不同的编码算法来实现对原始 图像数据的压缩。这些算法主要包括图像的变换算法、编码算法、运动估计算 法等等。它们共同构成了不同的编码标准的核心。 2 2 数字视频压缩编码的信息论基础 视频压缩编码问题实际上是信源编码问题。按照信息论的观点,原始的视 电子科技大学硕士论文嵌入式系统下的实时视频软件编码器的实现及其应用 频图像序列( 信源x ) 可以视为一系列信源符号的集合,这些符号包含了视频 图像所承载的全部信息,其信息的度量可以用信源熵( 符号熵) h 表示: h ( x ) = 一p ( x o l o g p ( x o i = o 其中x i 表示信源符号,p 表示信源符号的出现概率,k 表示信源符号个数。 信源熵表示每个信源消息所提供的平均信息量,也表示信源的不确定度。 视频图像的压缩编码本质上是将视频信号从一种符号序列( 集合) 到另一 种符号序列( 集合) 的映射,即从原始视频符号序列,到编码后新的符号序列 的映射,并使用尽可能短的符号序列来表达原始视频数据的全部( 或部分) 信 息,达到对原始视频图像信号进行压缩的目的。 按其编码长度是否固定,可以将编码类型分为等长编码和变长编码。对于 等长码,定义编码速率 r = n l o g d l 表示用码长度为n 的d 元等长码表示一个信源符号所用的平均信息量( 平 均比特数) ,l 为信源输出序列长度。对变长码,相应的编码速率表示为 r = k l o g d l k 表示平均编码长度。 如果编码后的图像保持了原始图像的全部信息,则称该编码为无失真编码 ( 否则称为有失真编码) 。对无失真编码,要求 r 兰h ( x ) 这个式子的物理含义是,编码后序列的码速率的极限是信源的符号熵。因 此,无失真编码的目标就是尽可能地使编码后的输出符号的码速率接近信源的 符号熵。 定义卵= h ( x ) r 表示编码效率,显然0 三珂三1 恒成立,且其值越大,则表明该编码的效率 越高。视频压缩的目标就是通过寻找合适的编码方法,提高其编码效率,从而 去除图像的冗余信息。 然而,编码效率等于1 的情况在实际的编码过程中( 除少数特殊信源) 是 不太可能达到的。就一般情况而言,只有在信源输出符号长度足够长的情况下, 才有可能使编码效率趋近于1 。从而有以下的无失真编码定理: 电子科技大学硕士论文嵌入式系统下的实时视频软件编码器的实现及其应用 定长编码定理:由l 个符号组成的,每个符号熵为h ( x ) 的平稳无记忆符号 序列,x ,x 。x 。,可用y 。y 。y 。( 每个符号有m 种可能取值) 进行定长编 码,对任意的 o ,o o 只要 k l o g ( m ) 几h ( x ) + e 则当l 足够大时,必可使译码差错小于。 变长编码定理:若一离散无记忆信源的符号熵为h ( x ) ,对信源符号进行m 元变长编码,一定存在一种无失真编码方法,其码字平均长度k 满足不等式: i + h ( x ) l o g ( m ) k h ( x ) l o g ( b 1 ) 8 1 在实际应用中,针对具体信源和应用的特殊要求,我们往往允许对信源信 息进行裁减( 压缩) ,即允许编码后的符号序列不完全包含信源的全部信息,从 而换取更高的编码效率,在更大程度上对原始信号进行压缩。而实际的数字视 频编码过程也正是这样做的。对于有失真编码,编码速率和允许的失真程度密 切相关,它们之间的关系用率一失真函数表示。 用r ( d ) 表示在给定失真d 的情况下,满足失真限定的最小码率与允许的失 真的关系。r ( 功常成为率一失真函数。因此有以下率失真编码定理: 信源率一失真编码定理:一个具有率一失真函数r ( d ) 的信源,若有平均失真 d ,并有两个任意小的正数e o ,o o ,则存在种信源编码、译码方法使信 息率r r ( d ) + e ,且平均失真小于等于d + o 。【2 】 2 3 基于块的时间预测和变换的视频编码器及其实现 基于块的时间预测和变换编码器是一种非常高效而且被普遍采用的视频编 码器。实际上,它也是几乎所有数字视频编码标准的核心。【7 】 在这里我们将以基于块的时间预测和变换编码器为例,讨论数字视频编码 器的一般结构。在此基础上,分析编码器各部分的功能和特点,以及常用的实 现方式和算法。 本章2 1 节提到了对原始的数字视频序列进行压缩编码的几个途径。数字 视频编码器正是从这几个方面入手,并将这些原理和思想体现在具体的算法中, 通过在其各个子系统结构中采用相应的算法对原始视频数据进行处理和实现, 从而去掉原始图像的冗余信息,达到压缩的目的。 屯子科技大学硕士论文嵌入式系统下的实时视频软件编码器的实现及其应用 原始 图像 二进 制码 解码 图像 图2 - 1 基于块的时间预测和变换的视频编码器方框图 二进 制码 图2 2 基于块的时间预测和变换的视频解码器方框图 如图2 1 、图2 2 所示的个典型的视频编解码器结构。包括了运动估计、 运动补偿、图像变换、量化、反量化、二进制编码、数据缓存等几个主要部分。 该编码器称为预测编码器,即它并不直接对图像的象素值进行编码,而是 由当前图像帧之前( 后) 的一帧或几帧图像对当前帧进行预测,并对预测误差 进行编码。在解码时,通过前( 后) 一帧或几帧已经解码的图像对即将解码的 图像顿进行预测,并结合解码的预测误差信息再现原始图像。 在编码器中,首先应存储几帧先前的图像帧( 称为参考帧) ,作为对以后的 图像帧进行预测的基准。预测误差经过变换器后被除去空间相关性,并通过量 化器进行量化,然后再通过二进制编码器编码后进行输出。另一方面,量化后 的预测误差经过反量化和反变换,并结合参考帧图像对编码图像进行重建,成 为下一帧图像的参考图像。在解码端,解码器使用与编码器完全相同的预测器, 以保证解码图像的与原始图像的一致性,并通过重复与编码器相同的图像重建 过程,再现编码图像。显然这是一个有损编码器,其编码误差在量化过程中产 生。 电子科技大学硕士论文嵌入式系统下的实时视频软件编码器的实现及其应用 2 3 1 图像预测 在编码器的设计过程中,图像的预测对编码器的设计及其性能起着致关重 要的作用。实际的视频图像序列在时间和空间上存在很强的相关( 似) 性,即 每一帧图像的纹理和色彩在空间上是缓慢变化的,具有过渡性;而视频图像的 目标运动在时间上就相邻的几帧图像而言,也往往是缓慢变化的,相邻图像帧 之间可能包含了大量诸如背景之类的相同图像信息。显然,对这些图像帧单独 进行编码是不必要的。 图像预测的目的就是为了利用视频图像序列的这种相似性,通过已经编码 的图像帧,结合少数表示目标运动变化情况的预测系数以及预测误差,来表示 当前的图像帧。对于一个好的预测器,预测误差往往很小。所以,在对参考图 像进行编码后,对于后来的图像帧,我们只需要对预测系数和预测误差进行编 码,这就极大的降低了码率,提高了编码效率。同样地,解码器利用预测系数 和预测误差,结合参考图像对原始的图像序列进行重建。 预测包括空间预测和时间预测:空间预测是利用图像的象素值在空间位置 上的连续性和相关性,由与当前象素在空间位置相邻的象素点的值,来预测当 前象素点的值。而时间预测则利用图像序列在时间上的相关性和连续性,由在 时间上位于当前图像帧之前( 后) 的图像帧对当前帧进行预测。 在实际的编码器设计中,图像的预测往往称为运动估计。解码器利用预测 结果和参考图像进行原始图像重建称为运动补偿。运动估计与补偿是编码器设 计的核心,它决定着编码器的编码效率,从而对决定编码器的实时性起着致关 重要的作用。因此,为了兼顾提高预测的准确性,从而降低码率,以及降低预 测的复杂性,以提高编码速度的相互矛盾的要求,实际编码中多采用线性预测。 设当前值为s ,预测样本值为s k ,则 r :a t s k a k 为预测系数。 电子科技大学硕士论文嵌入式系统下的实时视频软件编码器的实现及其应用 翦向强劐 双i 刍l j 簧测 图2 3 单向j 受测和双向预测 图像预测方式包括单向预测和双向预测。如图2 3 所示,所谓单向预测是 指预测仅在一个时间方向上进行,通常是利用前面的帧来预测后来的帧,即前 向预测。这样的帧成为p 帧。所谓双向预测是指预测两个时间方向上同时进行, 即用当前帧之前的帧和当前帧之后的帧同时对当前帧进行预测,并对两个时间 方向的参考帧进行加权求和,得到当前帧的预测图像。这样的帧称为b 帧,它 与多个运动矢量相联系。相应的,b 帧在两个时间方向的运动估计分别称为前 向运动估计和后向运动估计。采用双向预测可以进一步提高预测精度,降低码 率,但它使得预测算法的复杂程度增加。同时,由于引入了后向预测,也加大 了编器的时间延迟。 2 3 1 1 基于块的异寸间预测 基于块的时间预测是目前运用最多的一种预测方法。与其它方法相比,它 的复杂程度相对较低,可实现性强,被应用于几乎所有的数字视频编码标准。 在基于块的时间预测中,图像帧被划分为许多同样大小的块,并假定当前块是 由参考帧中的某个( 或几个) 块经过简单位移( 或位移后进行线性叠加) 得 到的。其位移量由运动矢量m v 表示,每个块与一个或几个运动矢量( m v ) 相联 系。运动估计的目的就是要在整个图像范围内搜索与当前块最为相似的匹配块, 同时获得预测的运动矢量m v 和预测误差。预测以块为单位,一般首先在较大的 块( 称宏块,如1 6 1 6 象素) 上进行,然后在进一步划分为更小的块( 如8 8 象素) 上进行预测。 在进行运动估计过程中,为了衡量当前块和匹配块之间的相似程度,有必 要对预测误差进行定量的描述。其描述方法包括了最小均方误差函数m s e ,最 小平均绝对差值函数m a d ,最大匹配象素统计m p c 等【6 】。 o 电子科技大学硕士论文嵌入式系统下的实时视频软件编码器的实现及其应用 最小均方误差函数m s e 定义为 l m s e ( d ,d z ) 。j 瓦j 瓦【s ( n ,h :,) 一s ( n ,+ d ,h :+ d :,k + 1 ) 2 ( j “,, n ) e p 其中,b 代表大小为n 。n 2 的块,( d l ,d 2 ) 为可能的运动矢量m v 的集合。 在搜索区域内使得m s e 最小的( d l ,d 2 ) 就是当前块和匹配块之间的位移矢量, 即所要求得的运动矢量m v 。 与m s e 类似,最小平均绝对差值函数 i a d 定义为: 1 m a n ( d - ,d t ) 2 丽l s ( n ,n 2 ,后) 一s ( m + 毗m + d 2 ,k + 1 ) l ( n 1 月2 ) e 卢 最大匹配象素统计m p c 定义为: m p c ( d t ,d :) 2 r ( h - ,1 2 ;d - ,d 2 ) 当l s ( m ,月2 ,k ) 一s ( n l + d t ,n 2 + d 2 ,k + 1 ) l t 其它 即在搜索区域求得使m p c 最大的矢量( d l ,d 2 ) ,也就是使当前块与匹配块的匹 配象素最多的矢量( d l ,d 2 ) ,就是要求的运动适量m v 。 根据设定的匹配条件,当前块和匹配块之间的误差函数满足该条件时,即 认为找到了运动矢量,搜索终止。然后对运动矢量和预测误差分别进行编码。 采用这种方式可以比对原始图像直接进行编码明显地减少编码数据的码率。但 在实际的图像序列中,图像块之间并不总是能够进行很好的匹配。有时,由于 图像的剧烈运动或场景的切换等原因,某些块始终无法找到能够与之进行很好 的进行匹配的块,从而导致预测误差很大,对改善编码效率效果并不明显;同 时,预测误差的量化会带来量化误差,加上存储和数据传输所可能引起的数据 差错,在较长的时间范围内将可能会造成误差的积累和扩散。基于以上考虑, 在预测误差到达某个门限值时,往往考虑直接对原始的视频图像帧进行编码, 这种编码方式称为帧内模式的编码,相应的帧称为内帧( i 帧) 。相对应地,对 p 帧或b 帧进行编码的方式称为帧问模式的编码。有时,为了抑制误差的积累 和扩散,也人为的在编码序列中插入i 帧。而一般视频图像序列的第一帧都是 采用帧内模式进行编码的。 在参考帧中寻找能与当前块最好地进行匹配的块的过程,称为运动矢量的 ,h 旧 = ) 抱m舵n 日= t 其 电子科技大学硕士论文嵌入式系统f 的实时视频软件编码器的实现及其应用 搜索过程。为了最大限度地降低码率,提高编码效率,我们总是希望在参考帧 中寻找到一个能够与当前块实现最佳匹配的块,即全局最优的匹配块。 自然地,效果最好的搜索方法就是在搜索范围内,对每一个可能的运动矢 量进行一次比较,从而找到一个预测误差最小的运动矢量。这种搜索方法称为 全搜索,它可以保证我们找到的运动矢量一定是全局最优的。但它的缺点也是 显而易见的:对所有可能的运动矢量都进行一次计算和比较,必然将极大地增 加编码器的计算量,这样巨大的计算量对硬件的计算能力提出了过高的要求, 对于任何编码器都是无法承受的,所以在实际的编码器设计中不可能采取全搜 索的方法。 为此,实际的编码器设计中都采用了一些更为简单的,经过改进的运动搜 索算法。尽管这些算法找到的运动矢量可能不是全局最优的,但它们都大大地 降低了编码器的计算量,因而是编码器在性能和编码速度之间的一种合理折衷。 这些改进的运动搜索算法包括三步搜索法、交叉搜索法、分级搜索法、菱形搜 索法等等。 2 _ 3 2 图像变换 进行运动估计后,编码器对运动矢量和预测误差分别进行编码。在对预测 误差进行编码之前,需要对它进行变换和量化,以进一步去掉图像的冗余信息。 图像变换的目的是将图像的能量压缩到几个相互正交的分量上,去掉图像在这 几个分量上的相关性,以便于用更少的信息对原图像进行表达。而在解码前, 可以通过对图像的反变化,恢复图像的原始信息,进行图像的重建。 在基于块的编码中,信号的变换并不是对整幅图像进行的,而是对每个块 分别进行变换,并进行量化和编码的。 常用的图像变换包括离散傅立叶变换d f t 、卡胡南一洛耶夫变换k l t 、离散 余弦变换d c t ,离散正弦变换d s t 、阿达玛( h a d a m a r d ) 变换、沃尔仕( w a l s h ) 变换、哈尔( h a r r ) 变换、斜变换、小波变换等等。 作为一种最常用的变换,离散傅立叶变换被广泛地应用与信号的频域分析, 它将信号表示为一系列复指数信号的线性叠加。二维傅立叶变换定义为: 正娥t k , j2 击芝m = o 瓠n = o 唧j 万c 塑m + 和 其中k = 0 ,1 ,2 ,m 一1 ,l = 0 ,l ,2 ,n 一1 , 电子科技大学硕士论文嵌入式系统下的实时视频软件编码器的实现及其应用 反变换:s 2 砺杀蓦篓以,- e 坤。z 万c 丝m + 号, 箕中m = 0 ,1 ,2 ,m 一1 , n = 0 ,1 ,2 ,n 一1 二维o f t 是可分离的,即一次二维o f t 可以由两次一维d f t 来完成。 而在图像应用领域,理论的研究表明,k l t 在实现去掉信号的相关性方面具 有很好的效果,对于提高图像的压缩效率优势非常明显。但k l t 计算量很大, 没有较为实用的快速算法。事实上,在数字视频编码领域,应用的更为广泛的 变换是一种称为离散余弦变换d c t 的图像变换方法。它与k l t 非常接近,而且 有许多实用化的快速算法,因而在图像和视频编码中得到了最为广泛的应用。 一维d c t 变换变换的定义为: 正变换:g n = c ( n 荟n - i 擎c 。s 学】 反变换:甑= 艺c ( n ) g c 。s 【塑;争堕 h - 0 其中,c ( n ) 为 c ( n ) :1 坐川划 1 4 2 n ,其它 对图像信号,变换在二维信号空间进行,二维d c t 的定义为 正变换:,n)-嘶)c(n)篁k=og(m瑚cos鼍产】cos笔r;(zg产+t)ni=o 】 正变换: ,n ) = c ( 】i 】) c ( n ) g ( i ,) c o s 璺兰;专坐】c o s 1 i 一】 t 反变换:,k)=薹萋c(m)c(n)g(m,c。s【竺:i!;专竖cosl;r(2k+t)nlg(i i - - - ? v 一 反变换: ,k ) = c ( m ) ( m ,c o s 【兰等等半 c o s m 2 uh 5 u _ o oo 其中 c ( m ) :j 1 竺,舭o i 2 ,其它 c ( n ) :1 坐,肛o 1 4 2 n ,其它 二维d c t 变换也是可分离的。 小波变换是2 0 世纪8 0 年代后期才开始迅速发展起来的一种数学变换方法, 它是对傅立叶变换理论继承和发展的结果。傅立叶变换对于分析平稳信号具有 电子科技大学硕士论文嵌入式系统下的实时视频软件编码器的实现及其应用 很好的效果,而小波变换对于分析非平稳信号,特别是在具有突变或奇异特性 函数的处理方面,具有更明显的优势。因而,小波变换被广泛地应用于信号处 理的各个相关领域,包括图像处理、语音信号处理、计算机视觉处理、地震勘 测数据处理等。 采用小波变换可以获得图像在不同分辨率下的各级子图像,可以形成原始 图像的多种精度的表示,不同分辨率下的各级子图像与原始图像具有高度一致 的运动特性,便于实现不同分辨率下的运动估计和预测。同时,小波变换中的 变换子图具有空间方向的敏感性,可以利用人眼的视觉特性分配图像不同方向 上的量化误差,以较小的视觉失真换取更大的图像压缩比。 2 3 3 图像量化 当完成对图像序列的预测并对预测误差进行变换后,接下来要进行图像的 量化。量化过程作用于预测误差,将进一步减少图像的信息量,有利于进步 提高图像的压缩比。显然,量化过程是一个有损过程,为编码器引入了额外的 量化误差,但只要将量化误差控制在应用许可的范围内,就可以使将来的重建 图像完全满足实际应用的要求。因此,对量化参数的选取是该过程的关键,以 便对量化误差进行控制。 为了衡量量化嚣的性能,需要对量化误差进行定量的描述。这些描述包括 均方误差、决对值误差、加权绝对值误差等等,它们定义为: 均方误差: 决对值误差 e ( ,一夕) 2 _ p 一力2 p d s d e 1 厂一夕i = f l :- * lp d s 加权绝对值误差: e w ( i 厂一,i 2 卜( s ) i s 一,p ( s od s n f 其中,厂为输入信号,厂为量化后的输出信号,a l ,a i i 为输入信号,_ 的取 值取间的下限和上限,w ( 厂) 为加权函数。 主要的量化方法包括标量量化和矢量量化。与矢量量化相比较而言,标量 量化器设计相对简单,但矢量量化器的优点更显著。矢量量化器可以更充分地 利用样本点之间的相关性,并且其效率随着矢量维数的增加而提高,在同样的 允许误差范围内,可以以更少的离散矢量对原始数据进行量化。但矢量量化器 的缺点也是明显的,它的效率的增加和性能的提高是以提高量化器的复杂程度, 增加量化器的运算量和存储要求为代价的。因此,实际的应用中,为了提高量 电子科技大学硕士论文嵌入式系统下的实时视频软件编码器的实现及其应用 化器性能而又使量化器的运算量在可承受的范围内,通常都要对矢量量化器的 维数进行必要的限制。 2 3 4 图像的二进制编码 在进行运动估计、图像变换和量化后,视频图像在时间和空间上的相关性 都已经被极大的去除了。但这时的图像是没有经过压缩编码的,图像的码速率 远大于它的熵,其代码的冗余度仍然很大。这时对图像进行二进制编码,实际 上是利用图像数据在概率上的统计特性,对图像数据进行一种符号映射,使得 映射后的符号集合的码速率达到或接近原来图像码字的信源熵。 如果这种映射是一一对应并且可逆的,则称为无损编码,否则称有损编码。 此外,如果所有码字长度都是相同的,则称等长码,反之称变长码。实际的研 究表明,除非信源等概率分布,可变长码通常比等长码具有更高的编码效率, 它将相对短的码字分配给出现概率相对高的符号,而将较长的码字分配给出现 概率较小的符号。因此,虽然对于部分符号,它的码字长度反而加长了,但码 字的平均长度却因此减少了,实现了对原始图像数据的压缩。所以实际的应用 中多采用变长编码。 常用的变长编码有哈夫曼编码( h u f f m a n ) 、算术编码、游程编码、l z w 编码 等。 电子科技大学硕士论文嵌入式系统下的实时视频软件编码器的实现及其应用 第三章嵌入式实时视频编码器实现的硬件平台和应用背景 3 1p h i l i p sp n x l3 0 0 多媒体处理d s p 本论文主要讨论的是嵌入式系统下的实时视频软件编码器设计,编码器设 计的硬件平台是p h i l i p sp n x l 3 0 0 多媒体处理d s p 。 p n x l 3 0 0 是p h i l i p s 公司推出的一款高性能的多媒体处理d s p 。它在c p u 结构和汇编指令集的安排方面都针对多媒体处理的应用需求进行了精心的设计 和优化,因而在多面体处理方面具有强大的处理能力。以p n x l 3 0 0 为核心,结 合其它必要的外围电路所构成的多媒体处理卡,是目前在多媒体处理领域应用 地非常广泛的一种硬件处理平台。 p n x l 3 0 0 在多媒体处理方面具有许多优点和特点,具体表现在: 能够在同一芯片内同时完成音频、视频、图像以及通信数据流的处理; 能够胜任多种类型和格式的多媒体数据的处理,其中包括m p e g 一4 、m p e g 一2 、 h 2 6 3 、h 2 6 4 、m p 3 等等: 高达2 0 0 m h z 的c p u 时钟频率,为多处理媒体应用提供了强大保证; v l i w ( v e r yl o n gi n s t r u c t i o nw o r d ) 超长指令字结构,能够多条指令并 行运行,使得c p u 获得更强的处理能力; 丰富的汇编指令集。除了通用汇编指令外,p n x l 3 0 0 提供了一些专门针对 多媒体处理算法的定制操作,能够快速、高效地实现各种音视频处理算法; 支持基于汇编和c c + + 以及混合语言的程序设计: 提供多种的软件编译和调试工具,加快软件开发进度,降低开发难度; 片上的图像协处理器与c p u 同时工作,用于完成音频视频数据处理和常用 算法的实现,提高系统运行速度; 支持p c i p c i x i o 接口,以便与高速的p c i 总线以及其它8 位的微处理器 设备如r a m 、r o m 等进行接口; 完善的通信接口支持,能够满足不同应用领域的接口要求,实现对系统功 能的全面扩展; 丰富的三方软件支持,提供多种不同应用领域的完整解决方案。 电子科技大学硕士论文嵌入式系统下的实时视频软件编码器的实现及其应用 3 2p n x l 3 0 0c p u 功能和结构模块 p n x l 3 0 0i ) s p 系统结构框图如下图所示,其主要的功能模块主要包括 p n x l 3 0 0c p u 内核、音频和视频输入输出模块、图像协处理器、v d l 协处理器 以及p c i 、1 2 c 、同步串行接口( s s i ) 等多种总线接口模块。 图3 - 1p n x l 3 0 0d s p 系统结构框图 3 2 1p n x l 3 0 0 的视频输入输出单元 视频输入输出单元的主要功能是将数字或模拟摄像机采集到的原始视频 信号输入到n e x p e r i ap n x l 3 0 0c p u 的s d r a m 进行缓存。其输入格式要求为y u v 4 :2 :2 格式,对于其它的与c c i r 6 5 6 兼容的格式,则需要相应的视频解码芯 片在输入之前进行格式转换。n e x p e r f ap n x l 3 0 0 的视频输入单元提供了一些必 要的接口信号与外部设备和接口电路连接和通讯,进行数据交换。这些接口信 电子科技大学硕士论文嵌入式系统下的实时视频软件编码器的实现及其应用 号包括数据总线、时钟信号、数据有效信号等。同时通过1 2c 总线实现对外部 设备和接口电路的控制。这些外部设备和电路包括8 一位的c c i r 6 5 6 数字摄像 机、视频解码芯片( 如s a a 7 1 1 1 1 ) 、模数转换电路以及其它n e x p e r i ap n x l 3 0 0c p u 的视频输出单元等。 视频输入单元具有多种不同的工作模式:全分辨率、半分辨率、r a wc a p t u r e 模式和消息传输模式。 全分辨率模式下视频输入单元不对接收的数据进行上下采样。视频输入单 元通过数据总线v i d a t a 7 :0 接收所有的视频数据和同步数据,并将y 、u 、v 分量分离,成为三个不同的视频数据流。该视频数据为c c i r 6 5 6 格式,图3 2 表示了c c i r 6 5 6 标准定义的y u v 视频数据的采样格式。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 o o 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 o o 0 0 0 0 l u m i n a n c e s a m o l e $ 图3 2y u v4 :2 :2 视频图像的采样格式 半分辨率模式与全分辨率模式类似,只是在图像的水平方向上对图像迸行 y - - 分之一的下采样。如图3 3 所示。 dbcce f 9 hk y u v 4 唰2 :2 。c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030圆头款鞋行业项目调研及市场前景预测评估报告
- 2025-2030二手奢侈品鉴定标准与平台信任体系建设报告
- 2025-2030中国青年公寓行业数据安全与隐私保护合规报告
- 2025-2030中国青年公寓行业发展趋势与投资风险评估报告
- 2025-2030中国青年公寓绿色建筑标准与可持续发展战略报告
- 2025-2030中国青年公寓智能安防系统投入产出分析报告
- 创新视角下的2025年智能安防巡逻系统在公共安全领域的可行性报告
- 智慧城市土地管理关键技术-洞察及研究
- 学生就业能力培养研究-洞察及研究
- 基于区块链的数据同步安全机制-洞察及研究
- 企业运营管理学习课件
- 蓝藻治理打捞管理制度
- 2025年合肥兴泰金融控股(集团)有限公司招聘23人笔试参考题库附带答案详解
- 苏州市建设工程档案立卷程序与标准
- 国庆、中秋节前安全教育培训
- 2024年江苏省《辅警招聘考试必刷500题》考试题库附答案(能力提升)
- 公共管理学:理论、实践与方法 课件 第2章 公共管理的公共性、服务性与共治性
- ISO9001质量管理体系标准
- 歌曲《wake》中英文歌词对照
- 2024年职教高考《机械制图》考试题库
- 电子政务概论-形考任务5(在线测试权重20%)-国开-参考资料
评论
0/150
提交评论