(电路与系统专业论文)帧频提升算法中双向运动估计的fpga实现.pdf_第1页
(电路与系统专业论文)帧频提升算法中双向运动估计的fpga实现.pdf_第2页
(电路与系统专业论文)帧频提升算法中双向运动估计的fpga实现.pdf_第3页
(电路与系统专业论文)帧频提升算法中双向运动估计的fpga实现.pdf_第4页
(电路与系统专业论文)帧频提升算法中双向运动估计的fpga实现.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

(电路与系统专业论文)帧频提升算法中双向运动估计的fpga实现.pdf.pdf 免费下载

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

文档简介

重庆大学硕士学位论文中文摘要 摘要 随着数字电视,特别是大屏幕显示设备的发展,液晶面板中固有的残影 ( s h a d o w ) 、抖动、运动模糊( m o t i o nb l u r ) 等现象变得尤为突出。为了克服以上 弊端,研究人员一方面努力降低液晶分子响应时间;另一方面,通过提高液晶面 板的刷新频率,来减少液晶分子的保持时间。 液晶分子的物理特性决定它的响应时间不能无限降低。因此,很多专家、学 者都在提高液晶面板的刷新频率方面做努力。这些方法包括两类帧频提升方法, 第一类即不考虑对象运动的帧复制、帧平均和插灰帧等,但这些算法比较简单存 在运动抖动等缺陷。第二类即基于运动估计和运动补偿( m o t i o ne s t i m a t i o na n d m o t i o nc o m p e n s a t i o n ,m e m c ) 的帧频提升( f r a m er a t eu pc o n v e r s i o n ,f r u c ) 方法加 入了对对象运动的考虑,能够取得更好的插帧效果。其中,快速而准确的运动估 计是得到高质量内插帧的前提。 本文正是基于这样的背景,主要研究了一种帧频提升算法中运动估计器的硬 件实现电路。本文研究的硬件电路实现基于c 语言与m a t l a b 仿真过的算法,并在 该算法的基础上根据硬件实现的特点与视觉效果的要求进行了折中,使之能够既 满足视频信号实时处理的要求,同时又不降低主观视觉效果。本文主要工作如下: 设计了视频图像实时处理中帧级流水结构的时序,一帧图像内的条带划 分,条带内宏块数据的更新顺序; 实现了基于s a d 匹配准则的双向运动估计器,分析了实现原理、工作时 序图、结构设计与仿真结果; 研究了原始图像视频帧中条带结构的划分,以及数据从d d r 更新到缓存 模块s r a m 中的先后次序; 实现了运动估计器数据缓存单元s r a m 模块,分析了实现原理、工作时序 图、结构设计与仿真结果; 设计一种能复用大量硬件资源,同时支持s a d 匹配准则和v o d 匹配准则 的双向运动估计器,给出了实现原理、结构设计、工作时序图和仿真结果分析; 对比了改进方案与原方案的资源消耗,研究了改进方案在硬件资源消耗上 的优势。 通过以上工作,笔者实现了一种双向运动估计器的硬件架构,其具有数据复 用率高,运算速度快,硬件资源消耗低等优点,并通过仿真结果验证了其正确性。 关键词:液晶电视,双向运动估计,运动补偿,帧频提升,v l s i a b s t r a c t w i t ht h ef a s td e v e l o p m e n to fd i g i t a lt va n dt h eb i gs c r e e nd i s p l a ye q u i p m e n t , s h a d o w , s h a k i n g ,m o t i o nb l u ra n ds o m eo t h e rp h e r o m o n ew i t ht h el c dp a n e l sh a v e b e c o m eab i gp r o b l e m i no r d e rt os o l v et h ep r o b l e mm e n t i o n e da b o v e ,o no n eh a n d , r e s e a r c h e r sr e d u c et h er e s p o n s et i m eo fl i q u i dc r y s t a lm o l e c u l e sp a n e la n do nt h eo t h e r h a n d ,t h e yr e d u c et h et i m eo nm a i n t a i n i n gt h el i q u i dc r y s t a lm o l e c u l e st h r o u g ht h e i m p r o v e m e n tw i t hl c dp a n e lr e f r e s hf r e q u e n c y a c c o r d i n gt ot h ep h y s i c a lp r o p e r t i e so fl i q u i dc r y s t a lm o l e c u l e s ,t h er e s p o n s et i m e c o u l dn o tb er e d u c e dw i t h o u tl i m i t a t i o n ;t h e r e f o r e ,m a n ye x p e r t sa n ds c h o l a r s t r yt o i m p r o v et h er e f r e s hf r e q u e n c yo fl c dp a n e l t h ef i r s tk i n do ff r a m er a t eu pc o n v e r s i o n ( f r u c ) m e t h o di so n eo ft h e s ea p p r o a c h e s ,w h i c hd o e s n tc o n s i d e ro b j e c tm o v e m e n t s o ff r a m ec o p y , a v e r a g ea n di n t e r p o l a t i o n h o w e v e r , t h e s ea l g o r i t h m sh a v ev a r i o u s d e f e c t sb e c a u s eo ft o o s i m p l e t h es e c o n di sb a s e do na s c e n s i o na n dm o t i o n c o m p e n s a t i o n ( m e m c ) ,w h i c hi n c l u d e st h em o t i o no b j e c t sa n de f f e c t i v e l ys o l v e st h e p r o b l e m t h ef a s ta n da c c u r a t em o t i o ne s t i m a t i o ni st h eb a s e m e n tt og e th i g hq u a l i t y f r a m eo fi n t e r p o l a t i o n t h i sp a p e rm a i n l yr e s e a r c h e saf r u ca l g o r i t h mf o rt h eh a r d w a r er e a l i z a t i o n c i r c u i t i tm a i n l ys t u d i e st h eh a r d w a r ec o m p l e m e n tc i r c u i tw i t hf r u c a l g o r i t h mw h i c h i sb a s e do nc l a n g u a g em a dm a t l a bs i m u l a t i o n b e s i d e s ,t h i sp a p e rm a k e sac o m p r o m i s e b e t w e e nt h eh a r d w a r er e a l i z a t i o n c h a r a c t e r i s t i c sa n dt h e r e q u i r e m e n t so fv i s u a l p e r f o r m a n c ew h i c hw o u l db ea b l et om e e tt h er e q u i r e m e n to fv i d e os i g n a lr e a l - t i m e p r o c e s s i n g ,a n dd o n tr e d u c es u b j e c t i v ev i s u a le f f e c t t h ep a p e rm a i n l yw o r k sa r ea s f o l l o w s : t h er e a l - t i m ep r o c e s s i n gf r a m es t r u c t u r eo ft h es u c c e s s i o no ft h ew a t e rl e v e li s p r e s e n t e d ;af r a m ed i v i s i o nw i t h i nt h ei m a g eb a n d s ,s t r i pm a c r ob l o c kd a t au p d a t ea r e i n t r o d u c e d ; t h em o t i o ne s t i m a t i o nb a s e do ns a d m a t c h i n gc r i t e r i o ni sr e a l i z e d ;t h et h e o r v p r i n c i p l e ,t i m i n gd i a g r a m ,s t r u c t u r a ld e s i g na n ds i m u l a t i o nr e s u l t sh a v eb e e na n a l y s e d ; ( 曼) t h eo r i g i n a li m a g ev i d e of l a m es t r u c t u r e ,t h ed i v i s i o no fb a n d s ,a n dd a t a u p d a t ew i t hd r r i ns r a mm o d u l ea r er e s e a r c h e d ; t h ed a t ab u f f e ru n i to fs r a mm o d u l ew i t hm o t i o ne s t i m a t o ri sr e a l i z e d :t h e p r i n c i p l e ,t i m i n gd i a g r a m ,s t r u c t u r a ld e s i g na n ds i m u l a t i o nr e s u l t sh a v e b e e na n a l y s e d ; i i 重庆大学硕士学位论文 英文摘要 t h em o t i o ne s t i m a t o rs u p p o r t t e ds a da n dv o dm a t c h i n gc r i t e r i o na n d m u l t i p l e x i n gm o s th a r d w a r e r e s o u r c ei s r e a l i z e d ;t h ep r i n c i p l e ,t i m i n gd i a g r a m , s t r u c t u r a ld e s i g na n ds i m u l a t i o nr e s u l t sh a v e b e e na n a l y s e d ; ( 9i m p r o v e dd e s i g na n do r i g i n a ld e s i g no nr e s o u r c e sc o n s u m p t i o ni sc o m p a r e d ; t h eh a r d w a r ea d v a n t a g e sw i t ht h ei m p r o v e dd e s i g nb a s e do nr e s o u r c ec o n s u m p t i o n a n a l y s i si sp r e s e n t e d ; t h r o u g ht h ea b o v ew o r k ,ab i l a t e r a lm es t r u c t u r ei sr e a l i z e d ,w h i c hh a sh i g hr a t e o fd a t ar e u s e ,f a s tc a l c u l a t i o n ,a n dl o wh a r d w a r ec o m s u m p t i o n i th a sb e e nv e r i f i e d t h r o u g hs i m u l a t er e s u l t s k e y w o r d s - l c dt e l e v i s i o n ,b i l a t e r a lm o t i o ne s t i m a t i o n ,m o t i o nc o m p e n s a t i o n ,f r u c , v l s i 重庆大学硕士学位论文1 绪论 1 绪论 1 1 引言 在人们的日常生活中,视频信息已经成为了人类最重要的信息源之一。随着 人类社会信息化程度越来越高,我们对信息的需求越来越多,这其中大约有7 0 的信息来源于视频信息,因此视频处理在信号处理领域占有很大的比重。数字电 视相比传统的模拟电视有着稳定可靠、易传输、易存储、易处理等诸多优点,所 以近年来数字电视得到了广泛的发展与应用。数字电视在为人们提供更加符合人 类自然视觉的画面结构、高质量的电视图像和丰富多彩的电视服务的同时,也对 相关的技术领域产生了深远的影响【l 】。目前,我国的电视数字化进程正蓬勃向前发 展,各大城市相继开通数字电视。2 0 0 3 年我国全面启动了数字电视的产业化,2 0 1 5 年前将全面完成由模拟电视到数字电视的过渡。随着数字传输和处理技术的发展, 数字电视将是今后电视产业发展的主流方向。 随着人民生活水平的逐渐改善以及数字电视领域的技术提高,人们对数字电 视的清晰度和画面尺寸也提出了更高的要求,具体表现为要求更大的显示尺寸、 更快的屏幕刷新速度,更绚丽真实的色彩等。液晶显示器( l i q u i dc r y s t a ld i s p l a y , l c d ) 具有体积轻巧、外形美观等优点,已成为当今世界平板显示器中的主流器件, 逐渐替代了老式的c r t 显示设备,在数字电视和通讯设备的显示终端中得到广泛 的应用。不过液晶面板本身也具有一些缺点,如响应时间长、残影( s h a d o w ) 、运 动模糊( m o t i o nb l u r ) 等问题【1 j ,这些问题随着液晶尺寸的增大而显得更为突出, 尤其在显示快速运动场景时尤为严重,其主要原因是液晶显示保持时间较长和响 应时间较慢。液晶显示的保持时间长及人眼沿显示运动方向将来白不同位置像素 的亮度信号进行积分,产生模糊。 1 2 研究背景及意义 目前,为了解决大尺寸液晶面板在显示快速运动场景时产生的残影、运动模 糊等现象,液晶面板制造商和数字电视芯片解决方案提供商从各自的角度付出了 很多努力。液晶面板制造商通过液晶材料工艺的提高去尽量降低液晶分子的响应 时间,但是响应时间是不可能无限度降低,这种方法也存在着一定的瓶颈;数字 电视芯片解决方案提供商通过开发出帧频提升系统提高图像显示频率来降低大屏 幕液晶显示器的保持时间。帧频提升( f l a m er a t eu pc o n v e r s i o n ,f r u c ) 系统通过提高 l c d 液晶显示屏刷新率的方法,比如从5 0 h z 提高到1 0 0 h z ,从6 0 h z 提高到1 2 0 h z ( 或者更高) ,来减少液晶面板的保持时间。 重庆大学硕士学位论文1 绪论 目前市面上流行的倍频显示液晶电视多采用第一代帧频提升技术,即帧复制、 帧平均和插灰黑帧,因为其实现简单、成本低、开发难度小而得到应用。而少数 日韩厂商的高端产品采用基于运动估计与运动补偿技术( m e m c ) 的帧频提升技 术,国内厂商目前几乎没有采用此类技术的产品,所以基于运动估计与运动补偿 技术( m e m c ) 的帧频提升技术还有着非常广阔的研究前景。2 0 0 4 年,d a n e 和 t r u o u g 提出基于可变尺寸搜索窗运动估计并采用全搜索块匹配算法( f s b m a ) 的 帧频提升算法1 2 j 。同年,t a e h y e u nh a 等人提出基于重叠块运动估计的帧频提升算 法u j 。2 0 0 9 年,l e iz h a n g ,c iw a n g 和w e n j u nz h a n g 等人提出基于加权处理的运 动估计帧频提升算法【4 j 。目前业界已经提出了许多基于f sb m a ( f u l l s e a r c h b l o c k m a t c h i n ga r i t h m e t i c ) 算法的运动估计器的v l s i 实现架构【5 ,6 ,7 ,9 】,它们中的大多 数都是基于运算单元( p e ) 阵列来搭建,以适应运动估计时大量并行运算和高速处 理的内在要求。在文献 6 】提出了一种基于块匹配算法和帧级流水的帧频提升系统, 该系统采用了奇偶阵列寄存器的单向运动估计器。其具有低资源消耗,数据复用 性高,可级联工作的运动估计器结构,但整个系统由于采用多级缓存结构对外部 存储的带宽要求较高。在文献【7 中提出了几种能够用于高清数字视频处理的帧频 提升算法。除此以外,包括s o n y 、s u m s u n g 、l g 、s h a r p 、t o s h i b a 、p i x e l w o r k s 、 t r i d e n t 、g e n e s i s 、i d t 、长虹、海信、晶宝丽等国内外电视生产厂商和视频后处理 解决方案提供商都在进行帧频提升技术的研究。 除了在解决液晶面板造成的图像残影等问题方面有广泛应用外,帧频提升也 是应用在3 d 电视领域的关键技术之一。随着2 0 1 2 年国家中央电视台开通了3 d 电视频道,3 d 电视已经引起各大公司越来越广泛的关注,从目前美国和日本等国 家所研发的3 d 电视来看,虽然它们普遍采用的是2 4 0 h z 的显示帧频,但是其核心 算法还是是采用了帧频提升技术将输入视频的帧频从6 0 h z 倍频到1 2 0 h z ,从 1 2 0 h z 到2 4 0 h z 则可以采用帧复制的方式实现。 1 3 研究现状 帧频提升( f r u c ) 也称作时间内插( t e m p o r a li n t e r p o l a t i o n ) ,是视频处理技术中 的一个重要分支。它主要被用来实现不同帧速率之间的转换。例如,要将以2 4 帧 秒格式所拍摄的电影胶片在6 0 帧秒的高清晰度电视( h d t v ) 上播放,就必须采用 帧频提升技术来实现2 4 帧秒到6 0 帧秒这两种格式之间的转换。又比如在低比特 率的视频通信中,常常需要降低传输帧率将每秒中传输的帧数降至每秒1 0 帧或者 1 5 帧,那么在接收端就必须采用帧频提升技术来恢复原帧速率。除此之外,在无 线视频通信中,丢失帧的重构以及液晶显示中解决图像残影,拖尾等问题也需要 进行帧频提升。 2 重庆大学硕士学位论文1 绪论 基于以上所述的几种原因和应用,帧频提升技术已经成为当前视频格式转换 研究领域的一个新热点。目前的帧频提升技术主要有以下几种: 1 3 1 简单的帧复制帧频提升方法 简单的帧复制方法属于第一代帧频提升算法,是一种最基本的非运动补偿线 性插帧算法 8 1 。插入帧与上一帧完全相同,插入帧中的每一个像素都复制了上一帧 中相同位置的像素,用公式可以表示为: f ( i ,r ) = f ( i ,歹,f 一1 )( 1 1 ) 其中,f ( i ,t ) 表示f 时刻的帧( 待插帧) 在( f ,) 处的像素值,f ( i ,t 一1 ) 表示 f 一1 时刻的帧( 待插帧的前一帧) 在( f ,) 处的像素值。采用帧复制方法的时候,输入 的原始图像帧会被连续地重复显示两次,所以在产生的每一个内插帧中,图像的 真实运动位置都可能会被错误的表示。根据人体视觉成像的原理,对于观察者来 说,在一个眼睛跟踪住运动物体的观察者的视网膜上,物体是静止的,也就是说 只要观察者眼睛对运动物体的跟踪是完美的,那么物体就会被始终看作在同一个 位置上。同时,只要图像在对应位置的更新频率超过人视觉系统的时间常数( 约 为3 0 h z ) ,运动物体看起来就是连续的。这也就暗示了在中间时刻,物体被“视为 在”它的运动轨迹上。所以当输出帧的频率与输入帧的频率之差高于3 0 h z 时,观 察者会发现在同一时刻,画面中两个同样的物体出现在了相同的位置上,这样会 导致观察者得出错误的结论,认为存在两个平行运动的物体,这个时候人眼看到 的物体就会产生重影或者模糊。当输出帧的频率与输入帧的频率之差低于3 0 h z 时, 这时虽然不会产生图像重影或者模糊,但是由于插入帧完全是上一帧的拷贝,画 面中运动物体的原有运动速率或者运动轨迹会被改变,所以观察者会看到运动物 体进行不规则或者动动停停的运动,我们通常把这种现象称作运动抖动【9 】。因此, 帧复制算法虽然算法简单、运算量低、实现难度小,但是对于运动图像来说,图 像质量会变差。 1 3 2 基于帧平均的帧频提升方法 帧平均方法的思路是:内插帧中每一个像素点的值都是该帧前后两个原始帧 的相同位置的像素点值的均值【l0 1 。用公式可以表示为: 1 ( f ,f ) = - 2 ( f ( i ,j ,f 一1 ) + 厂( f ,f + 1 ) ) ( 1 2 ) z 公式1 2 中,f ( i ,j ,f ) 与f ( i ,j ,r 一1 ) 所表示的意义与公式1 1 中一致,f ( i ,j ,f + 1 ) 表示什1 时刻的帧( 待插帧的后一帧) 在( i ,j ) 处的像素值。该算法是基于时间线性平 均的第一类帧频提升算法,由于没有考虑到空间的变换情况,所以对于图像中的 静态部分,如文字、静止物体等,其插值结果比较完美。但是对于运动物体而言, 由于前、后帧中运动物体的位置很可能不相同,所以产生的内插帧中运动物体的 重庆大学硕士学位论文1 绪论 边缘会变得模糊。尤其对于在静态背景上的剧烈运动的物体,模糊的现象更加显。 1 3 3 基于块匹配运动估计与运动补偿的帧频提升算法 由于帧复制和帧平均等第一类帧频提升算法都不同程度的存在一些问题,为 了解决图像中运动物体的模糊问题,提出了基于运动估计和运动补偿的帧频提升 方法,这种方法属于第二类帧频提升算法l l 。该方法考虑到了像素点的运动情况, 在线性插帧的基础上根据运动估计的结果做出运动补偿,同时兼顾到了静止物体 和运动物体,即能消除运动抖动问题又能有效的解决运动物体边缘模糊问题,从 而大大提高了插帧效果,因此被广泛采用。块匹配算法( b l o c km a t c h i n ga l g o r i t h m b m a ) 因其实现简单,内插帧效果突出而成为了目前应用最为广泛的一种运动估 计算法。基于块匹配的运动估计和运动补偿帧频提升方法如下图所示: 篆 石 。 _ , 、 。_ , - - ( a ) 基予像素( b ) 基,块( c ) 基“1 f 区域 图2 2 不同的运动场表示方法 f i g 2 2m e a s u r e so fe x p r e s s i o no fd i f f e r e n tm o t i o nf i e l d 最直接的方法是为每个像素都指定运动矢量,这就是基于像素的表示方法。 这种表示方法是普遍适用的,但是计算量巨大,并且它的解通常在物理意义上是 不正确的,除非在估计过程中施加适当的约束。针对这种状况,更合理的方法是 重庆大学硕士学位论文2 基于m e m c 帧频提升算法 把视频帧分成多个区域,使得在每个区域中的运动可以用一个参数化模型表示, 这就是基于区域的表示方法。然而,由于我们事先并不知道哪些像素具有相同的 运动,因而往往需要利用迭代算法对图像进行分割,这需要很大的计算量。另一 种策略是把图像固定分割成许多小块,只要每个块足够小,块内的运动就可以很 好地用一个统一的模型表示。这就是被广泛采用的基于块的表示方法。在每个块 中模拟运动的最简单形式是采用一个位移常量,从而使运动估计问题转化成为每 个块找n - 一个运动矢量。这种方法在精确性和复杂性之间提供了一个很好的折中。 然而由于在相邻块间缺乏适当的平滑约束,经常在块边界上出现运动不连续的问 题。更精确的运动估计需要复杂的自适应策略【l6 1 ,不过这往往需要更加复杂的计 算,对于硬件实现来说目前还不太现实。所以,本文中所讨论的设计是基于块匹 配的运动估计。 运动补偿就是根据求出的运动矢量,找到当前帧的像素块是从前一帧的哪个 位置移动过来的,从而得到当前帧像素块的预测值。由于用当前帧在前一帧图像 的对应部分来对当前帧进行预测,而相邻两帧中对应的运动部分的图像信息会有 所不同,故一般会产生补偿残差。运动补偿假设当前帧中的图像块是参考帧的图 像的某种平移,这就为使用预测和内插提供了机会。倍频处理的运动补偿通常是 指待内插的宏块根据其双向运动估计矢量,取其前后对应的宏块进行某种插值运 算( 例如线性内插) 而获得内插块的过程。 在目前的图像处理领域,其算法的硬件实现多采用高性能的c p u 、d s p 或者 f p g a 。其中f p g a 由于配置灵活,并行运算能力强,能够解决图像处理领域中很 多需要进行大量并行运算的问题,所以其目前在视频处理s o c 、a s i c 设计验证方 面得到了广泛的应用【l7 | 。在参考文献 1 8 中,详细讨论了s o c 芯片硬件设计实现 基于运动补偿的帧率提升算法,文献 1 9 提出了一种基于帧级流水的f sb m a 运 动估计器,其相比块级流水的运动估计器简化了逻辑控制,减少了内存访问次数。 该结构总体上说是一种低资源消耗,低带宽需求,高数据吞吐率,数据运算单元 利用率可达到1 0 0 的可级联工作的运动估计器结构,该结构相比之前的各种运动 估计器结构有着比较突出的特点,能够应用于高清数字电视的实时视频处理中。 文献【2 0 】在l a i 结构的基础上进行了一定的改进,通过插入一级寄存器解决了l a i 结 构中当n 值较大( o h n = 1 6 ) 时引起的线延迟大的问题,并提出了一种采用奇偶阵列 寄存器的单向运动估计器的v l s i 实现架构。该结构能够高效地复用数据从而减少 访问存储器的次数,同时在这种结构中p e 呈线性排列,也具备有级联扩展的能力, 其长度与宏块大小有关。 在上述的设计中,这些运动估计器均z 日, 匕e , 一4 k e t 好的实现其采用的运动估计算法思 想,并同时兼顾到了硬件可实现性。但是,它们也存在着某些不足,一是上述的 重庆大学硕士学位论文 2 基于m e m c 帧频提升算法 这些设计中有一部分设计主要是应用在图像压缩领域,而非专门针对帧频提升算 法所设计,对处理效率考虑不足;二是所有的设计中都采用了单向运动估计算法 思想,故产生的内插帧会有重叠和空洞现象;三是在这些设计中采用的匹配准则 比较单一,往往都只选用了一种匹配准则,而对于该种匹配准则不能兼顾到的方 面没有很好的补救措施。比如对于场景变换、光照变化的情况,s a d 匹配准则所 计算出的最佳匹配块可能差强人意【2 1 1 。 2 3 本文中采用的m e m c 的帧频提升算法描述 在本文中,作者所在的实验小组综合前人的研究经验,加入自己的改进,创 新地提出了一种基于m e m c 的帧频提升算法。其主要的算法流程如图2 3 所示: 图2 3 基于m e m c 的帧频提升算法总体结构 f i g 2 3a l g o r i t h m i cs t r u c t u r eo ff r u cb a s e do i lm e m c 首先,对于输入的原始图像采用双向运动估计,基于s a d 匹配准则的块匹配 全搜索算法求出一个最佳匹配块的运动矢量,由于采用了双向运动估计方法,所 以能够有效解决单向运动估计中存在的空洞、重叠问题。第二步,依然采用双向 运动估计和块匹配全搜索,但是匹配准则采用v o d 匹配准则,这是对s a d 匹配 准则在应对场景切换、光照亮度变化等情况时内插帧效果不佳的一个有效补充, 最终的运动矢量选取将在v o d 匹配准则计算的结果和s a d 匹配准则计算的结果 之间选取,选取标准依据的是一个经验阀值。对于该阀值的选取,是建立在前期 算法验证的大量试验基础之上的。由于本人在项目中主要负责这两个模块的硬件 设计实现,所以在本文中,主要介绍这两个模块的实现原理以及仿真测试等。 当前两个模块完成运动矢量的计算后,将运动矢量传入中值滤波单元处理, 其后取精模块会做进一步的运动矢量调整,得到一个最终的运动矢量结果,并将 这个运动矢量传递给内插处理模块以完成内插帧的运算。至此,算法处理流程全 部完成,生成出内插帧【22 | 。 为了系统能够实时地处理输入图像,需要实现帧级流水,d d r 中存储原始帧 数据和内插帧数据结构如图2 4 所示。将整个d d r 分成3 大区域:原始帧区域、 9 重庆大学硕士学位论文2 基于m e m c 帧频提升算法 内插帧区域和保留区域( 未占用区域) 。原始帧区域划分成4 个逻辑空间( l 1 至 l 4 ) ,分别存储4 帧原始帧数据;内插帧区域划分成2 个逻辑空问( l 5 至l 6 ) ,分 别存储内插帧数据。图中f 1 、f 2 表示原始帧,f 1 、f 2 表示内插帧。对这6 个区域的读写操作顺序见图2 5 。 f 1 ,f 5 , f 2 ,f 6 , f 3 ,f 7 , f 4 ,f 8 , f 1 ,f 3 , f 2 ,f 4 , 未占用的空间 原始帧区域 内插帧区域 图2 4d d r 内数据存储示意图 f i g 2 4i l l u s t r a t i o no ft h es t o r a g es t r u c t u r ei nd d r 写入 f i l 1 l 2 ” l 4 l 5 l 6 t l 耳霜写f 3 入匪 叫l 翅垫、卜l l 3 l 4 l 5 l 6 t 2 裂i 一娇i f 5 a | 镭 l 6 t 4 读入f p g a 做 内插塞生f 4 读出刊 显示i 云i 坐e 兰望 t 6 图2 5 帧级流水示意图 f i g 2 5i l l u s t r a t i o no fp i p e l i n eb e t w e e nf l a m e s t 1 时刻,开始往l 1 处写入原始帧数据; t 2 时刻,l 1 处已经写完一帧f 1 ,开始往s l 2 处继续写入原始帧数据; t 3 时刻,l 2 处也已经写完第二帧f 2 ,开始往l 3 处继续写入原始帧数据,同 时,m e m c 处理模块从l 1 和l 2 位置处读出原始帧f 1 和f 2 进行运动估计运动补 偿处理,并将产生的内插帧数据f 1 ,写入l 5 处;t 4 时刻,第三帧原始数据f 3 已 经写入l 3 ,并开始往l 4 写入第四帧原始帧数据,并且,l 5 处已经写完一整帧内 1 0 u u u u m k 錾耶 重庆大学硕士学位论文2 基于m e m c 帧频提升算法 插帧,此时,可以读出原始帧数据l 1 和内插帧f 1 用于显示;同时,读出l 2 和 l 3 的原始帧数据f 2 和f 3 用于m e m c 处理,产生的内插帧f 2 写回l 6 : t 5 时刻,第四帧原始帧数据已写入位置l 4 ,第二帧内插帧也写入l 6 ,而l 1 和l 5 处已经空闲出来,开始往l 1 处写入原始帧数据f 5 ,从l 3 和l 4 读出原始帧 数据f 3 和f 4 用于m e m c 处理,产生的内插帧写入l 5 ;同时,从l 2 和l 6 读出 原始帧f 2 和内插帧f 2 用于显示; t 6 时刻,第五帧原始帧数据f 5 已经写入l l ,第三帧内插帧也写入了l 5 ,而 l 2 和l 6 已经空闲出来,开始往l 2 处写入原始帧数据f 6 ,从l 4 和l 1 读出原始 帧数据f 4 和f 5 用于m e m c 处理,产生的内插帧写入l 6 ;同时,从l 3 和l 5 读 出原始帧f 3 和内插帧f 3 用于显示。以此循环,形成帧级流水。 帧级流水时序示意图如图2 6 所示。 m 厂 厂 厂 r 厂 厂 几r r r 厂 厂 r 厂 r 广 :h d m i 输入场信号;h i :h d m i 输入行信号 m p m c :d d r 2 洲控制( 横线上方为写入,下方为读出) v o :l v d s 输出场信号:h o :l v d s 输出行信号 图2 6 帧级流水时序示意图 f i g 2 6t i m i n g si l l u s t r a t i o no ft h ep i p e l i n eb e t w e e nf l a m e s 其中,h i 和为h d m i 输入视频行场同步信号,h o 和v 0 为l v d s 输出视 频行场同步信号,m p m c 为多口内存控制器( 图中为m p m c 读写时钟轴) ,时钟 轴上方小黑块表示将数据写入d d r ,下方的小黑块表示从d d r 读出数据用于显 示,其余空闲时间用于d d r 与缓存的数据交互,产生内插帧并写入d d r 。 5 个处理模块形成4 级的宏块级流水,其示意图如图2 7 所示: 重庆大学硕士学位论文2 基于m e m c 帧频提升算法 t m v a d j u s t m vv o dm vr e fm e m v _ a d j u s tm vv o dm vr e f m e m y _ a d j u s t m vv o dm vr e f m e m va a j u s t |m vv o dm yr e fm e 宏 块 r 图2 7 宏块级流水时序示意图 f i g 2 7t i m i n g si l l u s t r a t i o no ft h ep i p e l i n eb e t w e e nb l o c k s 5 个处理模块分别是m va d j u s t 模块( 基于s a d 匹配准则的运动估计器) 、 m vv o d 模块( 基于v o d 匹配准则的运动估计器) 、m e d 模块( 中值滤波模块) 、 m vr e f 模块( 运动矢量取精模块) 和m c 模块( 插值补偿模块) 。m va d j u s t 模块为第一级流水,m vv o d 模块为第二级流水,m e d 模块和m vr e f 模块形 成第三级流水,m c 模块为第四级流水。图2 7 中的横轴为时间轴,从左到右依次 表示时间的先后,在每一个时间段内( 图2 7 中的虚线内) 组成该级流水的各个模 块均处于工作状态。例如,在最初的时刻,m va d j u s t 模块开始工作,然后启 动第二级流水中的m vv o d 模块,而m vv o d 模块又将启动第三级流水,依次 类推直到所有的算法模块开始工作,形成一条完整的流水线结构。 2 4 系统硬件实现要点和总体架构 在帧频提升系统中的运动估计运算量巨大,而且对于实时性要求非常高,必 须在两帧原始帧的间隙完成内插帧的计算,因此几乎目前所有的视频处理系统中 的运动估计器都是由硬件来完成的。现有的几种常用运动估计器为了更好的实现 数据重用、并行处理,在数据流控制以及硬件架构上做了很多的优化,从而使之 能够提升整个系统的处理能力。总的来说,帧频提升算法在硬件实现时需要考虑 的主要因素有【l 】: 数据复用特性。在运动估计算法中的块匹配算法中,搜索窗内的相邻候选 匹配块之间以及相邻宏块的搜索窗之间都存在数据的重叠,运动估计器可以利用 重复部分的数据,从而减少访问存储单元的次数。不过同时也需要考虑到缓存的 1 2 重庆大学硕士学位论文2 基于m e m c 帧频提升算法 大小,如果缓存过大能够利用到的重复数据会增多,但同时对硬件资源的开销也 将增大。这需要在两者之间需找一个平衡。 处理并行化。实时视频中的插帧倍频对实时性的要求相当严格,所以运动 估计器、中值滤波、插值等算法模块都必须在规定的时间内完成运动矢量的计算、 滤波及时内插帧的计算。在算法的前期验证工作中,采用的是c 语言对视频流进 行帧频提升处理注重处理效果而不考虑实时性,故其效率比较低下。如果在硬件 实现中继续采用和c 语言程序一样的串行工作方式,后一级工作模块必须等待前 一级模块工作完成后才能开始工作无疑会增加整个系统的处理时间,这在视频的 实时处理场景中是绝对不能接收的。所以,在整个系统的设计中必须考虑到并行 化的处理方式,缩短系统的处理时间。 管脚数目、布线复杂度。整个系统由多个模块相互连接组成,在模块与模 块之间,模块内部各个子模块之间都存在各种管脚的连接。比如运动估计器模块 内部通常是由许多基本运算单元( p e ) 按照一定的结构组成。如果运动估计器内 部基本处理单元之间或者模块与模块之间的连线复杂,管脚繁多的话,那么会影 响到芯片设计后续流程中的布局布线。过多、过长的布线会引起长的延时,占用 了芯片面积,同时极大地影响系统的时序性能。 本系统结构如图2 8 所示,主要包括3 个方面:输入输出部分、算法处理部分、 存储以及存储控制部分。 第一部分:输入输出部分,主要又由输入模块和输出模块构成。输入模块完 成并串转换,将并行输入的一行r g b 像素数据,转换成为串行的y u v 信号并缓 存在一片b l o c kr a m 中以等待写入d d r 中。而输出模块功能与输入模块功能恰恰 相反,它负责将d d r 中的内插帧以及原始帧缓存到一片b l o c kr a m 中,并完成y u v 转r g b ,并行转串行等变换,同时还要按照输出的帧频标准将像素数据输出到显 示器上。 第二部分:算法处理部分,该部分主要由运动估计模块m va d j u s t ( 采用 s a d 匹配准则) 、运动估计模块m vv o d ( 采用v o d 匹配准则) 、运动矢量中值 滤波模块m e d 、运动矢量取精模块m vr e f 和内插模块m c 几个模块组成。它 们各自完成的功能在上- d , 节已经详细介绍过,这里不再赘述。 第三部分:存储以及存储控制部分。该部分在整个系统中起到非常重要的作 用,它完成了数据在d d r 中的存取以及各个算法模块各自缓存的更新与同步。其 中多口内存控制器( m p m c ) 协调各个部分对d d r 内存的访问请求,完成原始与 内插图像写入d d r 、原始图像与内插图像读出d d r 并输出给输出模块以及原始 图像数据更新给算法模块缓存等重要任务。其中使用到的m i g 为x i l i n x 公司提 供的d d r 控制器i p 核,多口内存控制器就是在这个i p 核基础之上实现的,通过 重庆大学硕士学位论文2 基于m e m c 帧频提升算法 这个i p 核来调用物理上的d d r ,x i l i n x 公司提供的m i g 2 0i p 核已经完成d d r 命令的封装以及预充电、定时刷新等功能,并提供了一组方便调用的接口供我们 使用,我们只需要按照相关规定时序即可方便完成d d r 的读写操作。 图2 8 系统结构图 f i g 2 8a r c h i t e c t u r eo fs y s t e m 2 5 算法模块的分解,相互间的接口设计 算法模块如前所述,主要有运动估计( 采用s a d 匹配准则) 模块m va d j u s t 、 运动估计( 采用v o d 匹配准则) 模块m vv o d 、运动矢量中值滤波模块m e d 、 运动矢量取精模块m vr e f 和内插模块m c 几个模块。这样划分的依据是各个模 块的功能独立性。每个模块都只完成相对单一的工作,并且要尽量减少和其他模 块的相互依赖性,这样才能方便整个系统的设计和修改。同时,相对独立的模块 分隔设计,使得整个系统有了分工合作的可能性,开发团队中的成员可以完全并 行的完成各自模块的设计实现与调试,节省了开发时间。 各个模块之间要尽量降低相互问的依赖关系,所以其相互间的接口要尽可能 的少。考虑到整个算法都是以运动矢量为主轴,我们在接口设计中便将运动矢量 的传递作为了接口设计的核心思想。前一级模块均将求到的运动矢量传递给下一 级,辅以一个数据有效信号配合,即可完成整个算法中的运动矢量传递。其他控 1 4 重庆大学硕士学位论文 2 基于m e m c 帧频提升算法 制信号都尽可能减少,或不依赖于其他算法模块。 2 6 系统硬件实现平台的选取 在本系统中,由于存在多路需要进行并行计算的电路,所以对硬件资源的需 求量比较大,前期设计中我们估算出对于触发器资源需求大约在6 万门以内,硬 件乘法器大约需要8 个,b l o c kr a m 的需求低于8 m ,而系统的工作频率设计为 2 0 0 m h z 。对于这样的需求,我们在参考过x i l i n x 公司多款产品后选择了v 5 系 列的x c 5 v l x 3 3 0 t 这款芯片作为我们的f p g a 开发芯片。四j i i 虹微科技有限公司 为我们项目组提供了采用v 5 3 3 0 t 芯片的开发平台,并相应的配有h d m i 输入和 l v d s 输出芯片,方便我们项目的调试。 x i l

温馨提示

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

评论

0/150

提交评论