条纹投影测量点云逐点加权配准方法、设备和介质
技术领域
本发明属于视觉测量
技术领域
,具体涉及条纹投影测量点云逐点加权配准方法。背景技术
条纹投影轮廓术是一种需求日益广泛的三维测量方法,具有非接触、信息处理自动化、全场测量、环境适应性好、精度高等优点,是现代制造业全场非接触三维测量的首选手段,能够为机械制造中产品数字化设计、在线加工、几何量检测、动态性能测试、力学性能分析、逆向工程乃至产品模式识别提供三维数据支撑,最终助力机械制造、场景感知水平的提高。
由于测量设备视场有限,加之工件外形复杂,单次测量往往无法将物体的待测区域覆盖完整,因此需要从不同视角对工件分别进行测量,然后通过点云配准的方式还原被测物体的全视角三维形貌。点云配准可以分为粗配准和精配准两步。粗配准指的是在两幅点云之间的变换完全未知的情况下进行较为粗糙的配准,目的主要是为精配准提供较好的变换初值;精配准则是给定一个初始变换,进一步优化得到更精确的变换。目前应用最广泛的点云精配准算法是迭代最近点算法(Iterative Closest Point,ICP)及其优化算法。
在条纹投影三维轮廓测量中,由于各个点的相位精度不同,会导致不同点的三维测量精度也不一致。在后续配准过程中,如果直接采用ICP算法进行点云配准,会使得采用最小二乘法求解空间变换矩阵时将不同精度的待匹配点等同对待,缺乏对数据精度的适配,不利于最终配准精度的提高。这是ICP算法的一个缺陷,有待针对性研究进行补足。
发明内容
为了克服上述现有技术的缺点,本发明提出一种考虑各匹配点测量精度的一种条纹投影测量点云逐点加权配准方法、设备和介质,提高点云整体配准精度。
为达到上述目的,本发明所述条纹投影测量点云逐点加权配准方法,包括以下步骤:
步骤1:基于条纹投影三维测量系统,对目标进行多视角测量,得到采样条纹图;
步骤2:基于采样得到的条纹图及三维测量系统标定信息,结合条纹图处理技术,求被测物体表面多视角三维点云;
步骤3:对采样条纹图进行代数运算,求得相位精度特征量;
步骤4:基于相位精度特征量构建与三维点云质量正相关的逐点加权因子;
步骤5:对多视角点云进行粗配准,得到精配准的位置初值;
步骤6:以位置初值与目标点云进行点云精配准,以最近点为点云匹配点,基于所构建的逐点加权因子,对点云匹配点对赋予不同权重,构建点云精配准目标函数;
步骤7:对点云精配准目标函数进行最小二乘运算,得到最优平移矩阵与最优旋转矩阵,对点云进行旋转平移位姿调整,迭代求解,实现点云逐点加权精配准。
进一步的,步骤3中,表征相位精度的特征量为相位精度为
其中,A为条纹背景项,B为条纹对比度,f1表示相位精度表征函数。
进一步的,步骤4中的逐点加权因子ωi的定义如下:
其中,为原点云的相位精度特征量,为目标点云的对应点的相位精度特征量,f2表示逐点加权因子表征函数。
进一步的,步骤6中,点云精配准目标函数为:
其中,和是源点云和目标点云中的对应点,R*和t*为原点云变换到目标点云的最优旋转平移矩阵,ωi为该匹配点对的加权因子。
进一步的,步骤7中,计算点云配准最优平移矩阵t*公式为:
定义:
其中,为匹配点对的加权因子的和,和是原点云和目标点云的加权平均值。
进一步的,步骤7中,计算点云配准最优旋转矩阵R*过程为:
对矩阵C进行奇异值分解:
C=U∑VT
trace(RC)=trace(RU∑VT)=trace(∑VTRU)
当VTRU为单位阵时,trace(RC)取最大值,即:
VTR*U=I
R*=VUT
通过对矩阵C的奇异值分解,求得点云配准最优旋转矩阵R*。
一种计算机设备,包括电连接的存储器和处理器,所述存储器上存储有可在处理器上运行的计算程序,所述处理器执行所述计算程序时,实现上述的配准方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述的配准方法的步骤。
与现有技术相比,本发明至少具有以下有益的技术效果:
本发明将条纹投影轮廓术三维测量与后续点云配准技术融合为有机整体;通过充分考虑不同待匹配点的精度差异,构建了更具适配性的点云配准函数,有助于提高对复杂测量点云的适应性、提高整体配准精度。
条纹投影轮廓术中的相位精度可由条纹背景项、条纹对比度等指标表征,且相位精度与三维测量精度正相关,从而条纹背景项、条纹对比度等指标可表征三维点云数据质量;依据条纹背景项、条纹对比度等指标建立拼接加权因子,进行逐点加权的ICP配准,通过逐点加权的约束作用,增大拼接过程中高精度点的权重,提高点云整体配准精度。
附图说明
图1为采集的被测物体两个视角的正弦条纹图;
图2为被测物体两个视角的解包裹相位图;
图3为被测物体两个视角的三维点云图;
图4为被测物体两个视角的加权因子图;
图5为被测物体两个视角点云粗配准图;
图6a为被测物体两个视角点云不加权精配准图;
图6b为被测物体两个视角点云加权精配准图;
图7为加权和不加权点云精配准过程的均方根误差统计图;
图8为加权和不加权点云精配准过程的最大公共点集统计图;
图9为本发明提供的计算机设备的结构示意图。
具体实施方式
为了使本发明的目的和技术方案更加清晰和便于理解。以下结合附图和实施例,对本发明进行进一步的详细说明,此处所描述的具体实施例仅用于解释本发明,并非用于限定本发明。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
相位是条纹投影轮廓术进行三维重建的核心参量,其精度直接决定三维测量精度。相位由采样条纹图经相位解调、相位解包裹两个核心处理步骤得到,其精度可由条纹背景项、条纹对比度、相位误差等指标表征。相位精度与三维重建精度呈正相关。鉴于此,在条纹投影测量点云后续配准过程中,可以借助相位精度建立拼接加权因子,进行逐点加权的ICP配准,提高测量精度好的点对配准的贡献值,减少异常点对拼接效果的影响,通过逐点加权的约束作用,提高点云配准精度。
实施例1
一种条纹投影测量点云逐点加权配准方法包括以下步骤:
步骤1:基于所构建条纹投影三维测量系统,对目标进行多视角测量,采样得到条纹图。
利用计算机编码生成的多组不同频率的正弦条纹图,借助投影系统将它们依次投射到被测物体上,使用工业相机采集由物体高度调制后的变形条纹图像,如图1所示,为物体两个视角的正弦条纹图。
步骤2:基于采样得到的条纹图及三维测量系统标定信息,结合条纹图处理技术,求得被测物体表面多视角三维点云。
对采集到的条纹图进行解调得到其包裹相位、对包裹相位进行解包裹得到真实相位,求解的真实相位图如图2所示,通过真实相位结合标定参数求解三维点云,求解的三维点云如图3所示。
步骤3:对条纹图进行代数运算,求得可表征相位精度的特征量。
相位由条纹图经相位解调、相位解包裹两个处理步骤得到,定义相位精度为则其可由条纹背景项、条纹对比度等指标表征。
其中,A为条纹背景项,B为条纹对比度,f1表示相位精度表征函数。
步骤4:基于相位精度特征量构建与三维点云质量正相关的逐点加权因子。
基于相位精度建立逐点加权因子,逐点加权因子ωi的定义如下:
其中,为原点云的相位精度特征量,为目标点云的对应点的相位精度特征量,f2表示逐点加权因子表征函数。
基于相位精度所建立逐点加权因子如图4所示,图中不同的灰度代表不同权重值。
步骤5:对多视角点云数据进行粗配准,得到精配准的位置初值。
将视角一作为目标点云,视角二作为原点云进行粗配准,结果如图5所示,大体位置进行配准,为下一步精配准提供较好的位置初值,避免后续精配准陷入局部最优解。
步骤6:以位置初值与目标点云进行ICP方法的点云精配准:ICP方法以最近点为匹配点,基于所构建逐点加权因子,对点云匹配点对赋予不同权重,构建改进型点云精配准目标函数。
基于所构建的逐点加权因子,ICP点云配准的目标函数可以优化为:
其中,和是源点云和目标点云中的对应点,R*为原点云变换到目标点云的最优旋转矩阵,t*为原点云变换到目标点云的最优平移矩阵,和为原点云和目标点云第i个匹配点对,ωi为该匹配点对的加权因子,Ps为原点云个数,R为原点云到目标点云变换的旋转矩阵,t为原点云到目标点云变换的平移矩阵。
步骤7:对目标函数进行最小二乘运算,得到最优平移矩阵与最优旋转矩阵,对点云进行旋转平移位姿调整,迭代求解,实现点云逐点加权精配准。
计算点云精配准的最优平移矩阵:
通过计算原点云和目标点云的加权质心来得到最优平移,点云平移变换是将其质心位置平移。
计算点云加权质心公式为:
其中,为匹配点对的加权因子的和,和是原点云和目标点云的加权质心,N为原点云和目标点云的匹配点对个数。
计算点云精配准的最优平移矩阵:
令N=|Ps|,ICP点云配准的目标函数为:
对其进行求导,则有:
要使得目标函数取最小值,令其导数为0,则有:点云配准最优平移矩阵公式为:
无论R取何值,我们可以根据上式求得令目标函数取得最小值的最优平移t*,即通过计算原点云和目标点云的质心来得到最优平移。
对点云进行平移变换后,计算点云精配准的最优旋转矩阵:
经过上述最优平移的推导,可以通过计算原点云和目标点云的质心来得到最优平移,即
由此,将原点云与目标点云都转换到质心坐标系下,令 和为中间变量,ICP点云配准目标函数改写为:
将上述表达式展开:
由于点的坐标是确定的,和R无关,所以最小化目标函数等价于:
也即为求:
对矩阵C进行奇异值分解:
C=U∑VT
trace(RC)=trace(RU∑VT)=trace(∑VTRU)
当VTRU为单位阵时,trace(RC)取最大值。即:
VTR*U=I
R*=VUT
通过对矩阵C的奇异值分解,求得正交矩阵R*,但这个正交矩阵分为两种情况,一种是符合要求的旋转矩阵,一种是不符合要求的反射矩阵,需要修正。因为旋转矩阵其行列式为1,反射矩阵其行列式值为-1,修正后旋转矩阵表达式为:
整合为:
由上述推导可得,计算点云配准最优旋转矩阵是通过将原点云与目标点云都转换到质心坐标系下,构造协方差矩阵C,用C的奇异值分解(SVD)求得旋转矩阵。
得到点云精配准的最优旋转平移矩阵后,对原点云进行位姿调整,通过迭代求解,实现对条纹投影测量点云逐点加权精配准。同时对条纹投影测量点云进行不加权的点云配准,对比评价逐点加权的配准效果。不加权精配准结果如图6a所示,加权精配准结果如图6b所示。以均方根误差(RSME)、最大公共点集(LCP)两个指标来评价配准效果,均方根误差反映两片点云整体配准误差,最大公共点集反映最大匹配程度,分别统计加权和不加权点云精配准的均方根误差和最大公共点集,如图7、图8所示。
由图7、图8可以看出,加权和不加权的点云精配准迭代过程的均方根误差基本相同,但在最大公共点集上,加权配准优于不加劝配准,在迭代结束时,会增加一部分匹配较好的点,可见通过逐点加权的约束作用,提高了两片的最大匹配程度,提高了配准精度。
实施例2
本发明提供的一种计算机设备,如图9所示,包括电连接的存储器和处理器,其中,存储器上存储有可在处理器上运行的计算程序,所述处理器执行所述计算程序时,实现上述的配准方法的步骤。
所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可包括,但不仅限于,处理器、存储器。
所述处理器可以是中央处理单元(CentralProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(DigitalSignalProcessor,DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、现成可编程门阵列(Field-ProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述终端设备的各种功能。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
实施例3
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。