文献标识码:A
文章编号: 0258-7998(2012)04-0043-03
自由视点视频FVV(Free Viewpoint Video)技术是自由视点3D视频处理领域中最有前景的一种技术[1-4]。自由视点视频处理技术的基本方法是基于深度图像来估计和重建多视点视频,从而显著减少数据带宽。所以深度图像的估计和处理方法是自由视点视频技术的关键和重点。
深度图像可以直接由基于运动-视差联合估计的方法计算,利用这种方法能够有效减少自由视点视频技术中深度图像处理过程所需的数据带宽,并且没有增加额外的硬件资源和计算时间成本。但是这种方法是在一个特定的搜索窗口内用特定的代价函数来进行块搜索,所以它存在一些问题:在物体的边缘存在着块效应;在连续的大背景区域、复杂背景区域存在预测噪声。基于色度分割的方法可以改进这些错误。
1 色度分割原理
原始的YUV图像是由亮度分量和色度分量组成的。在一般的运动-视差联合估计的方法中,只有亮度信息被用到,以求得视差矢量和深度图像,包含有丰富的物体边界信息的色度分量没有被用到。对于连续物体表面或者背景区域,色度分量值几乎是相同的。所以如果色度图像按照特定的标准被分割,物体的表面或者背景区域就能被相应地检测出来。如果深度图像的像素值在同一个分割内各不相同,则在这个区域肯定存在深度预测错误。通过检测到错误像素的位置,采取相应的措施来纠正这些错误。
色度分割方法的三个步骤[5]:
第一步:将U/V分量归一化到[0,255]之间。
第二步:进行图像分割,如果当前像素值与其相邻的顶部或者左侧像素值绝对值小于DIV_TH,则它被划分到相同的分割,否则分离到下一个新的分割,如式(1)所示:
2 深度图像处理模块设计方案
2.1 总体设计
2.1.1 深度处理模块的架构与组成设计
根据算法结构与组成,确定深度模块的实现架构与组成,包括总线结构、存储结构、时钟频率、模块组成等。
总线结构选用标准AXI总线。由于立体视频需要实时处理多路视频信号,所以需要的视频数据处理带宽极大,必须采用AXI总线设计才能满足实时处理要求。内部模块所产生的处理数据,如果不能暂存于片上存储单元中,则通过AXI总线写到片外缓存。同样,读数据也通过AXI总线读入处理模块。存储结构根据视频像素YUV分量的组成,分为Interleave存储方式和非Interleave存储方式。Interleave存储可以实现具有较长Burst传输的DMA设计,但是内部芯片设计较为复杂。而非Interleave存储则不利于实现高效的总线传输,但是DMA设计相对简单。根据所用的标准单元库,以及芯片实际电路设计来确定所需的时钟频率,根据经验应不低于200 MHz。
2.1.2 运动估计与视差估计存储单元设计
由于需要对当前块同时进行运动预测与视差预测,所以宏块中间预测结果需要尽可能存储于片上存储单元中,以减少总线的输入输出数据带宽。假设视差估计的搜索窗口为PW×PH,图像分辨率为FW×FH,运动预测采用固定搜索窗口范围48×48。视差预测模块与运动预测模块同时读入相应参考宏块存入片上缓存,片上存储单元需要将进行完预测、并且后续预测有可能会用到的宏块都存储下来以减少数据带宽,增加处理速度。这样,运动估计存储单元MEM(ME Memory)至少需要有16×3+4个像素行的容量,即FW×52。相应视差存储单元DEM(DE Memory)至少需要有FW×PH+4容量。
2.1.3 芯片软硬件验证平台设计
芯片设计离不开验证平台。大规模集成电路设计过程需要完善的验证平台进行仿真、测试来证明其功能和性能的正确性、完整性、实时性。立体视频编码芯片基于传统的Verilog和C语言来搭建软硬件验证平台,如图1所示。
义内部原始像素存储器为8 bit位宽、地址从0~196 607的存储器,用来存放片外读取的U/V分量。类似地,定义内部锐化像素存储器为同样类型的存储器,用来存放经过锐化处理过的U/V分量,这两个存储器的输入、输出均由存储器控制器控制。定义两个Reg寄存器Max Value Reg和Min Value Reg用来保存两个比较器输出的中间结果。存储器控制器依次产生内部原始像素存储器的地址,内部原始像素存储器顺序输出给比较逻辑,等所有像素都输出一遍后,寄存器Max Value Reg和Min Value Reg里面就分别保存了整帧的U/V色度分量最大值和最小值。然后使能寄存器,让寄存器保持原来的值。控制器再依次产生内部原始像素存储器的地址,此时控制器根据后续的计算模块的时序,对每一个像素值进行锐化处理,得到的结果保存在内部锐化像素存储器里面。
2.3 色度分量分割模块
色度分割模块框图如图4所示,从Sharp模块出来的数据直接进入Frag模块进行处理。图4中内部锐化像素存储器和其右侧的存储器控制器与图3中相对应。根据像素所处的位置来选择不同的处理方法:如果当前像素处于第一行,则只需要将当前像素与其左边相邻的像素进行比较即可; 如果当前像素处于第一列,则只需要与其上方相邻的像素比较即可; 如果是其他位置的像素,则需要同时和其左边的相邻像素及上方的相邻像素比较。比较准则见式(1),得到的分割数Frag Number存在像素分割数存储器中。
3 结果及分析
Verilog 代码经Synopsys综合工具Design Compiler的逻辑综合,深度图像处理模块在 SMIC 0.18 um工艺下, 能够达到总线时钟为200 MHz的工作频率,消耗89 100门逻辑资源。由此可知:基于色度分割的深度处理模块能够有效地减少数据带宽,并且没有额外增加硬件资源和计算时间成本,适用于实时自由视点3D视频处理。
图6是基于块搜索的运动-视差联合预测方法直接得到的深度图像,图7是经过基于色度分割方法的深度处理模块优化后得到的深度图像。从图6和图7的对比可以看出:对于连续的大背景区域而言,这种深度图像优化方法可以有效地过滤深度图像的预测噪声,并且对于减少物体边缘的块效应有很好的效果。另外,这种优化方法也使得图中的物体边缘变得更加清晰,如椅子、墙壁和桌子的边缘等。
采用本文方法可以显著减少连续大背景区域的深度图像的预测噪声,也能较好地改善物体边缘处的块效应。采用运动-视差联合估计的方法,结合这种基于色度分割的深度优化方法,可以有效地优化深度图像,显著减少计算量和数据带宽,非常适用于实时自由视点3D视频处理。
参考文献
[1] SMOLIC A,MUELLER K,STEFANOSKI N,et al.Coding algorithms for 3DTV-A survey[J].IEEE Transactions on Circuits and Systems for Video Technology,2007,17(11):1606-1621.
[2] MARKUS F,ADITYA M,BERND G.Motion and disparity compensated coding for multiview video[J].IEEE Transtions on Circuits and Systems for Video Technology,2007,17(11):1474-1484.
[3] VETRO A,WIEGAND T,SULLIVAN G J.Overview of the Stereo and Multiview Video Coding Extensions of the H.264/MPEG-4 AVC Standard[J].IEEE Proceedings,2011(99):1-17.
[4] ITU-T Rec.H.264-ISO/IEC 14496-10 AVC:Advanced video coding for generic audiovisual services[Z].ITU-T and ISO/IEC Joint Video Team,2005.
[5] Li Zhou,Tao Sun,Zhong Lv,et al.Depth map optimization based on adaptive chrominance image segmentation[J]. Communication Software and Networks,2011(5):660-664.