APP下载

一种多目立体视觉的三维激光扫描系统设计∗

2018-11-28王亚洲周建华边育心

计算机与数字工程 2018年11期
关键词:双目坐标系立体

徐 渊 王亚洲 周建华 边育心

(深圳大学信息工程学院 深圳 518060)

1 引言

三维扫描是近年来热门技术之一,由于它具备结构简单、精度较高等优点,已被广泛地应用在3D扫描、工业测量等领域。目前,三维点云的扫描有接触式与非接触式两大类,分别应用于不同的工业场景。

接触式扫描主要应用在三维坐标测量[1],其精度高,还原性强。但对应几何特征尺寸小,具有大面积自由曲面的零部件不能够测量,扫描时间长且价格昂贵[2~3]。非接触式扫描主要采用计算机视觉技术,使用双目或多目视觉系统进行扫描,其精度合适且结构简易,由于传统的双目立体视觉采用被动式技术测量,不能有效地解决图像中重复区域、低纹理区域、纹理相似区域等带来的误匹配问题,而结构光方法可以很好地解决误匹配问题,因此,三维扫描中以结构光为主的主动视觉技术占主导地位。

虽然结构光扫描技术日渐成熟,但对于面型较复杂的物体(含有四角的物体或曲面复杂的多面体)需要多次重复扫描,而采用单目或双目立体视觉的三维激光扫描系统,只能从一个角度获取物体表面的纵向点云信息,但对于面型复杂的曲面物体或部分区域被遮挡的物体,会存在扫描盲区,导致部分点云数据缺失,因此,需要调整物体扫描的方位进行重新扫描[4],大大增加了系统的扫描时间和数据处理时间。本文采用多目立体视觉的三维激光扫描系统,可以从不同视角对物体表面进行全方位横向扫描,有效地解决了线结构光系统对复杂曲面物体扫描所形成的盲区问题,提高了扫描效率,同时对线激光提取算法进行了优化,提高了系统的扫描精度。

2 扫描原理及系统构成

2.1 扫描原理

本文中的三维扫描系统,由多组立体视觉测量系统组成,每组立体视觉测量系统由双目相机及位于双目相机中间的线激光器组成。要同时完成不同视角下的物体表面扫描,且避免双目相机的视角过大,导致图像畸变偏大,即采用4组双目相机,每组双目相机的镜头视角为90°。每组双目立体视觉测量系统根据双目立体视觉原理[5~7],计算出物体表面的深度信息,建立统一的坐标系,来解决不同视角下数据对齐的问题,计算出各视角下的物体截面的空间三维坐标。由于四组双目立体视觉测量系统结构相互对称,计算的三维坐标数学模型类似,因此只需分析系统中某组双目立体视觉测量系统的数学模型,如图1所示。

图1 双目立体视觉三维测量模型

如图1所示,设被测物体P点的三维坐标为(xP,yP,zP),双目摄像机拍摄物体上的P点,分别在左摄像头和右摄像头上投影的图像坐标为PL(xl,yl)与PR(xr,yr),由三角相似关系得以下关系式:

通过视差D(xl-xr),计算出P点的三维坐标:

2.2 扫描系统的构成

由上面介绍的扫描原理及数学模型分析,扫描的硬件装置主要由四组双目摄像头、位于四组双目摄像头中间的线激光器、升降台及图像采集器及ZYNQ处理平台组成,如图2所示。

图2 三维扫描装置结构示意图

如图2所示,两个分辨率为640*480的COMS摄像头对称放置于模具中,然后在中间安放线激光器,通过图像采集器同步采集双目图像,将图像数据送到USB接口上,交由后级的ZYNQ进行数据处理。系统中有四路线激光双目模组,通过线激光器扫描物体,由后级的ZYNQ处理系统进行数据采集、处理三维点云的生成。

3 三维扫描的具体实现

本系统获取点云数据的方法是通过控制升降台,将四个方向上的线激光器光束直射在物体表面形成环状光带,由4组位于激光器两侧的双目摄像头完成光带图像的采集、光带中心的提取、图像匹配、双目深度计算、世界坐标系转换及三维点云数据融合,对扫描物体层层扫描,最终输出三维点云数据,基于ZYNQ的点云数据处理流程如图3所示。

3.1 双目光带中心提取

线激光扫描测量法因其具有测量速度快、测量精度高的优点[8],被广泛用于工业测量、3D扫描仪等领域。线激光在COMS摄像机上成像后,对线激光的光带中心进行提取,本系统采用梯度质心法进行光带中心的提取,首先是计算光带图像的每一行的梯度,然后经过梯度比较得到光带中心区域的初步位置;接着计算此位置区域的质心,最后通过邻域筛选原则来提取中心点位置。该方法可以将计算的时间复杂度大大的降低,并能有效地消除干扰点。

图3 基于ZYNQ的点云数据处理流程

待定质心坐标

光带中心提取步骤:

1)由于光带图像每一行可能存在多个光斑,利用待定质心坐标公式得到质心坐标(xtn,ytn),其中n为像素的列数;

2)利用式(3)中所求的质心坐标进行比较,找到前一行最接近的质心坐标作为最终结果。

公式中MINxt函数是实现在多个质心坐标比较得到与前一行质心坐标最相似的坐标值。质心的筛选流程,如图4所示。

图4 邻域筛选原则

图5 含激光散斑光带及提取后的光带图像

经过双目光带中心提取后,效果如图5所示,可看出光带明显变少,这也意味着对阈值变化没有影响。由此可以消除激光线周围的干扰光斑,并使其对光带质心提取的影响大大减小。

3.2 双目图像匹配及双目深度计算

由上面获取到双目光带中心图像后,对双目光带中心点进行图像匹配,由于本系统双目相机极线水平,只需在左目图像的光带中心的任意一点找到相对应的右目图像中同一行的光带中心点,即为此处的图像匹配点,使整个双目图像匹配变得较容易,利用视差原理计算出双目摄像头与被测物体的深度距离Z,以实现二维空间到三维空间的转换[9~10],如图6所示。

图6 双目立体测距原理

假设两个完全相同的摄像机平行放置,它们的视点分别为OR和OT,空间中任意一点P在两个视平面中的像素点分别是P(xR,yR),P′(xT,yT),再加上基线长度B和镜头焦距f,就可以通过式(4)计算出场景深度 Z[11~12]。

3.3 多组双目相机联合标定

首先对双目相机进行标定,当两个摄像机的像平面是完全行对准时,计算视差是最简单的。然而在现实情况中,两个摄像机既要做到共面又要做到行对准是十分艰难的,此时需要通过对图像实施一些算法来尽可能的达到这种对准效果,这样两个摄像头的光轴是平行的。本文主要采用张正友标定[13]的方法对双目相机进行标定。

由于机械结构的原因,多组双目相机之间也会存在水平对齐及旋转的问题,因此需要对多组双目相机进行联合标定,提高测量的精度。

将双目相机中的左摄像头与相邻的双目相机中的左摄像头组成一对双目相机,且每对组成的双目相机,同样通过张正友标定的方法,可以得到平移矩阵和旋转矩阵,将其坐标系转换到其他坐标系下的三维坐标中,进而实现坐标系的统一,实际上将独立的双目相机坐标系,转换为全局坐标系中,这其中运用了三维拼接技术。由于这种拼接技术误差较大,通常为了减少此误差,需在测量区摆放一些标志,以固定的标志点进行拼接,而这些标志点需要三个以上才能满足要求。使用四元组法[14]来实现三维对应点集之间的坐标系转换关系。

3.4 统一坐标转换

为了获取完整的三维点云数据,通过上面多模组双目相机的联合标定,将不同视角的点云数据建立到同一坐标系下。图7是整套系统从俯视角度,升降台的中心为坐标系原点O。线激光双目模组定义为No.1,No.2,No.3,No.4。可认为No.1和No.2作为第一象限的分界限,依此类推可以得到四组象限坐标系(世界坐标系中的Y轴表示物体被扫的高度,由升降台来决定)。

图7 系统的世界坐标系

四路双目相机到平台中心点距离分别为L1、L2、L3、L4(分别可以测量得到);在四路双目相机图像中,被测物体光带中心的像素点横坐标分别为U1、U2、U3、U4;被测物体像素点横坐标分别为X1、X2、X3、X4;为此将分别来自于四个方向的扫描截面点云信息,映射到世界坐标系上。

3.5 三维点云融合

不同视角下的点云融合会产生分层和重叠现象,并且其幅度大小各不相同,这种情况下会产生数据冗余,这会导致其后的三维重构模型有歧义。其目的是解决上面的问题,使后期的点云模型更为光滑[15]。

三维点云融合的基本原理是给定两个点集P和点集Q,先计算点集P中每一个点到Q点集的最小距离,此距离使用的是欧式距离。而当该距离小于某一固定的阈值时,可认为该点为重叠点对,并依此进行数据迭代,得到相应点集的点对关系。然后根据点云融合的法向特征,在重叠点集中找到相应的配准点。最后对配准点进行插值运算得到最终的融合点。

在本系统中,所有数据都是在同一时刻进行采集,因此得到的物体的点云数据不存在相互干扰,并且独立分层,不会出现对空间点的数据融合。所有的点云数据分布在二维平面,并对二维的点云数据进行融合。本文中,对重叠区域进行加权融合,将得到的重叠点进行判定,判定的依据为该点距离哪个点集更近。利用该方法可以得到距离的权重因子,根据权重因子进行梯度划分,最终可以得到点云数据具有平滑过渡的效果。

4 实现结果与分析

通过线激光扫描来获取物体一个层面的点云数据,控制升降平台将扫描物体上移一个层面(这里层面之间距离为0.5mm),来获取此层面的点云数据,重复扫描步骤,当整个物体每个层面都被“扫描”过后,扫描结束。

4.1 系统扫描结果

系统对塑料杯进行了扫描,异构平台进行实时处理后,通过以太网将三维点云数据传输到计算机上,将点云数据导入到meshlab中后进行显示,如图8(b)所示。

图8 塑料杯扫描工件

4.2 系统扫描精度

深度数据准确性在三维重构中是比较重要的一点,实验表面光滑的方形纸壳为被测物,对系统的双目视觉模组的深度测量精度进行分析。

表1 实际数据与双目视觉模组测量结果对比

表1测得的深度数据与实际数据进行对比,系统的精度能够到达实际深度数据的1%以下,即在近距离测量的条件下,双目激光测距误差率基本能满足工业上对扫描物件的精度要求。

对塑料杯进行三维扫描,从开始采集图像到点云数据的输出,总费时30s;用市面上的台式3D扫描仪扫描塑料杯,从获取到点云输出总费时约3min;文献[16]中扫描相同体积的物体需费时约300s。采用多目立体视觉三维激光扫描系统可以大大提高获取点云数据的速度。

5 结语

针对目前三维点云扫描速度过慢现象,本文提出了一套多目立体视觉的扫描系统,它采用双目加线激光结构,优化了线激光的提取算法,对物体表面进行层次扫描使得系统性得到大大的提升,尤其在扫描速度上。本系统结构简单、精度合适、扫描速度快,今后可被应用在工件扫描、文物扫描、大场景扫描等场合,具有良好的应用前景。

猜你喜欢

双目坐标系立体
采用双目视觉和自适应Kalman滤波的作物行识别与跟踪
霜 降 苏美玲
基于双目视觉的机器人定位与导航算法
独立坐标系椭球变换与坐标换算
机械手的双目视觉定位抓取研究
立体登陆
坐标系背后的故事
三角函数的坐标系模型
求坐标系内三角形的面积
Pop—Up Books立体书来了