-
为了验证文中算法的有效性,搭建了一套双目结构光系统,该系统由两部相机以及一台DLP投影仪组成。相机选用的大恒工业相机,型号为MER-503-20 GC-P,其分辨率为2448 ×2048。投影仪选型为闻亭泰科的PRO4500-RGB-700,其分辨率为912 ×1140。在该系统中,左右相机之间的距离为400 mm,相机到物体距离为750 mm。文中实验在Windows 10操作系统下进行,处理器为Inter(R) Core(TM)i7-10700 F CPU @ 2.90 GHz 2.90 GHz,内存为16 GB,代码运行平台为Microsoft Visual Studio 2017。
文中实验对象为FSW逆变器,图5所示为该零件的前视图与后视图。零件表面结构复杂,轮廓变化剧烈,有许多凸起与凹陷区域,顶部存在多处阶梯状的起伏,属于复杂机械零件中的一种。
实验过程中向零件表面分别投射频率为70、64和59的条纹图案,每种条纹图案投射4幅,总计投射12幅条纹图案。采集经零件表面调制的条纹图像后,使用相移法对图像进行分析,以获得包裹相位图;之后采用多频外差方法对频率为70的包裹相位图进行相位展开,得到绝对相位图。最后根据实验目的,采用不同的相位校正方法或相位匹配方法。
-
本节实验向重建物体表面投射光栅条纹图案,采集图像后恢复其表面的相位分布,并设计不同实验说明逐区域相位校正方法的可行性。首先,通过改变所选区域大小来验证区域大小对逐区域相位校正方法的影响;之后为证明逐区域相位校正方法的有效性,分别采用不同的相位校正方法对相位曲线进行校正。
-
逐区域相位校正方法将绝对相位曲线分为若干等长的小区域,并根据区域内各点相位值与区域内相位值的中位数的差值来剔除远离相位曲线的噪声点。其中,区域大小的选择对该方法的结果有着极大影响。为说明区域大小对逐区域相位校正方法结果的影响,本小节将区域大小分别设为20、50、100、150以及200,并根据公式(22)设置阈值,结果见图5。
式中:
$ arealen $ 为设置的区域大小。由图6可知,区域大小设为100时能够去除所有的噪声点且不会造成相位信息的丢失。图6 (a)为原始的相位分布,图6 (b)~图6 (f)分别为所选区域大小20、50、100、150以及200得到的相位分布。图6 (a)中,初始的相位分布存在些许远离相位分布的噪声点,并且这些噪声点在图像上相距不远。当选择较小区域时,可能会使得某一个噪声点的相位值成为该区域内的中位数,导致无法完全去除噪声点,见图6 (b)。区域较小时,可能导致曲线跃变区域两段曲线的占比严重失衡,即区域内大部分由一段曲线占据,另一段曲线只占据小部分。这会导致占据小部分区域的曲线被判定为噪声点,造成相位信息的丢失,如图6 (b)及图6 (c)中的放大部分所示。当选择较大区域时,根据公式(22)设定的阈值过大,导致无法完全去除噪声点,如图6 (e)和图6 (f)所示。当区域大小为100时,能够完全去除离群的噪声点,且在曲线的交界处不会造成相位信息丢失,见图6 (d)。因此在后续应用逐区域相位校正方法时,区域大小均设置为100。
-
为说明逐区域相位校正方法的效果,将文中方法与中值滤波以及全频解相法[13]进行实验对比,结果如图7所示。其中图7 (a)为原始的相位分布,存在着如图中红圈标出的远离相位曲线的噪声点以及由红色虚线圈标出的跳跃性误差;图7 (b)为使用中值滤波方法;图7 (c)为使用全频解相方法;图7 (d)为使用文中提出的逐区域相位校正方法。通过对比可得,中值滤波方法能够去除跳跃性误差以及少部分的噪声点,但会引入新的噪声点,如图7 (b)中用黄圈标出部分所示;全频解相方法能够去除跳跃性误差,但无法去除远离曲线的噪声点;文中方法首先根据公式(9)去除跳跃性误差,之后使用逐区域相位校正方法对远离相位曲线的噪声点进行剔除。经实验表明,文中方法能够将跳跃性误差与远离相位曲线的噪声点完全去除,如图7 (d)所示。
-
实验选取FSW逆变器作为重建对象,通过在匹配过程中改变拟合函数的次数并计算生成的点云与标准模型之间的标准偏差,通过比较各点云的标准偏差用以说明参数的改变对文中方法的影响,同时为后续实验选取较好的参数。
在实验过程中分别将拟合次数设为2次、3次、5次以及7次函数,并统计生成的点云数量以及与标准模型之间的标准偏差,结果如表1所示。当拟合次数过低时,易将正常区域错认为问题区域,在其上进行曲线拟合,会使得原有正确的相位值丢失,造成标准偏差略高;当拟合次数过大时,虽然某些问题区域因候选匹配点不足而被识别成正常区域,但由于不会对正确的相位值进行修改而引入新的误差,同时高次函数对相位曲线的修正效果要好于低次函数,因此此类情况要好于当拟合次数过低时的情况。
Fit times Number of points Standard deviation/mm 2 2128983 0.0950 3 2134854 0.0939 5 2134483 0.0945 7 2134191 0.0938 Table 1. Influence of fitting times on proposed method
-
分别使用基于点基元的匹配方法[14]、基于模板的匹配方法[16]以及文中方法对FSW逆变器进行重建,并对重建得到的点云进行对比分析,如图8所示。
为更好对比三种方法在重建复杂零件时的优劣,对易产生噪声点和空洞的区域进行了放大,如阶梯式起伏的交界区域、具有一定弧度的平面区域以及只被单相机捕捉到的阶梯式起伏的交界区域。其中,阶梯式起伏的交界区域以红色矩形框标出;具有一定弧度的平面区域使用黄色矩形框标出;只被单相机捕捉到的阶梯式起伏的交界区域以绿色矩形框标出。
基于点基元的匹配方法由于在匹配时只考虑单点的相位信息,因此该方法容易受到重建过程中的噪声及零件复杂结构等影响,重建结果存在较多的噪声点。基于模板的匹配方法在匹配时考虑了以待匹配点为中心的邻域的相位信息,但在阶梯式起伏的交界处的像素点的邻域很容易涵盖不同曲面点的相位信息,所以该方法在类似区域往往存在较多的噪声点。文中方法在基于点基元的匹配方法基础上,对相位曲线应用曲线拟合,因此在这些区域的噪声点要少于其他两种方法,具体对比如图8中红圈标出部分。
由于基于模板的匹配方法以像素点邻域的相位信息作为匹配依据,因此该方法得到的点云要较其他两种方法稀疏,在具有一定弧度的平面区域甚至会出现一定的空洞,使得点云细节不佳,如图8 (b)中黄圈标出部分。基于点基元的匹配方法以及文中方法均不存在这个问题。
由绿色矩形框标出的放大部分在拍摄时只被单相机捕捉到,同时该部分处于阶梯式起伏的交界处,相位曲线在此处具有较小的弧度,各像素点的相位值差异不大。因此,在该区域容易造成误匹配,使得重建结果在此处存在噪声点集群。此类误匹配难以通过在立体匹配阶段排除,因此基于点基元的匹配方法与基于模板的匹配方法均存在上述噪声点集群,如图8 (a)与图8 (b)中由绿色椭圆标出部分。文中方法根据视差图中像素点到其邻域内各点的平均距离对视差图进行精化,有效去除此类误匹配点,如图8 (c)所示。
为更好说明文中算法的有效性,将三种方法重建得到的点云与零件的标准模型进行对比,并计算标准偏差,结果如表2所示。虽然相较于点基元的匹配方法,基于模板的匹配方法得到的点云精度有所提高,但重建得到的点云的细节难以保证,存在多处的点云缺失,如图8中由黄色矩形框放大部分,点云在该区域存在多处空洞;而文中方法不仅提高了点云重建的精度,并且相较于基于模板的匹配方法而言,同时保留了点云的细节。
Method Number of points Standard deviation/mm Point-based matching method 2144144 0.1148 Template -based matching method 2113931 0.1128 Proposed method 2134854 0.0939 Table 2. Comparison of the results of reconstructing FSW inverter
High-precision 3D reconstruction method for topography measurement of complex mechanical parts
doi: 10.3788/IRLA20210730
- Received Date: 2022-01-25
- Rev Recd Date: 2022-03-20
- Publish Date: 2022-08-05
-
Key words:
- 3D reconstruction /
- phase correction /
- mechanical parts /
- multi-frequency heterodyne /
- curve fitting
Abstract: Accurate measurement of mechanical parts can provide a basis for parts processing and manufacturing, virtual simulation, defect detection and other applications. The binocular vision method based on fringe projection is widely used in the topography measurement of mechanical parts due to its high-precision characteristics. In this method, the quality of the absolute phase curve determines the final accuracy of the 3D reconstruction. Due to the influence of environmental noise, discontinuity of the scene, and complex surface structure of the parts, absolute phase curve often has a large number of noise points and varying degrees of deformation. In order to improve the reconstruction accuracy, a corresponding improvement method is proposed for the problems existing in the absolute phase curve. Aiming at the noise points far away from the phase curve that are difficult to remove, a region-by-region phase correction method is proposed. This method divides the phase curve of each row into several regions, and uses the median of the phase value in the region as the threshold to remove such noise points. For the deformed area of the phase curve, the curve fitting method is introduced on the basis of the point primitive-based stereo matching method, and the disparity map obtained after the matching is refined, which can improve the poor matching result in the deformed area of the phase curve and improve the robustness and accuracy of the matching method. The method is used to reconstruct complex part FSW inverter, and the standard deviation can be reduced to within 0.1 mm. Experiments have proved that the reconstruction accuracy of this method is higher. For mechanical parts with complex surface structure, the proposed method can achieve accurate measurement.