论文部分内容阅读
自2010年电影《阿凡达》上映以来,三维显示技术越来越被人们所熟知和欢迎。然而就目前技术来说,直接拍摄立体电影制作复杂、周期长、成本高,其立体电影的数量远远无法满足人们对立体内容日益增长的需求,因此,为了实现三维显示,人们又做了各种尝试。本文基于深度线索的三维显示正是其中的一种。该方法利用计算机图形学和图像处理领域的相关知识,从传统2D视频中提取出深度线索,然后利用该深度线索实现原2D视频的三维显示。本文以实现2D视频的三维显示为目标,深入研究了 2D视频三维显示过程中的关键技术,包括基于深度线索的深度图生成、虚拟视点的生成、空洞的修复以及最终三维显示的实现等。首先,合成基于几何透视深度线索和Grab cut图像分割的深度图。深度线索主要是利用几何透视深度线索。几何透视深度线索具有良好的渐变性和纵深感,更符合人眼观看实际场景的习惯。但几何透视深度线索也有其固有的弊端,所以本文又采用Grub cut图像分割算法抠出前景,对前景进行专门处理。在生成基于几何透视深度线索的深度图过程中,首先利用Sobel算子检测边缘、概率霍夫边缘检测直线、再根据直线和点的特征找出消失点、消失线和水平线。然后利用消失线和水平线划分的区域为原2D图中的每一个点赋深度值。对于前景深度图,先是利用Grab cut图像分割算法抠出前景,再利用前景的坐标值在基于几何透视深度线索的深度图的深度值为整个前景赋深度值,得到前景深度图。最后将基于几何透视线索的深度图和前景深度图合成最终的深度图。其次,利用基于深度的虚拟视点绘制技术(DIBR)生成虚拟视点,本文首先对DIBR算法进行介绍,然后利用了其中的一种改进的算法,即像素偏移法,直接根据深度图的深度值乘以系数作为偏移量,然后由原图中对应点的像素值加上或者减去该偏移量的倍数就可以得到相应的虚拟视点。然后,就要对虚拟视点进行必要的空洞修复,本文采用的是对Criminisi改进的LUO空洞修复算法。为了提高效率,本文采用一种倒推法,即首先根据光栅的排布算出在当前点中要显示的是哪一个虚拟视点的像素值,然后在该点就只生成要显示的虚拟视点,其他虚拟视点就不再生成,很有效地提高了效率。可以实现原2D视频的实时三维显示。最后,作为三维显示的一个很有意义的应用,是超多密集视点的裸眼显示系统,即在虚拟视点合成的基础上,增加了虚拟视点追踪的技术。首先追踪到观看者所在的位置,根据其位置计算出观看者在当前坐标系中的坐标,根据该坐标计算出要显示的一组虚拟视点,然后将虚拟视点合成,根据观看者的位置,实时显示三维场景。实现的效果是,在观看区域的每一个位置,观看者观看到的三维场景都不完全相同,使观看者更具身临其境感。