陈琨+陈亮
摘 要 随着文化娱乐需求以及数字影像技术的快速发展,对高清晰度影像制作与保存、再现要求越来越高,在球幕上播放8K数字影像技术的市场需求随之扩大。文章重点分析了8K球幕的系统集成研发过程,如在播放软件算法研究中完成了多视点统一、画面融合技术、软同步、音视频同步以及图像压缩解压等难点,在硬件集成方面主要解決存储体系快速稳定读写、同步帧锁相、刷新率同步以及光纤传输等问题。实验效果良好,并付诸市场应用。
关键词 8K影片;球幕播放;系统开发;系统集成
中图分类号 G2 文献标识码 A 文章编号 2096-0360(2017)01-0027-06
1 球幕播放系统发展简况
幕的形状和投影方式,是数字球幕影院和胶片数字电影的最大区别。球幕是个反扣的半球体,一般由多台投影仪共同投影到这个半球体的内部,进行画面拼接融合后,完成整幅画面的播放。球幕的投射面积和投影机的个数决定了球幕影片的分辨率。本次研究选择的分辨率定为标准8K,即8192×8192。
分辨率如此之高的影片,从片源上能够保证影片展示的每个细节都能够清晰展示,其次就要取决于播放系统的技术质量如何。国外公司凭借其领先技术一直在球幕电影在原创与制作方面占据主导地位。但是这个情况正在逐渐被打破。北京莫高丝路公司在2012年通过自主创新,取得了全球超高清8K球幕节目“首创”。随后,成功测试3D立体8K超高清球幕影片。这不仅在特种影视制作技术上填补了国际空白,更标志着国人掌握了超高清特种影视特效的创作能力,打破了国外技术垄断。
2 系统实现的技术步骤:理论与实践
2.1 算法及软件研究
2.1.1 多通道投射的视点统一技术算法研究
步骤一:建立仿真模型
建立仿真模型,向该仿真模块输入已知参数值。其中,所述已知参数值包括以下参数:投影机所处位置的三维空间坐标、投影机左右转动角度、投影机上下倾斜角度、投影机投影比和投影机长宽比。
步骤二:仿真计算
使用仿真模型进行仿真计算。
1)对于球幕多通道投影的场景,设任意一个投影机i对应投影通道i,在投影通道i的投射画面上建立m×n的均匀二维顶点阵列。
2)投影机i发出的光线将二维顶点阵列投射到球幕上,计算二维顶点阵列在球幕上投射点的位置坐标。
3)进一步计算球幕上投射点在纹理画面上的纹理位置坐标。
4)判断纹理画面上的纹理坐标是否为所需要的纹理位置坐标,如果判断结果为否,则调整S1中的所述已知参数值,然后使所述仿真模型重新进行仿真计算,直到使纹理画面上的纹理坐标满足
要求。
步骤三:解决“2”球幕多通道投影仿真问题(球幕坐标)
根据步骤小项“2”所述的球幕多通道投影仿真方法,具体为:
1)读取用户输入的投影机i所处位置的三维空间坐标,令其为坐标原点O(0,0,0),同时建立空间坐标系xyz和球坐标系(r,θ,φ),设所建立的m×n的均匀二维顶点阵列为矩形LMKI,设矩形LMKI的IK边与平面xoy平行。
2)取LMKI的几何中心为点A(xA,yA,zA),
长LI和宽IK的中点分别为C(xC,yC,zC)、D(xD,yD,zD),则⊥,⊥,⊥,⊥;对于二维顶点阵列上任一顶点B,光线在球幕上的交点为T,即T点即为顶点B在球幕上的投射点。
3)依次计算向量、向量、向量、向量,然后计算出向量。
4)设光线的起点为S,则方向d为,则求出顶点B在球幕上的投射点T为S+t;其中,
其中r代表半径;V≡S–C,C为球幕的球心。
步骤四:解决“3”所述球幕多通道投影仿真问题(纹理坐标)
1)设球幕上投射点T直角坐标为T(x,y,z),且,点T这样用三个有次序的数(r,θ,φ)确定,其中r为原点O与点T间的距离,θ为有向线段OT与z轴正向的夹角;φ为从正z轴来看自x轴按逆时针方向转到OM所转过的角,这里M为点T在xoy面上的投影。
2)设点P(x1,y1)为点T(x,y,z)在纹理坐标上对应的点,则点P(x1,y1)的极坐标用两个有次序的数(r1,φ1)确定,其中r1为原点O与点P间的距离,φ1为有向线段OP与x轴正向的夹角。根据等距投影的原理,r1,φ1与r,θ,φ具有以下关系:
r1=kθ,其中,k为常数。
φ1=φ。
根据上述公式,求出球幕上投射点在纹理画面上的纹理位置坐标。
本算法实现的软件如图2所示。
2.1.2 融合算法研究
1)对于多台投影机通过多通道投射画面的应用场景,对于每一台投影机,均定义一张与其投射画面大小相等的纯白色纹理画面。
2)对所述纯白色纹理画面的像素点亮度进行调整,得到处理后的纹理画面。
3)在所述投影机的原纹理图上叠加覆盖所述处理后的纹理画面,得到新的纹理图。
4)各台投影机均投射各自新的纹理图,各张所述新的纹理图的融合带进行边缘融合,得到最终投射到球幕上的投影画面。
根据步骤1)所述的边缘融合方法,具体为:
对于一张所述纯白色纹理画面,该纯白色纹理画面归一化为矩形,以纯白色纹理画面的左下角顶点为原点,以纯白色纹理画面底边长的方向为x轴方向,以纯白色纹理画面左边长所在的方向为y轴方向,建立平面直角坐标系。
以x为自变量,在所述纯白色纹理画面上,绘制四条融合曲线,分别为:左边融合曲线、右边融合曲线、上边融合曲线和下边融合曲线,对于每一条融合曲线,分别定义一个常量d,以该常量d代表融合带宽度,再绘制与该融合曲线平行的另一条融合曲线,两条融合曲线之间的区域即为融合带,进而得到四条融合带,如图3所示。
分别调整四条融合带的亮度,即得到处理后的纹理画面。
本算法实现的软件如图4所示。
2.1.3 软件同步算法研究
1)理论概述。
相关的操作人员可以运用互联网接口来发送一定的命令并发送给计算结果操作的界面,进而实现控制服务器的目的,場景服务器必须要连接控制服务器以及客户端,并且能够及时的发送相应的场景渲染数据,将自身所接到的数据及时发送到各个客户端,并且做好协调控制工作,完成实时渲染工作,同时应该将控制和渲染工作及时分开,通过TCP协议通信才能够保障数据传输的及时性以及准确性,其主要目的就是提高状态帧包发送的实时性。
为了能够提高反馈确认同步算法传输的实时性,往往会需要通过组播方式来进行场景帧包的发送,并且能够将几个客户端连为一组,通过控制服务器向场景服务器发送控制帧包,并且可以通过渲染信息重组的方式来向客户端进行传送。反馈确认机制主要指的是运用多种渠道实行渲染,其渲染的节点负载以及时间都不一致,从而会导致显示画面不同步。解决这个问题唯一的方法就是需要使用反馈确认机制的方式来进行渲染,使得在每一个渲染点对渲染任务完成后,可以实现及时的反馈给场景服务器,全部客户端收到命令之后,及时通知客户端,从而能够有效地解决画面显示不同步的问题,另一方面,主要的渲染时间最大值选择使用最大的等待时间,出现实际某一个渲染点的工作速度相对慢的问题进行解决,其他的渲染节点等待造成的帧速大幅下降,影响显示效果的问题。
推算定位机制,因为视觉服务器和相应的视景客户端两者的通信工作,是通过两者UPD协议的方式来进行的,所以,在进行传输的时候会出现数据包丢失的问题,没有办法及时解析相关的状态帧包,这样就会导致实际呈现的画面不同步的情况,为了判断实际丢包现象是否属实,需要对系统的时间进行及时划分,每个状态都应该关联相应的时间戳。
2)算法概述。
如果总节点数量的一半比渲染时间中最大等待时间节点的数量要大得多,这样最终输出的主要图像就会是渲染节点上的某一个帧纹理。
如果最大的等待时间比渲染的时间要短得多,并且其节点个数超过总节点个数一半的时候,就会导致其等待时间延长,如果没有渲染完毕,就会导致其他节点等待,如果相应的时间截止总节点数量的一半还是比未完成渲染的节点数量多,这就需要按照2)去执行;如果不按照此方式进行,就可能导致最大等待时间为原来的3倍以上,将以上的过程重复进行。
如果发生状态帧包丢失的问题,那么就需要依据推算定位机制方式来实现该时刻物体的预测,并且得到相应的状态信息。
软件实现如图6所示。
2.1.4 音视同步算法研究
1)在发送方。
对于相同时刻的音频/视频帧,打上相同的时间戳(系统时间)。
2)接收方。
比较常见的接收方就是保存两个队列,其主要就是存放还没有播放的音频和视频。每当收到音频帧的时候,会通过video队列将其进行比较,如果音频帧时间在视频帧之前,就会先进播放。如果音频跟视频的时间戳相差在某个可以接受的误差内,则同时播放该音频/视频(并将视频帧从video队列中删除)。
如果视频时间比较靠前的时候,就会先播放视频帧,并且将其从video队列删除,如果video队列内的最后一帧都在audio之前,就需要等video全部播放完成之后才能够将其放到audio队列。
3)对接收到视频帧的时候,也做类似的处理。
2.1.5 H.264视频压缩算法介绍
对于8K球幕视频采用的多通道球幕拼接方式实现,因此对于每一通道采用H.264编解码方式。由于H.264会把每一个视频帧变成一定的块,这些块是由像素组成的,所以视频帧编码的实际处理的过程中的标准可以实现块的编码。如果是连续帧,往往会选择不同块对其进行临时存放,从而对其进行部分编码就行。H.264往往都会选择冗余的方法对视频帧的原始模块进行空间预测、优化等工作,并且通过剩余空间冗余技术能够对其进行编码,最终保障H.264相对于其他编码的方式具有一定的特点和优势。
视频编码层的根本工作的原理:首先需要运用MPEG2的来实现编码的变换,然后再运用时间和空间的混合编码来保障图像能够得到及时的划分,进而在一定的程度上来保证每一个序列能够与相应的图像产生一定的对应关系,也就是随机存取点,对于帧中的每一个采样预测的工作都需要通过编码来实现,要想对其实行预测工作,就需要把使用解码器对一定的附加信息进行一定并且及时的分析处理,随机存取点相互之间的图像大部分还是通过帧间编码方式实现的,要想达到对下一个相关的图形能够及时准确的预测,这就对编码器有了一定的要求,需要其拥有相应的编码器,通过对编码器以及变化系数实现反变换和反量化的过程,最后就能够得出编码预测的相关残余部门,将其与预测实行一定的有机结合,并且将得到的结果传送到效应滤波器,整个过程就实现了视频的输出效果。
1)图像、帧和场。
连续的编码图像组合就形成了一个编码视频序列,整个一帧的图像或者是一场图像都可以表现为编码图像。
2)YcbCr色度空间和4︰2︰0采样。
H.264/AVC目前采用与MPEG-2主类相同的
4︰2︰0采样结构、8比特精度。
3)宏块划分。
每个视频图像帧可以对其进行划分,宏块是解码的基础条件,往往是由16×16两度像素以及两个8×8彩色分量像素的长方型区域,能够对其亮度和色彩进行空间和时间上的预测,并且及时的做好相应的编码工作。
4)像条和像条组。
支持5种像条编码种类:
I像条:其中相对比较容易的编码种类,其中所有宏块都不会以视频序列中的图像作为参考
依据。
P像条:I像条编码种类除外,P像条的一部分宏块能够实现帧间的预测工作,每个预测块至多可使用一个运动补偿预测信号。
B像条:除了P像条编码类型外,B像条的部分宏块可以利用帧间预测,每个预测块可使用两个运动补偿预测信号。
SP像条:称作切换P像条,能在不同编码图像之间有效地切换。
SI像条:称作切换I像条,允许SP像条的宏块完全匹配,达到随机读取数据进行解码和恢复错误的目的。
5)宏块的编解码过程。
宏块的亮度以及色度采样主要就是通过空间和时间进行预测,从而能够对残余进行编码工作,为了能够顺利的进行编码工作,必须要对每个预测残余进行细致的划分,才能够保障其实现进一步的量化工作。
6)帧内预测。
按照像条编码的种类来看,每一个宏块都可对编码的类型进行合适的选择。所有像条类型支持两级帧内编码,称为INTRA-4×4和INTRA-16×16。
7)帧间预测。
(1)P像条帧间预测。
除了帧内宏块编码之外,还具有诸多编码,比如P像宏块具有诸多预测类型,目前比较常用的就是运动补偿编码,其主要就是指每个P型宏块都会制定相应的宏块,其亮度必须要符合相关规定和标准,语法会允许其存在最大运动矢量,并且主要选择的推算方法就是参考帧采样。主预测工作可以通过临近块的相应值别说平均值的方式来及时进行,这样就可以运用编码来计算出运动的矢量。相应的语法方面可能会对各运动补偿的预测提供支持的依据,本质上就是运用很多个编码图形来表示运动补偿的依据,每一个运动补偿还是需要依据参考图像实现严格的索引工作,除了这种模式以外,P宏块可使用P_Skip模式,P_Skip模式的适用范围要是没有相应的改变或者是固定运动,具有很高的压缩率,实际中比如摇镜头等。
(2)B像条的帧间预测。
B像条与P像条的实际概念对比,跟之前的标准相类似,还是存在一定的差别,其中可以作为运动补偿预测的判断图像的是B像条,并且在一定程度上还能够实现两个运动补偿预测实际值的加权
运算。
8)变换和量化。
与传统的视频编码变准相比,其具有较大的差异性,其主要利用了预测残余变换编码,选择与离散余弦相类似的整数变换,从而才能够保障反变换没有误差,符合相关规定和标准的要求,提高其准确性。
9)熵编码。
H.264/AVC对两类熵编码的方法都持支持的态度,其中相对比较容易的熵编码的方法:针对除量化系数以外的基本全部的语法元素,都运用单一无限并且可扩展的码字表。运用这样的熵编码的方法就不用对每一个语法元素都进行VLC表的制定了,简单的使用数据的相关统计特征,就能实现客户化影射到单一的码字表。
为了实现对量化的变换系数进行传输的工作,选择CAVLC的方法是具有很高的效率。在这个方案中,运用已经传送的语法元素都能够实现每一种语法元素的VLC码表的自由切换。另一方面,VLC表的统计对熵编码的基本性能实现了一定的改善,因为VLC表设计相对应的条件统计。
2.2 硬件集成技术研究
硬件集成技术研究主要方向在存储体系建立、硬件同步技术研究、与视频信号传输三个问题上。其中存储体系建立是为了解决8K球幕视频的巨大存储量以及数据吞吐速率的问题,而硬件同步技术是为了配合软件同步而使得节目播放过程中硬件设备信号的同步问题,视频信号传输技术则是为了更有效的进行远距离传输高质量高分辨率视频信号。
2.2.1 存储体系建立
为了保证传输效率,节约存储空间,在视频编码过程中,采用了H.264编码。无论采用何种编码,对视频来说都是一种画质损失。最优的情况下是采用YUV的无损压缩方式,甚至是直接播放单帧序列。
本系统的体系技术指标就确定为以无损单帧播放为标准。
存储体系的关键硬件就是硬盘,硬盘的质量、稳定性、传输速度决定着数据是否及时的、稳定的进行传输。经过计算与实际测试,课题组选用SAS硬盘作为存储体系的存储介质。SAS硬盘理论传输速度为300 MB/S~600 MB/S。
相对于每个通道而言,單通道的数据吞吐量大约在500 M/s左右。8K分辨率的数据帧24位TGA格式为240 M,7 G/S左右。因此选用最先进的SAS固态硬盘组合模式。利用阵列技术,将多台SAS硬盘组合起来,共用传输通道,即保证存储的容量,也保证存储数据的吞吐量。
2.2.2 硬件同步技术
不同通道的视频服务器是独立工作的,也就是说每个视频服务器的显卡是独立工作的。即使在软件播放端进行了时间戳同步等一系列同步手段,相对于其他视频输入、输出设备,它们的工作时钟信号都未必同步。
为了解决本问题,课题组在整个系统中引入同步锁相、锁帧技术,利用Genlock锁帧/相卡,确保所有设备的信号是同步的。
课题组通过测试,发现AMD公司生产的ATI FirePro? S400锁相卡为市场最成熟和稳定的产品。该卡有如下功能。
1)通过视频信号同步锁相Genlock功能,可使不同装置的影片于图像讯号同步化。
2)ATI FirePro? S400是一款单卡式解决方案,内含一颗专用处理器,能同步各绘图处理引擎。
3)影像同步帧锁相功能(Framelock)是将多张显示卡或多台主机之间协力完成的画面输出屏幕同步化。
4)ATI FirePro? S400解决方案可提供影像同步功能,结合屏幕输出以及同时执行的显示缓冲虚拟记忆空间,协助系统间连接的ATI FirePro?绘图单元,能在锁定同步状态下呈现完美输出内容。
5)ATI FirePro?首发同步模组,单机便可支持4张ATI FirePro?绘图卡,并能和几乎所有影片输入讯号进行同步化,其中包括PAL与NTSC标清影片黑场信号,HDTV的Tri-level信号,TTL以及SDI同步信号。
通过该卡的应用,课题组不仅实现了各视频输出设备的刷新信号同步,同时也实现了视频输入设备的同步。在山东临沂市科技馆,利用该技术,课题组成功的将天文望远镜的视频输入信号,与投影机的视频输出信号同步,进行播放。
这就使得该系统不仅拥有回放式信号输出功能,还具有实时信号同步输入再输出的功能。
2.2.3 视频信号传输技术中光纤作为传输介质的特点
1)频带宽。
目前单个光源的带宽只占了其中很小的一部分(多模光纤的频带约几百兆赫,好的单模光纤可达10 GHz以上),采用先进的相干光通信可以在30 000 GHz范围内安排2 000个光载波,实现波分复用,并且能够容纳上百万个频道。
2)损耗低。
光纤的损耗小,传输1.31 um的光,每千米损耗在0.35 dB以下;传输1.55 um的光,每千米损耗0.2 dB以下。此外,不需要引入均衡器进行均衡;其损耗几乎不随温度而变。
3)重量轻。
因为光纤非常细,加上防水层、加强筋、护套等,也具有直径小、重量轻的特点,安装十分方便。
4)抗干扰能力强。
光纤传输对电磁干扰、工业干扰有很强的抵御能力。8K分辨率的数字节目,由于数据量巨大,因此选择光纤作为8K超高分辨率节目的传输介质。
3 结论与成果
通过对多通道投射的视点统一技术算法的研究解决了普通投影仪投射球幕影像的预变形的问题,通过软件的投影仿真实现了投影机预装的位置以及角度等参数。在多通道无缝软融合技术研究中,实现多投影重叠区域的无缝软融合的算法,解决了投影机融合带亮度以及色度平滑过渡的问题。多通道投影播放同步技术的研究探索过程中,解决了多通道投影机播放不同步造成视频画面撕裂的问题,实现了在多通道投影情况下视频同步播放的功能。在对音视频同步算法研究中,解决了在投影播放情况下音频和视频不同步的问题,实现了在投影播放中音视频自动同步播放的功能。在8K球幕播放条件下高分辨率圖像的压缩实现过程中,采用了多通道投影技术以及H.264压缩编码方式,解决了高分辨率图像下的投影播放问题,实现了8K球幕播放功能。
同时在硬件集成技术中,选用固态SAS硬盘阵列解决存储以及数据吞吐量巨大的问题;利用锁相卡解决了视频输入、输出设备的信号同步问题、并采用光纤作为视频传输介质,保证了整个系统视频信号传输的快速与高保真。
参考文献
[1]朱毅.数字球幕电影技术体系及关键技术研究[D].南京:南京理工大学,2007.
[2]陈振宇.插值算法在图像放大中的应用及数字球幕电影的制作[D].南京:南京理工大学,2007.
[3]李坚,文红光,贾宝罗.一种360度数字球幕电影的制作方法:中国,201110029458.6[P].2011-01-27.