因此,人们提出了2D转3D的概念,将2D影视资源转换为3D资源。由于影视作品绝大多数是2D的,资源量非常丰富,所以,如果能够很好地将2D资源转换为3D资源,将迅速丰富3D资源的数量,提升人们的视觉体验,推动3D产业的发展。
同时,2D图像中所隐藏的物体的深度信息也为这种转换提供了可能,有了物体的深度信息,再结合原2D图像,就可以生成3D图像。
在此背景下,本文基于图像,试图寻求一种较好的2D-3D图像转换的方法,并为2D-3D视频转换提供一定的基础。
1.2 2D-3D图像转换的一般方法
2D-3D图像转换的一般方法是基于深度图进行3D合成。
图像中的每一个物体都具有各自的深度,深度表征了该物体距离摄像机的远近,与摄像机距离不同的物体深度不同。深度图是尺寸与原图像一致的灰度图,它的每个像素值的范围为[0,255],代表了原图像中对应像素的深度。深度值为0表示该像素对应的物体距离摄像机最远,深度值为255表示该像素对应的物体距离摄像机最近。每一个像素的深度值 可以由公式(1-1)求得[7]。
其中 为该像素对应的物体与摄像机的距离, 表示图像中的物体与摄像机的最远距离, 表示图像中的物体与摄像机的最近距离。
灰度图举例如图1.1所示:
图1.1 灰度图举例
当人们观察一幅2D图片时,由于经验因素和心理因素的作用,人们往往能够正确判断出图像中物体之间的相互位置关系。由此我们能够得出结论,2D图像中隐含着一定的深度信息,如果能够提取出这些深度信息,便能够判断物体的相对位置,从而得到原图像的深度图,结合深度图和原图像,我们就能够合成出对应的3D图像。
基于深度图的3D合成,其步骤主要为:对原始图像进行分析、提取出相应的深度信息、生成深度图、合成出新视图、生成3D图像五个步骤,如图1.2所示。
图1.2 基于深度图的3D合成主要步骤
如上图所示,基于深度图生成3D图像时,首先我们要对原图像进行分析,根据图像中包含的色度信息、亮度信息、边缘信息等,我们可以分离出图像的前景部分与背景部分;其次,对每个部分中的不同对象分别提取深度信息,分辨出他们与摄像机距离的远近,并为它们分配不同的深度值;然后,根据前面得出的深度信息生成相应的深度图;然后,由得到的深度图,结合原图像,生成新的视图;最后,将新视图与原图像相结合生成目标3D图像。论文网
一般而言,我们将原图像作为右视图,生成的新视图作为左视图。因为新视图是由深度图和原图像合成的,所以新视图与原图像之间存在视差,结合后的3D图像就能给人以立体感。
1.3 本文的主要工作
由于2D-3D图像转换的关键在于深度图的生成,深度图的好坏直接决定了生成的立体图像的视觉效果。于是本文首先介绍了2D-3D图像转换的研究背景,接着研究了人眼立体视觉和3D显示的基本原理,然后重点研究了深度图的生成方法,并选择了一种效果较好的方法——利用聚焦信息生成深度图,深入研究了一种基于高阶统计量的算法。然后,根据算法编写了相应的C++程序,实现了聚焦区域的提取、深度图的融合以及最终3D图像的生成。最后,对图像进行了测试,分析了转换结果并得出了相应结论。
2 2D-3D图像转换的基本原理
2.1 立体视觉的基本原理