多视点自由立体显示的编码研究

时间:2022-10-30 03:54:55

多视点自由立体显示的编码研究

摘 要: 自由立体显示器提供了一种新型的立体观察手段,它最大的优点就在于不需要借助任何辅助手段就可以体验到真实的三维立体图像。实现自由立体显示是一个复杂且技术含量高的过程,本文论述了Davinci DM6446开发平台的立体视频播放器的设计原理,研究了H.264压缩编码以及MVC压缩,针对立体视频的特点,提出了一种改进的MVC编码结构。

关键词: 自由立体显示 多视点编码 H.264 视差补偿

一、引言

人们对视频享受的要求一直在不断提高,从黑白电视发展到彩色电视,又从模拟电视发展到高清晰数字电视。下一次变革将从平面电视发展到立体电视。而立体电视视频需要存储或者传输的数据量非常庞大,必须对原始视频数据进行压缩,因此研究高速、高效、高质量的立体视频压缩算法具有很大的实用价值。把二维视频信号转换为立体图像的方法在很多文献中已经有了很多的研究,也提出了基于深度的立体视频合成算法。同二维视频信息一样,立体视频信息不仅具有时间冗余信息、空间冗余信息、心理视觉冗余信息和编码冗余信息,而且具有视点间的视差冗余信息。因此大多数立体视频压缩算法的研究都是基于二维视频压缩算法,同时针对立体视频特有的视差冗余信息进行算法改进和扩展。ITU-T视频专家组(VCEG,Video Coding Experts Group)和ISO/IEC运动图像专家组(Moving Picture Experts Group,MPEG)在2001年组成了一个联合视频小组JVT(Joint Video Team),联合开发了一个比早期研发的MPEG和H.263性能更好的视频压缩编码标准。这就是被称为ITU-T H.264建议和MPEG-4的第十部分标准,简称H.264/AVC或者H.264。这个标准已经于2003年3月被ITU-T正式通过。

二、立体显示器的原理

目前立体显示根据其产品特点可分为:立体镜(需要辅助设备――各种立体视觉眼镜来实现左右眼的区分)、单人观看的单视点显示技术(透镜柱面和视差栅栏),多人观看多视点显示技术以及全息立体显示技术(球形立体显示,液晶平面队列,全息技术)。由于多视点显示技术适合多人观看,且实现技术相对于全息立体更加容易,已成为目前市场上的主流,本文也将主要探讨多视点立体显示及其编码技术。

总的来说,立体显示器都经过两部分的处理。首先要进行软件处理,把图像处理成需要的格式,比如左右眼交叉的栅状图,然后利用硬件手段(如条状柱镜、狭缝光栅)将左右眼画面分别折射到各自的区域,人们站在一些特定的位置上,便可以看到立体图像。由于技术上原因,目前的3D显示器基本都是基于LCD液晶或者PDP等离子显示器,且等离子寿命短,已趋于淘汰状态。

三、Davinci DM6446开发平台硬件和显示屏

1.Davinci DM6446开发平台

Davinci DM6446开发平台的立体视频播放器是基于一种双核处理器的架构,每块芯片都含有一个ARM核心和一个业界最高性能的DSP(Digital Signal Processing)-TMS320C6000,该技术大大加速了数字电视应用的创新。它的双核包括:TI高性能的TMS322064+TM系列DSP和ARM92EJ-S处理器,同时它还集成了视频加速器,网络设备和存储设备及接口等模块。ARM92EJ-S是一个32位精简指令集的处理器,它能够执行32位或者16位的指令。TMS322064+ 系列DSP能够采用第二代高性能的超长指令体系结构。因此,这种处理器非常适合数字多媒体应用。

2.显示屏的硬件组成

前置式狭缝光栅立体显示器硬件主要由LCD液晶或PDP等离子外加狭缝光栅组成。为了能够实现立体影像的正确分离,对其狭缝光栅的精度要求比较高,光栅栅距必须与相应的LCD液晶或PDP等离点距相匹配。另外为了避免多视点立体显示单纯降低水平分辨率的缺点,采用了狭缝光栅斜放一定的角度以提高水平分辨率,降低垂直分辨率。

目前市场上基于前置式狭缝光栅的自由立体显示器其立体数据多采用8视点或9视点图像进行排列。由于采用了光栅斜放,使其最终合成的图像水平和垂直分辨率各为原来的1/3。

四、基于H.264的多视点视频编码MVC

多视点编码(MVC)是H.264编码标准的扩展集之一。它是利用H.264高级编码压缩算法,针对多视点的特点,通过更改一部分H.264编码器的框架,扩展编码器对应的功能,来达到压缩视点视频的目的。

1.H.264时间分级结构

在H.264AVC标准中,任何一幅图片都能被标志为参考图片并用于随后帧的运动补偿预测。AVC的特性就是能够自由选择编码预测的结构。如图2所示是一种四级预测结构,这种结构能够提供四个时间层次的分级性。视频序列的第一帧是I帧,也叫关键帧,两个关键帧之间的帧和后一个关键帧一起构成一组图片(GOP:Group of Picture)。关键帧采用帧内预测,同时依赖前一个关键帧作为参考的帧间运动补偿预测。GOP中剩余的图片采用分层次的B帧结构来预测。每个B帧有两个参考帧,分别是最近过去和最近将来更低时间级别的帧。在MVC编码标准草案中,GOP可以是2,1≤n≤6。GOP还可以是12和15两种特殊形式。

虽然各个摄像机拍摄景物的角度不同,但是,同一组视点的视频之间在同一时刻的图像具有很强的相关性,利用视点间的预测的方法可以有效降低视点之间的冗余信息。

2.多视点的编码结构

基于H.264标准的立体视频编码器如图2所示,图中ME代表运动估计,DE代表视差估计,MV代表运动矢量,DV代表视差矢量,VLC代表熵编码。

MVC草案中定义的编码器结构如图3所示,水平坐标为时间轴,垂直坐标为视点轴,S0表示第0号视点,T0表示第0帧视频。MVC采用分层次的B帧构造可分级预测结构,每帧字母右下角的数字表示级别,0级优先级最高。图中从时间分级角度来说,被分成0,1,2,3,4五个等级。S0的第0帧是I帧,S3,S6和S7的第0帧采用视点间P帧预测,S1,S3和S5的第0帧采用视点间的B帧预测,其余都采用B帧预测结构,与H.264AVC不同的是,有一些B帧既有前向预测和后向预测,还有视点间的预测。为了视频流的同步,全视点图片组(GOGOP)都以I帧开始,从视点的可分级角度分析。这种编码结构分为三级:S0视点为第一级,S2,S4,S6为第二级,S1,S3,S5,S7为第三级。

3.改进的MVC编码结构

在图4描述的参考编码结构中,如果相邻的视频具有人眼的标准视差,那么参考编码结构至少需要传送三个视点的信息(S0,S1,S2)才能完成解码,并利用S0和S1或者S1和S2分别构成立体视频。考虑打破立体视频基本流的最少只需要两个视点,对于立体视频基本流的需求而言就浪费了一个视点的带宽。除此之外,参考编码结构在视点的分级结构上也需要根据立体视频的特殊性做适当调整。按照参考水平排列的多视点立体视频,原始结构中的视点S0到其余视点的平均距离较大。离S0最远的视点的累积误差较大,而中间视点到其余视点的平均距离较小,各个视点平均的累积误差较小。

该结构的视点间完全是I-P-B-B-B的视点间的预测结构。这时,多视点立体视频分为8级:第一级为S3,第二级增加S4,第三级增加S2,第四级增加S5,第五级增加S1,第六级增加S6,第七级增加S0,第八极增加S7。在这种结构中,基本视频流是S3,基本立体视频流是S3和S4。这种结构只需要传输两级视频,两个视点就可以获得立体视频了。

五、结语

对于多维立体显示技术而言,要做到真正的面向大众应用,要做的工作还是很多的,通过传统的压缩编码已经很难使得立体图像进行不失真的传输,而且新的立体压缩技术的评价标准还有待建立。本文只是在平面多视点图像向立体图像合成方面进行了有益的探索。就目前的3D显示器而言,它所重现的物体深度都只是在某一视点的立体视觉效果,当我们想通过移动脑袋来看到物体另外的侧面或者后面根本是不可能的。将来的立体显示器将会更多的倾向类似于全息立体显示技术的效果,我们可以通过走动看到物体的侧面,基到物体的背面,并且站在不同的位置应该看到不同的物体面。

参考文献:

[1]侯春萍.平面图像立体化技术的研究[D].天津:天津大学博士论文,1998:27-34.

[2]张兆杨,安平,刘苏醒.3D多视点立体显示及其关键技术[J].电子器件,2008,31,(1):302-307.

[3]梁发云,邓善熙,杨永跃.裸眼立体显示液晶屏的光学结构及设计[J].液晶与显示,2005,20,(6):544-548.

注:“本文中所涉及到的图表、公式、注解等请以PDF格式阅读”

本文为全文原貌 未安装PDF浏览器用户请先下载安装 原版全文

上一篇:谈信息技术课堂中的开放性教学 下一篇:网络虚拟实验室仿真实验平台的设计