基于结构光和自动转台的桌面式3D点云扫描仪

2020-10-30 08:23杜晓峰林晨晖刘成良
实验室研究与探索 2020年9期
关键词:开源标定物体

杜晓峰, 朱 凯, 林晨晖, 贡 亮, 刘成良

(上海交通大学机械与动力工程学院,上海200240)

0 引 言

光学三维扫描技术作为一种高精度、高效率的非接触式测量方法,在逆向工程、工业自动化、文物修复等诸多领域得到了广泛的应用。植物表型参数的分析对植物各个领域的研究具有重要意义。为了获取植物的三维信息,分析植物的表型参数,本文设计了一种基于结构光三维测量技术的点云生成与拼接仪器。

目前市场上有很多基于结构光的三维扫描设备。通常情况下,投影仪将结构光投射到被测物体上,同时相机采集图像,并计算被测物体的三维点云信息[1]。对于一个三维测量对象,无法从单一方向的扫描中得到其所有的表面信息,因此需要收集被测物体不同角度的点云信息,以便拼接成完整的三维点云[2-4]。

数字光处理(DLP)技术因其出色的性能而在光学工程中得到广泛使用。扫描装置的核心组件是德州仪器DLP4500 评估模块。TI 公司提供了一种基于DLP4500 的精确点云生成方法,并提供了开源的软件开发工具包。但是,它只能用于收集物体单方向的点云信息,无法满足复杂零件整体三维重构的需求。

本文解决方案中,物体所有的表面信息都将被收集,并将它们拼接成一个整体[5-8]。由于所有数据和代码都是免费提供和开源的,因此可以对该仪器进行改造以满足个性化需求。其灵活的机械结构,可以轻松满足不同尺寸物体的扫描。作为一种非接触式测量方法,被测对象的表面点云将被快速收集和拼接,并且没有其他测量方法的限制。

1 系统方案

图1、2 显示了仪器的外观。仪器主要由DLP4500评估模块,USB 摄像头,USB 集线器,MCU,步进电动机转台,步进电动机驱动器,24 V 直流电源,安装板,支撑夹,直线导轨和铝型材框架组成。

图1 仪器三维模型

图2 仪器外观

仪器功能如下:序号01,单面点云扫描;序号02,多面点云扫描;序号03,点云拼接。图3 显示了仪器的总体结构。

1.1 材 料

表1、2 列出了该仪器的物料清单(BOM),分别是标准零件和定制零件。仪器所用到的标准零件便于采购,易于组装。定制零件的安装板在CNC 铣床中用5 mm厚的铝合金板制成,它们用于固定仪器的各部分。电路组件还需要诸如排插、USB 线等组件。系统软件的一部分基于TI 公司的开源代码;另一部分基于OpenCV和PCL开源库[9]。

图3 仪器拓扑结构

表1 仪器标准件

1.2 机械结构的装配方法

图4、5 显示了仪器机械结构的装配细节,分别为三维扫描模块部分和导轨转台部分。

图4 扫描系统装配细节

图5 导轨转台装配细节

(1)三维扫描模块的装配方法。①使用定制长度的铝型材搭建整体机架,②将DLP4500 模块安装在定制的铝板零件上。③将铝板安装在铝型材框架上。④将相机夹持装置安装在铝板上。整个模块的安装示意图见图4,两个槽用来调节相机位置,同时夹持装置可以调节相机高度。通过相机位置的调节可以使扫描系统适应不同尺寸物体的扫描需求。

(2)旋转模块的装配方法。旋转平台系统由减速比为90 的蜗轮蜗杆旋转平台、直线导轨、89C52 单片机、步进电动机驱动器、24 V 开关电源组成。旋转平台用于将物体旋转至不同姿态,采集不同角度的点云。旋转平台可在直线导轨上移动,以适应不同大小的物体。具体安装步骤:①将直线导轨安装在铝型材框架的相应位置上;②转台通过螺栓固定在滑块上;③电源、微控制器也安装在对应的位置上。

1.3 电路结构

图6 展示了仪器的电路连接。这一部分由插座、24 V直流电源、USB 集线器,以及前述的结构光扫描系统和旋转平台系统的电路部分连接在一起组成。

图6 仪器的电路连接

1.4 软件组成

该系统软件由五部分组成:①点云扫描软件(见图7);②点云格式批量转换脚本;③MeshLab 开源软件;④点云拼接软件(见图8);⑤转台旋转控制程序。

图7 点云扫描软件界面

图8 点云拼接软件

所有代码已经开源,在GitHub搜索仓库名:Point_Cloud_Generation_And_Stitching。

1.5 操作说明

三维点云生成与拼接的具体操作步骤如图9所示。

图9 仪器具体操作步骤

2 转台标定方法

对物体不同方向的点云进行拼接时,需要对各点云进行三维坐标变换。由于物体绕转台转轴旋转,因此需要对转台进行标定。

2.1 现有方法

通常,转台标定方法包括基于标记的方法和免工具方法[10-11]。帕克等将棋盘固定在转盘上,然后计算不同视图中角点的3D 坐标。最后,通过求解超定线性方程来近似求解转轴[12]。菲利普·萨德罗使用彩色棋盘在每次扫描中计算摄像机的外部参数[13]。虚拟摄像机位置拟合的圆的旋转轴被视为转盘的轴。这些方法的误差主要来自扫描系统校准误差和角点检测误差,标定精度有限,而且方法复杂,对器材要求也高,采集的数据量较少,不能很好地确定转轴位置;另一种方法是采用平板标定,这种方法不是用特征点来实现标定的(见图10)。其原理如下:将平面放在与平台上并且保证与平台垂直。得到平面的点云数据后,采用最小二乘法拟合得到平面方程,这样该平面的法向量就和转轴垂直,求取多个法向量的叉积再求平均值就可以得到转轴的方程。这种标定方法虽然简便,但是过多地依赖于平板的制作精度。

图10 平板标定

2.2 一种简便的标定方法

本文提出在使用转台的方法进行点云拼接时,首先要标定转台。将物体安装在转盘上,在每个扫描步骤中旋转相同角度的转盘,获得一系列的点云。假设旋转角度为θ,生成点云的坐标系(通常与相机坐标系重合)为S。转盘坐标系记为R1,旋转轴与R1的z 轴重合。转盘旋转角度后,转盘坐标系记为R2。

假设点P1是旋转之前物体的点,P2是旋转之后物体的点。然后可以得到S中P1和P2的坐标:

由于P1和P2是物体上的同一个点,因此可以得到R1P1=R2P2。由式(1)和(3),可以得到:

这意味着可以通过齐次变换矩阵将点云1 中的点P1与点云2 中的P2对齐,

转盘校准的目的是拼接一系列扫描得到的点云,意味着需要解式(5)中用一对已知的矩阵T来计算转换矩式(5)可以变换成AX =XB的形式,对于这种形式的矩阵方程,在机器人手眼校准领域中已经有了较好的解决方案[14]。由可以由θ计算得到,所以转台旋转角为θ时,标定问题也就转换为了获取矩阵T的问题(见图11)。

图11 扫描系统坐标系图解

使用矩形平面作为校准工具,它没有几何精度要求。唯一的要求是在物体上至少有4 个可识别的特征点,以便可以通过对齐旋转前后的点云来获得变换矩阵T。具体步骤如下:①将工具放在转盘上,采集一次点云记为S1。将转盘旋转θ角,再次采集点云记为S2。②通过特征点对齐点云S1和S2,接着使用迭代最近点(ICP)算法精确拼接点云。然后,计算变换矩阵T。③解公(6)得到旋转矩后得到其次变换矩

上述第2 步使用到MeshLab 的手动拼接功能和ICP算法,如图12 所示。选择好4 个特征点以后,MeshLab会自动计算变换矩阵,如果需要避免选择特征点时的误差可以使用MeshLab自带的ICP算法得到比较精确的变换矩阵:

图12 获取变换矩阵T

重复上述步骤几次,通过多次获取矩阵并求取均值,可以进一步减小变换矩阵T的误差。

3 结果和误差分析

3.1 结 果

旋转平台直径60 mm,台面偏心小于5 μm,最大旋转速度50°/s,重复定位精度0.005°,绝对定位精度0.01°。

点云的测量和拼接精度较高,误差在0.2 mm 以内。单次扫描时间45 s,整圈扫描时间在8 min 以内,整个系统能够有效、快速的测量物体的三维点云数据并进行拼接(见图13)。

图13 点云扫描过程和拼接结果

3.2 误差分析

系统的误差由两部分组成,分别是扫描误差和拼接误差:①扫描误差来源于摄像头、投影仪的标定误差,在扫描软件中定义了两者标定结果的损失函数,标定结果接近0 为好。为了得到最好的扫描结果,通常需要相机分辨率满足奈奎斯特采样定律。在同等条件下,通常相机分辨率越高,得到的3D 点云图片精度越好。另外,扫描时应该避开50 Hz 闪烁的室内灯光。②拼接误差取决于变换矩阵T 的误差,可以通过多次获取T并求取平均值来避免误差。

4 结 语

本文基于TI的DLP4500 评估模块,开发了基于结构光和自动转台的桌面式3D 点云扫描仪。它可以实现三维物体的点云生成、拼接,并且可以根据需要通过更改配置文件来改变点云的密度与个数。仪器通过USB集线器与电脑实时通信。整个方案使用了转台标定方法用于点云拼接,能够快速、稳定、准确的完成不同视角点云的拼接,对标定器材要求低,有效降低了成本。该方案可以实现对不同大小的物体测量,与专用仪器相比,制作简单,全部开源,更适合研发人员二次开发。适用于实验室的相关研究。

猜你喜欢
开源标定物体
使用朗仁H6 Pro标定北汽绅宝转向角传感器
深刻理解物体的平衡
五毛钱能买多少头牛
2019开源杰出贡献奖
CT系统参数标定及成像—2
CT系统参数标定及成像—2
我们是怎样看到物体的
基于匀速率26位置法的iIMU-FSAS光纤陀螺仪标定
基于MATLAB 的CT 系统参数标定及成像研究
大家说:开源、人工智能及创新