APP下载

基于TOF的快速加权中值滤波深度成像系统

2019-10-16陈旭凤李玉龙侯志奇温彬彬胡雪花黄文静

科技风 2019年26期

陈旭凤 李玉龙 侯志奇 温彬彬 胡雪花 黄文静

摘 要:本文介绍了一种基于飞行时间(TOF)的快速加权中值滤波深度成像系统。本系统结合了高分辨率(HR)三视图立体RGB相机(1280×960)和低分辨率(LR)TOF景深相机(176×144)。首先进行相机标定,以获得彩色和深度相机的内在和外在参数。由于同一场景下深度图像的分辨率远小于相应的彩色图像,因此采用快速加权中值滤波(WMF)对低分辨率深度图像进行深度上采样。最后,利用基于深度图像的绘制(DIBR)技术,通过上采样深度图像和HR彩色图像结合生成场景的立体三维(S3D)图像。实验结果表明,与不同的滤波方法相比,本文提出的深度成像系统能生成高质量的深度图,并能高速生成S3D图像。

关键词:摄像机标定;深度图像;加权中值滤波;立体成像

深度感知是计算机视觉的基本挑战之一。在三维技术研究中,一个好的场景深度图质量是至关重要的。由于各领域对高质量、合理分辨率的深度图的要求,研究者们提出了多种提高深度图质量的算法,并逐渐将不同深度的传感器组合起来,以产生一个获取深度图的成像系统。到目前为止,许多研究人员已经开发了不同类型的深度成像系统。为了达到使传感器更稳定、准确、实时的目的,系统设置趋向于相机组合。目前组合方式以立体相机与深度相机融合为主。

受前人工作的启发,本文设计实现了一种基于飞行时间(TOF)相机和快速加权中值滤波的深度成像系统。该系统将彩色和深度相机结合起来实现高质量的深度成像:采用一个最大分辨率为1280×960像素的三视图无源传感器相机和一个分辨率为176×144像素的有源TOF深度传感器(Mesa SwissRanger SR4000),利用基于WMF的深度上采样和DIBR来获得HR深度图像并生成S3D图像。

本文提出的深度成像方法概述如下:首先进行相机校准,以结合不同的分辨率传感器,通过摄像机标定,得到LR深度图像;其次利用双三次插值上采样对其进行调整,由于插值处理后的深度图像中存在一些不必要的噪声和黑色区域,因此基于快速WMF进行了深度优化,在增强边界的同时降低噪声;最后,使用DIBR结合彩色图像及其对应的深度图像生成S3D图像。本系统方法流程如下图所示。

1 相机标定

1.1 相机坐标系校准

相机标定目标是将TOF相机捕获的深度图映射到立体相机捕获的一幅彩色图像上,得到相应的立体加深度图像组。本文从ToF相机的三维坐标出发,去寻找它在RGB相机图像中的对应二维坐标。列出TOF相机的针孔相机模型矩阵,利用深度图像提供的各点到TOF相机的距离,可以将比例因子s分解为该深度值,计算出三维坐标X、Y、Z,再将XYZ的值投影到RGB相机的坐标系中,获取到X'、Y'、Z'即为RGB相机的三维坐标。重新计算s尺度因子,在Z'不为零的情况下,RGB彩色图像的坐标可以通过计算得到。这使得我们可以将深度图像中的任意像素投影到RGB图像上的正确坐标。在这项工作中,我们使用L支架来固定每个相机的垂直位移和TOF相机的水平位移,这使得我们可以灵活地选择基准传感器。

1.2 相机参数校准

本文利用自制的一个棋盘平面,以20组合理的姿态拍摄所得图像作为数据集。为了减少TOF相机拍摄的低光亮度图像引起的计算误差,本文在立体标定前进行了直方图均衡化。然后利用Matlab校准工具箱,通过单次校准和立体校准计算校准参数如下:(1)坐标系的校准步骤为我们提供了每个相机的内部参数:焦距fc,投影中心点坐标cc,斜角αc,畸变系数kc。这些校准让我们排除了透镜畸变对采集图像的影响(使用OpenCV undistort算法)。(2)立体标定步骤为我们提供了外部相机参数:旋转矢量R,平移矢量t,选取TOF相机的位置作为原始坐标系,这些参数反映了TOF相机向右相机的旋转和平移。

2 深度上采样

在相机标定后,得到了一个经过校正的深度图D。但是,D是一个低分辨率图像,在物体边界上有不需要的黑色区域,即孔洞,因此有必要对d进行上采样和优化。为了提高光滑区域的质量,保持物体边界附近的细节,本文使用的深度上采样主要包括以下三个步骤:

(1)双三次插值:为了保证快速深度成像的要求,本文使用双三次插值将D的大小调整到与彩色图像相同的大小。然而,在物体边界附近存在一些意想不到的噪声和大量不需要的孔洞。

(2)裁剪:为了去除相机镜头畸变造成的黑色周边,本文根据深度图将深度图像和RGB图像裁剪成合理的尺寸。

(3)快速WMF:由于裁剪后深度图像中仍然存在不必要的噪声,本文利用快速的WMF来保持对象边界,减少运行时间。此外,利用深度图像及其对应的颜色图像,快速的WMF方法可以降低噪声、保持图像细节,生成高质量的HR深度图Dref。

3 3D立体成像

该系统采用DIBR方法生成三维图像。由于获得了深度图像及其对应的彩色图像,因此,通过将单幅图像的像素投影到适当的三维位置,并将其重新投影到虚拟图像平面上,从而可以呈现出任何邻近像素的虚拟视图,采用紅蓝眼镜观察图像可以感受到立体视觉效果。设Cc为原始参考图像的视点,Cl和Cr分别是要呈现的虚拟左眼视图和右眼视图的视点。tx是两个虚拟摄像机之间的距离。在此相机配置下,在(xl,y),(xc,y),(xr,y)三个相机的像平面上投影一个世界坐标系深度为Z的点P:

其中f为焦距,tx为两个虚拟相机之间的距离。利用三维图像的翘曲DIBR技术,由初始的一个图像及其深度图即可以生成该场景虚拟的左眼和右眼视图。

4 实验结果分析

为了验证该系统的性能,本文在Windows 7环境的Intel(R)Core(TM)2双核CPU(2.66GHZ)和2.00GB RAM的PC机上进行了实验,使用Matlab标定工具箱对摄像机标定,使用Visual Studio 2010和OpenCV作为立体成像系统的运行环境,该交互系统利用了立体摄像机和TOF摄像机的API函数。