一种裸眼3D 显示中的多视点校正方案
2022-04-27李宁驰于迅博颜玢玢桑新柱温旭东
李宁驰,于迅博,高 鑫,颜玢玢,桑新柱,温旭东,徐 斌
(北京邮电大学 电子工程学院,北京100876)
1 引 言
我们身处在一个三维世界之中,当我们通过双眼观察周围的景物时,不仅会接收到物体表面发出的颜色和光强信息,还可以获取物体的空间深度信息,帮助我们理解物体的大小、远近、位置关系。然而,传统的平面显示设备只能显示三维场景中某个侧面的二维投影图像,丢失了三维场景的深度信息,严重影响了人们对三维空间信息的获取、处理和表达。裸眼三维显示技术可以为观看者再现具有空间深度信息的立体图像,而且观看者无需佩戴任何助视设备。因此,裸眼3D 显示技术被认为是未来显示领域的重要发展方向[1-6]。光栅立体显示技术是目前运用较广泛的裸眼3D 显示技术之一,能够提供清晰的显示效果和立体感,受到了各国研究人员和企业的广泛关注[25]。
光栅立体显示器的基本原理是将多视点图进行合成编码,并加载到显示器上显示,通过柱透镜光栅的折射在空间中形成不同的视点显示区域,观察者左右眼处在不同视点区域内时,将看到具有立体效果的图像[7-9]。多视点采集为光栅立体显示器提供了显示内容,是光栅立体显示的关键一步。多视点采集的关键在于采集位置要匹配显示器视点分布,否则会出现错误显示。传统多视点采集方案包括真实采集[11]和虚拟采集两种[10],这两种方案均通过搭建均匀相机阵列对场景进行采集。经研究发现,由于柱透镜光栅存在畸变,光栅立体显示器构建的视点实际上呈不均匀分布,这种分布和传统的均匀采集方案发生冲突,显示器空间视点将会被填充错误的视差图像,导致视点图像偏移、透视关系错误等问题,影响最终观看质量。因此,本文提出一种针对裸眼3D 中多视点图像的校正方案,使采集视点匹配显示器视点分布,并填充正确视点图像,对提升光栅立体显示器观看效果是尤为必要的。
利用相邻视点生成对应位置的虚拟视点是校正的关键一步。基于深度信息的渲染(DIBR)[12-14]是目前比较主流的虚拟视点生成方法,该算法通过深度和RGB 图像、通过3D 扭曲(3D warping)生成虚拟视点,有着计算速度快、算法轻便等优势,但生成效果存在空洞、重叠和伪影问题[13],不适用于光栅立体显示的内容生成[10]。神经网络光场(NeRF)[15]使用神经网络表征针对场景的光线采样,以隐函数的方式计算新视图,NeRF 可以合成复杂场景的高质量虚拟视点,但存在网络复杂、渲染速度慢、训练时间长等问题,不适用于动态光栅立体显示器的视点合成。光流记录了时变或相邻视点图像中模式运动速度,包含了目标相对运动的信息[16-19],可以通过前后帧的光流经过后向扭曲(Backward warping)预测时序中间帧。光流法在保证计算速度的同时的渲染效果同样可观,被广泛的运用于视频插帧中[19-22],受光流插帧的启发,本文提出了一种基于光流预测的中间视点合成模块,该模块调用RAFT 光流预测网络[18]和一个融合校正网络组成,以有效的生成相邻视点间任意位置的高质量中间视点。
针对均匀采集的多视点图像与显示器视点分布不匹配的问题,本文在不改变显示器硬件配置的前提下,提出了一种视点筛选算法和中间视点生成网络,以生成正确位置拍摄的虚拟视点,使之匹配显示器视点分布:输入均匀采集的一组多视点图像阵列和显示器相关参数,利用视点筛选算法计算出正确空间视点位置分布,指导光流预测网络生成双向光流,并经融合校正网络进行光流校正,以提高中间光流生成质量,通过后向扭曲生成对应位置的虚拟视点图像,经合成编码后在光栅立体显示器上显示。实验表明,该校正方案有效地解决了传统采集和显示器视点不匹配的问题,校正后的视点为显示器视点填充了正确的视差图,提升了观看质量。
2 基本原理
2.1 光栅立体显示器和多视点图像采集
多视点图像采集为光栅立体显示器提供了显示内容,是光栅立体显示的关键一环,相机采集间距、采集距离等参数和光栅立体显示器硬件参数是否匹配直接决定了最后的观看质量[10]。传统多视点采集分为虚拟场景和真实场景采集两种,这两种方案都是通过搭建均匀相机阵列实现采集。在理想条件下,视差图经多视点编码后经过柱透镜光栅被均匀偏折在空间中,所以只要根据显示器参数设置好采集间隔进行均匀采集,采集视点图像位置和空间视点位置就会正确贴合,并填充正确的视点图。但实验分析证明,如图1(b)所示,因为柱透镜光栅存在畸变,均匀排布的物点在经过透镜后,像点呈中间密集两边稀疏的分布状态,进而导致最终空间视点分布并不是均匀的(图1(a)),而是和理想分布存在某种非线性映射关系。这就和理想状态下推算的均匀采集参数产生矛盾,某些角度的视点没有被填充正确的视差图,进而导致视点图像错位、透视关系不正确等问题,使观看者无法在视点位置上看到正确的视点图像,降低了观看效果。
图1 均匀采集和空间视点分布示意图。(a)光栅立体显示器的视点采集和显示;(b)真实透镜下的视点分布。Fig.1 Schematic diagram of uniform acquisition and spatial viewpoint distribution.(a)Viewpoint acquisition and display of auto stereo display;(b)View distribution under the real lenses.
因此,本文提出一种基于软件实现的多视点图像校正方案:针对均匀采集的多视点图像进行校正,利用视点间相关性预测出对应位置的多视点图像,使之能够正确匹配显示器视点分布,提高观看效果。
多视点采集校正方案如图2 所示。本文以812.8 mm(32 in)8K 分辨率的光栅立体显示器为例;首先基于传统的均匀采集方案采集待校正的多视点图像阵列,设均匀采集位置为,根据光栅立体显示器的特定光学参数基于Zemax 光学仿真软件计算出空间视点的实际分布(图2(b))。本方案设计了一种配套的视点筛选算法(算法细节将在2.3 节中详细介绍),本算法计算了相对于的插帧指导序列,以指导视点生成模块预测对应位置的多视点图像,其中,视点生成模块流程如图3 所示:首先基于RAFT 光流预测网络计算出相邻视点间的光流F,输入本文设计的融合校正网络进行光流校正优化,得到校正光流F’,结合上文的通过后向扭曲得到相应位置的虚拟视点V'n,组成针对位置采集的多视点阵列,校正工作完成。
图2 多视点采集校正原理。(a)多视点采集校正方案;(b)基于Zemax 的视点分布计算。Fig.2 Principle of multi-view acquisition and correction.(a)Multi-view acquisition and correction scheme;(b)Viewpoint distribution calculation based on Zemax.
图3 视点生成模块流程图Fig.3 Flow chart of the viewpoint generation module
2.2 基于光流法的虚拟视点生成网络
2.2.1 网络结构分析
给定两个相邻视点Vm、Vm+1和一个插值系数x∈(0,1),我们的目标是结合x预测水平方向上指定位置的中间视点V'n,一个可靠的中间视点预测网络是至关重要的一部分,为了做到这一点,该网络不仅要学会匹配Vm、Vm+1的相似像素点,还需学会解释匹配点之间的运动路径。受中间视频帧插值[21-22]研究进展的启发,我们提出基于光流法和后向扭曲操作生成中间虚拟视点。
相 邻 视 点 间 的 光 流Fm→m+1、Fm+1→m记 录 了像素点相对其他视点的位移矢量,假设我们已经确定了双向光流,在不考虑遮挡关系时,X=x处的中间视点可以表示为:
或者
其中,W(·)表示后向扭曲计算函数,它应用单映性变换和双线性插值来实现,并且是可微的。
为了得到光流Fm→m+1、Fm+1→m,我们采用了RAFT 光流预测网络[19]作为初始光流提取模块,该网络设计了特征匹配和独特的内容提取网络作为特征提取模块,并直接计算预测视图和原图间所有像素之间的矢量距离搭建代价聚合体(Cost Volumn),无需人工设定搜索范围,这大大提高了光流预测的精确性和鲁棒性,最后引入凸上采样(Convex Upsampling)的方法生成高分辨率光流,训练时通过一个循环单元迭代地更新一个流场,该方案在光流估计领域取得了显著的突破。
由于缺乏中间视点的监督,和遮挡关系的影响,单纯的使用RAFT 网络预测中间视点通常在接近x=0 和x=1 的位置上表现良好,在其他位置的预测效果得不到保障,且会在纹理突变的边缘区域产生伪影和残缺[19-20]。在Super SloMo 以及RIFE 等光流插帧网络[20-21]的启发下,我们提出了一种针对双向光流的融合校正网络来保证中间视点的预测质量,其网络结构如图4 所示。
图4 光流融合校正网络结构Fig.4 Optical-flow fusion-corrected network structure
首先利用RAFT 光流预测网络计算出Vm、Vm+1的双向光流,依次输入共享参数的融合校正网络。鉴于U-Net 网络在视点生成及优化上有很可观的表现[26],我们的融合网络由U-Net 改进而来:采用最新提出的ConvNext 模块[23]作为特征提取层,该模块在图像分割、特征提取等计算机视觉任务上表现出了强于Transformer 的计算能力,并保持了CNN 的计算速度;细节提取模块由不同大小卷积核的卷积层构成,主要负责在兼顾轮廓信息的同时提取细节特征,以解决光流在物体边缘预测不准确的问题;最后经反卷积和跳跃连接得到最终的输出的校正光流F'm→m+1、F'm+1→m。
2.2.2 训练
给定输入图像Vm、Vm+1,RAFT 光流预测网络的采用自监督训练方式,拍摄中间视点Vc为融合校正网络的监督。将RAFT 网络的输出Fm→m+1、Fm+1→m输 入 融 合 校 正 网 络,最 终 输 出是 校正光流,经过后向扭曲操 作后 得 到 预 测 中 间 视 点),我们最终的损失函数是种损失函数的线性组合:
loss=λflf+λili+λsls, (3)
其中:光流预测损失函数lf表征了来自RAFT 的光流F和校正光流F'的自监督损失,可以约束两个网络更加精准地求解双向光流:
lb=d(W(Vm+1,Fm→m+1),Vm)+
d(W(Vm,Fm+1→m),Vm+1) , (4)
l'b=d(W(Vm+1,Fm→m+1),Vm)+
d(W(Vm,Fm+1→m),Vm+1), (5)
lf=lb+l'b, (6)
其中,d(·,·)表示像素间的损失(Pixel-wised loss)。插值损失li表征了校正光流对中间视点的预测准确度:
最后,我们添加了一个平滑度损失项ls[24],以鼓励相邻的像素具有相似的流值,并加速网络收敛:
设置经验性权重λf=0.8、λi=0.4、λs=1,我们的网络的每个组成部分都是可微的,因此,我们的中间视点生成网络可以进行端到端训练。
2.3 多视点筛选算法
根据光栅立体显示器的实际视点分布,我们提出了一种多视点筛选算法,本算法的目的是求得均匀采集视点到显示器视点位置的映射关系,以指导虚拟视点生成模块生成位于的虚拟视点,并将映射关系量化为插帧指导序列{(i,m,x,其中:
m:m表示距离真实采集点最近且小于真实采集点序号的均匀视点序号,真实采集点将位于(m,m+1)之间,i和m的设置可以保证由最近的两个相邻视点生成,保证了生成质量;
i:i∈{-1,1},i表示采用的光流方向,当i=1时,取间正向光流,反 之 则 取反向光流
x:x表 示 插 值 系 数,x∈(0,1),它 指 导间的光流生成对应位置x=xn的中间虚拟视点。
首先利用光学仿真计算针对特定的光栅立体显示器的光学参数在最佳观看距离处仿真出显示器空间视点分布,设Vn的y坐标为yn、真实分布Rn的坐标为,均匀采集间隔为ΔT则有:
Δ=ynfmod ΔT, (9)
3 实验结果
3.1 基于光流法的虚拟视点生成测试
为了结合实际应用场景,验证本文提出的利用基于光流法的视点生成的有效性,我们分别选用了若干组真实、虚拟场景多视点图像作为对视点生成模块的测试集,选用两组分辨率为960×540、视差角为6°的视差图送入训练好的网络做插值预测,单视点平均生成时间为34 ms。
图5 分别展示了插值系数X为0.3、0.6 的针对真实、虚拟模型拍摄的中间视点预测以及对应光流图,针对虚拟场景预测的PSNR指标平均值在30 以上。图6 展示了本视点生成方案和NeRF[15]、DIBR[14]方案的对比效果。NeRF 生成视点的平均PSNR 为31.75,传统DIBR 生成视点的平均PSNR 为25.73,本方案生成质量明显优于传统的DIBR 视点生成方案,与NeRF 生成质量相当,但因传统NeRF 重建了整个场景信息,导致训练时间较长,对于现实单一场景需要8 h训练时间,相比光流法难以应用于动态场景重建。以上对比表示基于光流法的虚拟视点生成方案可以有效、快速地生成任意位置的高质量中间视点,可以用于多视点图片的校正工作。
图5 中间视点生成效果Fig.5 Mid-viewpoint generates effect
图6 不同视点生成方案的生成效果Fig.6 Generation effects of different viewpoints genera tion schemes
3.2 显示效果测试
将均匀采集后的多视点图像阵列编码后分别加载到本实验室的光栅立体显示器上显示,分别在显示器左右15°放置单反相机拍照记录,最终显示效果如图7 所示。图7(a)行的4 幅图片是实验的参考图片,分别表示针对模型的左右15°采集效果;图7(b)中图片展示了均匀采集的多视点图片未经校正的显示效果,由于采集视点和真实的空间视点分布不匹配,可以看出与参考图片有明显的角度偏差,产生了视点图片错位的现象;图7(c)展示了校正后的显示图像。为了更直观准确地表达校正效果,本文计算了显示图和参考图之间的差值图及PSNR。为了减小拍摄时杂光的影响,本文对显示图和参考图进行滤波去噪后再进行相关计算。其中,楼房场景下的修正前后的平均PSNR 分别为23.34、28.65,内脏场景下的平均PSNR 分别为25.64、30.21,校正后的显示效果优于校正前。将参考图片图7(a)与显示图像图7(b)、图7(c)分别做相减处理。为了更清晰地表示图像间轮廓间的区别,在相减处理后需进行二值化处理,得到图7(d)、(e)。通过图7(d)、图7(e)和PSNR 对比可以看出,传统采集方案的显示效果存在明显的视点图像偏移,而校正后的视点图像分布比校正前更加贴近显示器视点位置,视点错位现象得到优化。上述实验说明,针对光栅立体显示,本文的多视点校正方案可以有效解决传统采集和显示器视点不匹配的问题,校正后的视点为显示器视点填充了正确的视差图,提升了观看质量。
图7 显示效果对比图。(a)特定位置采集效果;(b)校正前特定角度显示图像;(c)校正后特定角度显示图像;(d)图6(a)和图6(b)间的差值图;(e)图6(a)和图6(c)间的差值图。Fig.7 Display effect comparison diagram. (a)Acquisition effect of specific location;(b)Display image at specific angle before correction;(c)Display image at specific angle after correction;(d)Difference between Fig. 6(a)and Fig. 6(b);(e)Difference between Fig. 6(a)and Fig.6(c).
4 结 论
在裸眼3D 显示系统中,由于柱透镜存在像差,使显示器空间视点呈不均匀分布,存在空间视点分布和采集视点分布不匹配的现象,导致视点图像错位,透视关系不正确等问题,最终影响观看效果。
本文针对上述问题提出了一种多视点校正方案,旨在将均匀采集的多视点图像校正为符合观看角度的新图像阵列,以提高光栅立体显示效果。该校正方案包括视点筛选算法和中间视点生成模块,通过光学仿真出真实空间视点分布,利用视点筛选算法指导光流法生成正确位置的中间视点阵列,使校正图像匹配真实的空间视点位置。经过实验验证,该方法有效校正了原本存在的空间视点分布和采集分布不匹配的问题,明显地提升了观看效果。