CN114359413B - 用于三维扫描的旋转平台位置参数计算方法及系统 - Google Patents
用于三维扫描的旋转平台位置参数计算方法及系统 Download PDFInfo
- Publication number
- CN114359413B CN114359413B CN202210260972.9A CN202210260972A CN114359413B CN 114359413 B CN114359413 B CN 114359413B CN 202210260972 A CN202210260972 A CN 202210260972A CN 114359413 B CN114359413 B CN 114359413B
- Authority
- CN
- China
- Prior art keywords
- point cloud
- target
- point
- rotating platform
- coordinates
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Length Measuring Devices By Optical Means (AREA)
Abstract
本发明公开了一种用于三维扫描的旋转平台位置参数计算方法及系统,主要在于能够提高旋转平台位置参数的计算效率,同时能够便于对旋转平台与结构光系统的相关位置关系进行标定。其中方法包括:获取扫描到的旋转平台上的待扫描物体的多幅三维点云;从获取的所述多幅三维点云中确定初始源点云和目标点云,并以所述目标点云为基准,对所述初始源点云进行变换处理,得到变换后的源点云;根据所述变换后的源点云,从所述目标点云中筛选出目标特征点;基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数。
Description
技术领域
本发明涉及三维扫描领域,尤其是涉及一种用于三维扫描的旋转平台位置参数计算方法及系统。
背景技术
目前,三维扫描领域在计算扫描仪的旋转平台的位置参数时,通常将标准球或者平面标定板放置于旋转平台上,利用结构光系统扫描该标准球或者平面标定板,并依据扫描结果进行计算旋转平台相对于结构光系统的位置参数。然而,这种方式在计算的过程中需要通过特定的标定物对旋转平台与结构光系统的相对位置关系进行标定,一旦旋转平台与结构光系统的相对位置关系发生变化,必须重新利用标定物对该位置关系进行标定,即重新利用标定物计算旋转平台的位置参数,由此会导致操作过程较为繁琐,不便于对旋转平台与结构光系统的相对位置关系进行标定,从而影响旋转平台位置参数的计算效率。
发明内容
本发明提供了一种用于三维扫描的旋转平台位置参数计算方法及系统,主要在于能够提高旋转平台位置参数的计算效率,同时能够便于对旋转平台与结构光系统的相关位置关系进行标定。
根据本发明的第一个方面,提供一种用于三维扫描的旋转平台位置参数计算方法,包括:
获取扫描到的旋转平台上的待扫描物体的多幅三维点云;
从获取的所述多幅三维点云中确定初始源点云和目标点云,并以所述目标点云为基准,对所述初始源点云进行变换处理,得到变换后的源点云;
根据所述变换后的源点云,从所述目标点云中筛选出目标特征点;
基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数。
根据本发明的第二个方面,提供一种用于三维扫描的旋转平台位置参数计算装置,包括:
获取单元,用于获取扫描到的旋转平台上的待扫描物体的多幅三维点云;
变换单元,用于从获取的所述多幅三维点云中确定初始源点云和目标点云,并以所述目标点云为基准,对所述初始源点云进行变换处理,得到变换后的源点云;
筛选单元,用于根据所述变换后的源点云,从所述目标点云中筛选出目标特征点;
计算单元,用于基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数。
根据本发明的第三个方面,提供一种用于三维扫描仪的旋转平台配准系统,包括三维扫描仪,所述三维扫描仪用于扫描旋转平台上的待扫描物体,并获取多幅三维点云;所述配准系统用于执行上述用于三维扫描的旋转平台位置参数计算方法,从而实现三维扫描仪的旋转平台配准。
根据本发明的第四个方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:
获取扫描到的旋转平台上的待扫描物体的多幅三维点云;
从获取的所述多幅三维点云中确定初始源点云和目标点云,并以所述目标点云为基准,对所述初始源点云进行变换处理,得到变换后的源点云;
根据所述变换后的源点云,从所述目标点云中筛选出目标特征点;
基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数。
根据本发明的第五个方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以下步骤:
获取扫描到的旋转平台上的待扫描物体的多幅三维点云;
从获取的所述多幅三维点云中确定初始源点云和目标点云,并以所述目标点云为基准,对所述初始源点云进行变换处理,得到变换后的源点云;
根据所述变换后的源点云,从所述目标点云中筛选出目标特征点;
基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数。
本发明提供的一种用于三维扫描的旋转平台位置参数计算方法及系统,与目前通过对标准球或者标定板进行扫描,计算旋转平台位置参数的方式相比,本发明能够获取扫描到的旋转平台上的待扫描物体的多幅三维点云;并从获取的所述多幅三维点云中确定初始源点云和目标点云,以所述目标点云为基准,对所述初始源点云进行变换处理,得到变换后的源点云;与此同时,根据所述变换后的源点云,从所述目标点云中筛选出目标特征点;最终基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数。由此通过直接对待扫描物体进行扫描,获取待扫描物体对应的初始源点云和目标点云,并从待扫描物体对应的目标点云中筛选出目标特征点,能够基于目标特征点在目标点云和不同初始源点云中的坐标点,计算出旋转平台的轴线向量和轴心坐标,并将其确定为所述旋转平台相对于扫描系统的位置参数,从而更方便和更高效的实现三维扫描仪的旋转平台配准。此外,在对旋转平台与扫描系统的相对于位置关系进行标定的过程中,能够避免使用标定物,尤其当旋转平台与扫描系统的相对位置关系发生变化时,能够避免再次使用标定物重新对该相对位置关系进行标定,从而能够简化操作过程,提高旋转平台位置参数的计算效率。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了本发明实施例提供的一种用于三维扫描的旋转平台位置参数计算方法流程图;
图2示出了本发明实施例提供的另一种用于三维扫描的旋转平台位置参数计算方法流程图;
图3示出了本发明实施例提供的查找树示意图;
图4示出了本发明实施例提供的一种用于三维扫描的旋转平台位置参数计算装置的结构示意图;
图5示出了本发明实施例提供的另一种用于三维扫描的旋转平台位置参数计算装置的结构示意图;
图6示出了本发明实施例提供的一种计算机设备的实体结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
目前,一旦旋转平台与结构光系统的相对位置关系发生变化,必须重新利用标定物对该位置关系进行标定,即重新利用标定物计算旋转平台的位置参数,由此会导致操作过程较为繁琐,不便于对旋转平台与结构光系统的相对位置关系进行标定,从而影响旋转平台位置参数的计算效率。
为了解决上述问题,本发明实施例提供了一种用于三维扫描的旋转平台位置参数计算方法,如图1所示,所述方法包括:
101、获取扫描到的旋转平台上的待扫描物体的多幅三维点云。
其中,待扫描物体为放置于旋转平台上待进行三维扫描的物体,本发明实施例中需要获取的待扫描物体的三维点云数量至少为三幅,为了避免浪费资源,节约存储空间,通常可以获取待扫描物体的三幅三维点云。
本发明实施例主要应用于计算旋转平台相对于扫描系统的位置参数的场景。本发明实施例的执行主体为能够计算旋转平台相对于扫描系统的位置参数的装置或者设备,具体可以设置在服务器一侧,也可以为本地计算机、扫描仪、旋转盘控制器等。
对于本发明实施例,在对旋转平台与扫描系统(结构光系统)的相对位置关系进行标定的过程中,无需要使用标准球、平面标定板等特定标定物,直接将待扫描物体放置于旋转平台上,通过获取待扫描物体的多幅三维点云,并筛选出目标点云中的目标特征点,能够基于该目标特征点对旋转平台与结构光系统的相对位置关系进行标定,即可以直接基于该目标特征点,计算旋转平台对应的位置参数。
具体地,在获取待扫描物体的多幅三维点云时,可以先将待扫描物体放置于旋转平台上,利用扫描系统对待扫描物体进行扫描,得到待扫描物体在0旋转角度下的三维点云,之后控制旋转平台每次沿逆时针或者顺时针方向旋转相同角度,如20度,每次旋转停止后对待扫描物体进行扫描,获取待扫描物体分别在20度和40度时的三维点云。除此之外,还可以先不对待扫描物体进行扫描,控制旋转平台沿逆时针或者顺时针方向以相同角度连续旋转3次,如20度,每次旋转停止后对待扫描物体进行扫描,获取待扫描物体分别在20度、40度和60度时的三维点云。由此按照上述两种方式能够获取待扫描物体在不同旋转角度下的三维点云。
需要说明是,本发明实施例中的扫描系统具体可以为结构光系统,也可以为其他扫描系统,本发明实施例不进行具体限定。本发明实施例中的旋转次数不能少于两次,通常设定为两次,通过控制旋转平台每次旋转相同角度可以获取待扫描物体的三幅三维点云。
102、从获取的所述多幅三维点云中确定初始源点云和目标点云,并以所述目标点云为基准,对所述初始源点云进行变换处理,得到变换后的源点云。
对于本发明实施例,在获取多幅三维点云之后,随机选取一幅三维点云作为目标点云,并将剩余的三维点云作为初始源点云,例如,通过控制旋转平台沿同一方向每次旋转20度,获取待扫描物体在0度、20度和40度下的三维点云P1、P2和P3,选取P1作为目标点云,并将P2和P3作为初始源点云。进一步地,分别确定所述目标点云与不同初始源点云之间的变换矩阵,并基于该变换矩阵,对所述不同初始源点云进行变换处理,得到不同变换后的源点云。其中,变换矩阵包括旋转矩阵和平移矩阵。
在确定旋转矩阵和平移矩阵的过程中,可以采用ICP算法确定不同初始源点云与目标点云之间的旋转矩阵和平移矩阵。具体地,可以在目标点云中选取点集P,同时针对点集P中的任意一点pi,根据预设的约束条件确定pi在初始源点云中对应的qi,由此可以在初始源点云中确定点集P对应的点集Q。进一步地,构建误差函数,通过该误差函数求解旋转矩阵和平移矩阵,该误差函数的具体公式如下:
其中,E(R,t)为经过变换后的点集Q与点集P之间的距离误差,n为点集P和点集Q对应的数量,pi为点集P中的任意一点,qi为点集Q中与pi相对应的点,R为旋转矩阵,t为平移矩阵。由此通过上述误差函数不断对参数R和t进行迭代,能够得到目标点云与不同初始源点云之间的旋转矩阵和平移矩阵。
进一步地,在确定目标点云与不同初始源点云之间的旋转矩阵和平移矩阵之后,基于该旋转矩阵和平移矩阵对不同初始源点云进行旋转处理和平移处理,得到不同变换后的源点云。
103、根据所述变换后的源点云,从所述目标点云中筛选出目标特征点。
其中,目标特征点为用于对旋转平台与扫描系统的相对位置关系进行标定的特征点,目标特征点的数量具体可以为一个、两个或者多个,为了保证旋转平台位置参数的计算精度,筛选出的目标特征点的数量不宜过少。对于本发明实施例,为了直接从待扫描物体对应的目标点云中筛选出目标特征点,需要先从目标点云随机抽取多个特征点,之后确定每个特征点在不同变换后的源点云中对应的最邻近特征点,接着计算每个特征点与不同变换后的源点云中最邻近特征点之间的距离值,基于该距离值从多个特征点中筛选出目标特征点。
例如,从目标点云P1中随机抽取多个特征点,之后确定每个特征点分别在变换后的源点云P2和P3中的最邻近特征点,接着计算每个特征点与变换后的源点云P2中的最邻近特征点之间的距离d2,以及每个特征点与变换后的源点云P3中的最邻近特征点之间的距离d3,针对某个特征点,如果d2和d3均小于预设距离值,则确定该特征点为目标特征点。由此按照上述方式能够从随机抽取的多个特征点中筛选出目标特征点,以便基于该目标特征点,计算旋转平台相对于扫描系统的位置参数。
104、基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数。
其中,旋转平台的位置参数包括旋转平台对应的轴线向量和轴心坐标。对于本发明实施例,在确定目标点云中的目标特征点之后,基于该目标特征点分别在目标点云和不同初始源点云中的坐标,计算旋转平台对应的轴线向量和轴心坐标。在计算旋转平台对应的轴线向量时,根据目标特征点分别在目标点云中的坐标和在不同初始源点源中的坐标,进行平面拟合,并计算该平面的法向量,基于该平面的法向量,确定旋转平台对应的轴线向量。进一步地,在确定平面的法向量之后,基于该法向量,以及目标特征点分别在目标点云和不同初始源点云中的坐标,计算平面对应的中心点坐标,并根据该平面对应的中心点坐标,确定旋转平台对应的轴心坐标。由此按照上述方式能够直接基于待扫描物体在目标点云中的目标特征点,实现旋转平台与扫描系统的相关位置关系的标定。针对旋转平台的轴线向量和轴心坐标的具体计算过程,详见步骤205。
本发明实施例提供的一种用于三维扫描的旋转平台位置参数计算方法,与目前通过对标准球或者标定板进行扫描,计算旋转平台位置参数的方式相比,本发明能够获取扫描到的旋转平台上的待扫描物体的多幅三维点云;并从获取的所述多幅三维点云中确定初始源点云和目标点云,以所述目标点云为基准,对所述初始源点云进行变换处理,得到变换后的源点云;与此同时,根据所述变换后的源点云,从所述目标点云中筛选出目标特征点;最终基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数。由此通过直接对待扫描物体进行扫描,获取待扫描物体对应的初始源点云和目标点云,并从待扫描物体对应的目标点云中筛选出目标特征点,能够基于目标特征点在目标点云和不同初始源点云中的坐标点,计算出旋转平台的轴线向量和轴心坐标,并将其确定为所述旋转平台相对于扫描系统的位置参数,从而更方便和更高效的实现三维扫描仪的旋转平台配准。此外,在对旋转平台与扫描系统的相对于位置关系进行标定的过程中,能够避免使用标定物,尤其当旋转平台与扫描系统的相对位置关系发生变化时,能够避免再次使用标定物重新对该相对位置关系进行标定,从而能够简化操作过程,提高旋转平台位置参数的计算效率。
进一步的,为了更好的说明上述计算旋转平台相对于扫描系统的位置参数的过程,作为对上述实施例的细化和扩展,本发明实施例提供了另一种用于三维扫描的旋转平台位置参数计算方法,如图2所示,所述方法包括:
201、获取扫描到的旋转平台上的待扫描物体的多幅三维点云。
对于本发明实施例,为了获取待扫描物体的多幅三维点云,步骤201具体包括:获取所述待扫描物体在所述旋转平台旋转前被扫描到的第一点云,以及在所述旋转平台旋转后被扫描到的第二点云和第三点云。例如,先将待扫描物体放置于旋转平台上,利用扫描系统对待扫描物体进行扫描,得到待扫描物体在0旋转角度下的第一点云,之后控制旋转平台旋转朝同一方向连续旋转两次,每次旋转20度,且每次旋转停止后对待扫描物体进行扫描,获取待扫描物体在20度时的第二点云和在40度时的第三点云。
除此之外,步骤201具体还包括:获取所述待扫描物体在所述旋转平台旋转后被扫描到的第一点云、第二点云和第三点云。例如,将待扫描物体放置于旋转平台上后,控制旋转平台朝同一方向连续旋转三次,每次旋转20度,且每次旋转停止后对待扫描物体进行扫描,分别获取待扫描物体在20度、40度和60度时的第一点云、第二点云和第三点云。
需要说明的是,旋转平台在进行旋转时每次以同一角度进行旋转,具体可以控制旋转平台沿顺时针或者逆时针方向每次旋转20度,由于将旋转角度设置过大,不易于实现旋转平台的配准,而将该旋转角度设置过小,会导致轴线向量和轴心坐标的计算精度较低,因此将旋转平台每次旋转的角度设定为20度,能够保证轴线向量和轴心坐标的计算精度,便于实现旋转平台的配准。
202、从获取的所述多幅三维点云中确定初始源点云和目标点云,并以所述目标点云为基准,对所述初始源点云进行变换处理,得到变换后的源点云。
对于本发明实施例,确定目标点云和初始源点云的过程,以及对初始源点云进行变换处理的过程与步骤102相同,在此不再赘述。
203、从所述目标点云中随机抽取预设数量的特征点,并确定所述特征点分别在不同变换后的源点云中的最邻近特征点,以及所述特征点与所述不同变换后的源点云中最邻近特征点之间的距离值。
其中,预设数量可以根据实际操作需要进行设定,如随机从目标点云中抽取100个特征点。对于本发明实施例,为了提高最近邻特征点的查找效率,可以利用Kd-tree算法快速确定每个特征点在不同变换后的源点云中的最邻近特征点,针对利用Kd-tree算法确定最邻近特征点的具体过程,作为一种可选实施例,该方法包括:获取所述不同变换后的源点云对应的查找树;从所述查找树的根节点开始,依据所述每个特征点与所述查找树的各分支节点的比较结果不断向下查找,直至到达叶子节点;将所述叶子节点上保存的特征点确定为待查找特征点;计算所述每个特征点与所述待查找特征点之间的最小距离,以及所述每个特征点与所述根节点下未被查找过的分支节点之间的分支距离;若所述分支距离小于所述最小距离,则进入所述分支节点中进行查找,并基于查找结果,对所述待查找特征点进行更新,得到更新后的待查找特征点;将所述更新后的待查找特征点确定为所述最邻近特征点。
图3为变换后的源点云对应的查找树,以特征点(2.1,3.1,2.0)为例详细说明查找最邻近特征点的过程,首先从根节点(7,2,2)开始,根节点需要比较的维度特征是x轴方向上的特征,根节点x轴方向上的特征为7,特征点(2.1,3.1,2.0)x轴方向上的特征为2.1,由于2.1小于根节点x轴方向上的特征7,因此进入到查找树的左侧分支节点(5,4,2),左侧分支节点(5,4,2)需要比较的维度是y轴方向上的特征,左侧分支节点y轴方向上的特征为4,特征点(2.1,3.1,2.0)y轴方向上的特征为3.1,由于3.1小于左侧分支节点y轴方向上的特征,因此最终到达左侧的叶子节点,左侧叶子节点上存储的特征点为(2,3,3),将其暂时作为待查找特征点,并计算特征点(2.1,3.1,2.0)与当前的待查找特征点(2,3,3)之间的最小距离,通过计算最小距离为1.1414。进一步地,为了查找其他分支中是否还存在距离特征点更近的点,回溯到分支节点(5,4,2),计算特征点(2.1,3.1,2.0)与分支节点(5,4,2)之间的分支距离,由于该分支距离显然大于最小距离1.1414,因此不必进入分支节点(5,4,2)的右侧分支进行查找。进一步地,回溯到根节点(7,2,2),计算特征点(2.1,3.1,2.0)与根节点(7,2,2)之间的分支距离,由于两者之间的分支距离显然大于最小距离1.1414,因此不必进入根节点的右侧分支进行查找,最终确定(2,3,3)为特征点(2.1,3.1,2.0)在变换后的源点云中的最邻近特征点。
进一步地,图3中变换后的源点云对应的查找树可以根据变换后的源点云中的特征点进行构建。例如,变换后的源点云中的特征点依次为(7,2,2)、(5,4,2)、(9,6,2)、(2,3,3)、(4,7,3)、(8,1,3),分别确定上述特征点在x轴、y轴和z轴方向上的方差,得知x轴方向上的方差最大,因此将x轴方向上的值2,5,9,4,8,7进行排序,排序选出中间值7,该中间值对应的特征点为(7,2,2),因此选择(7,2,2)作为根节点,同时将x轴方向上的特征确定为需要进行比较的特征,通过该中间值7能够划分成左侧分支和右侧分支,如图3所示,如果特征点在x轴方向上的特征小于7,则被划分到左侧分支,该左侧分支包含三个节点(5,4,2)、(2,3,3)和(4,7,3);相反如果大于7,则被划分到右侧分支,该右侧分支包含两个节点(9,6,2)和(8,1,3),继续重复上述过程,直至划分到叶子节点。
在按照上述方法确定每个特征点在不同变换后的源点云中的最邻近特征点的同时,还需要确定最邻近特征点在相应变换后的源点云中的索引值。进一步地,计算每个特征点与不同最邻近特征之后的距离值。例如,计算目标点云P1中的每个特征点与变换后的源点云P2中的最邻近特征点之间的距离d2,以及每个特征点与变换后的源点云P3中的最邻近特征点之间的距离d3。
204、基于所述距离值,从所述预设数量的特征点中筛选出目标特征点。
对于本发明实施例,为了确定目标特征点,步骤204具体包括:预设一个距离阈值;比较所述距离值与所述距离阈值;确定所述距离值小于所述距离阈值的特征点为目标特征点。其中,所述距离阈值可以根据实际需要进行设置。
紧接上面的例子,如设定距离阈值为0.005mm,针对某个特征点,如果d2和d3均小于0.005mm,则确定该特征点为目标特征点;如果d2或者d3大于或者等于0.005mm,则说明该特征点不是要找的目标特征点,将该特征点剔除。
205、基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数。
对于本发明实施例,在计算旋转平台相对于扫描系统的位置参数之前,需要先确定目标特征点在不同初始源点云中的坐标,针对该过程,作为一种可选实施方式,所述方法包括:确定所述目标特征点在所述不同变换后的源点云中的最邻近特征点对应的索引值;基于所述索引值,获取所述目标特征点在所述不同初始源点云中的坐标。具体地,首先根据每个特征点在不同变换后的源点云中的最邻近特征点的索引值,确定目标特征点在不同变换后的源点云中的最邻近特征点的索引值,由于该最邻近特征点很可能与目标特征点是同一点,因此可以根据不同变换后的源点云中的最邻近特征点的索引值,获取目标特征点在不同初始源点云中的坐标。
进一步地,为了计算旋转平台相对于扫描系统的位置参数,即轴线向量和轴心坐标,步骤205具体包括:基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,确定拟合平面对应的法向量;根据所述法向量,以及所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述拟合平面对应的中心点坐标;若存在多个所述目标特征点,计算多个所述目标特征点分别对应的法向量的均值,得到所述旋转平台对应的轴线向量,并计算多个所述目标特征点分别对应的中心点坐标的均值,得到所述旋转平台对应的轴心坐标;将所述轴线向量和所述轴心坐标,确定为所述旋转平台相对于扫描系统的位置参数。
在具体应用场景中,当获取的待扫描物体的三幅三维点云分别为第一点云、第二点云和第三点云时,可以将目标点云设定为第一点云,将不同初始源点云设定为第二点云和第三点云,针对拟合平面法向量的具体确定过程,作为一种可选实施方式,该方法包括:获取第一公式;根据所述第一公式,计算所述拟合平面对应的法向量;其中,所述第一公式为:
其中,(x1,y1,z1)为所述目标特征点在所述第一点云中的坐标,(x2,y2,z2)和(x3,y3,z3)为所述目标特征点分别在第二点云和第三点云中的坐标,(a,b,c)为所述拟合平面对应的法向量。由于三个点(x1,y1,z1)、(x2,y2,z2)和(x3,y3,z3)可以确定一个平面,该平面上的任意一点与平面的法向量相乘等于1,因此通过上述公式可以解出平面的法向量。
进一步地,针对拟合平面中心点坐标的具体确定过程,作为一种可选实施方式,该方法包括:获取第二公式;根据所述第二公式,计算所述拟合平面对应的中心点坐标;其中,所述第二公式为:
其中,(x1,y1,z1)为所述目标特征点在所述第一点云中的坐标,(x2,y2,z2)和(x3,y3,z3)为所述目标特征点分别在所述第二点云和所述第三点云中的坐标,(a,b,c)为所述拟合平面对应的法向量,(x,y,z)为所述拟合平面对应的中心点坐标。
具体地,由于拟合平面的中心点坐标(x,y,z)与(x1,y1,z1)之间的距离等于中心点坐标(x,y,z)与(x2,y2,z2)之间的距离,且中心点坐标(x,y,z)与(x1,y1,z1)之间的距离等于中心点坐标(x,y,z)与(x3,y3,z3)之间的距离,除此之外,由于中心点坐(x,y,z)标在拟合平面上,中心点坐标(x,y,z)与拟合平面对应的法向量相乘得1。因此可以列出如下三个公式:
通过对上述三个公式进行简化,可以得到第二公式,进而利用该第二公式可以解出拟合平面对应的中心点坐标(x,y,z)。
在确定每个目标特征点的拟合平面对应的法向量和中心点坐标之后,计算所有目标特征点对应的法向量的均值,得到旋转平台对应的轴线向量,同时计算所有目标特征点对应的中心点坐标的均值,得到旋转平台对应的轴心坐标。由此按照上述计算公式能够得到旋转平台对应的位置参数。
本发明实施例提供的另一种用于三维扫描的旋转平台位置参数计算方法,与目前通过对标准球或者标定板进行扫描,计算旋转平台位置参数的方式相比,本发明能够获取扫描到的旋转平台上的待扫描物体的多幅三维点云;并从获取的所述多幅三维点云中确定初始源点云和目标点云,以所述目标点云为基准,对所述初始源点云进行变换处理,得到变换后的源点云;与此同时,根据所述变换后的源点云,从所述目标点云中筛选出目标特征点;最终基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数。由此通过直接对待扫描物体进行扫描,获取待扫描物体对应的初始源点云和目标点云,并从待扫描物体对应的目标点云中筛选出目标特征点,能够基于目标特征点在目标点云和不同初始源点云中的坐标点,计算出旋转平台的轴线向量和轴心坐标,并将其确定为所述旋转平台相对于扫描系统的位置参数,从而更方便和更高效的实现三维扫描仪的旋转平台配准。此外,在对旋转平台与扫描系统的相对于位置关系进行标定的过程中,能够避免使用标定物,尤其当旋转平台与扫描系统的相对位置关系发生变化时,能够避免再次使用标定物重新对该相对位置关系进行标定,从而能够简化操作过程,提高旋转平台位置参数的计算效率。
进一步地,本发明实施例提供了一种用于三维扫描仪的旋转平台配准系统,包括三维扫描仪,所述三维扫描仪用于扫描旋转平台上的待扫描物体,并获取多幅三维点云;所述配准系统用于执行上述用于三维扫描的旋转平台位置参数计算方法,从而实现三维扫描仪的旋转平台配准。
进一步地,作为图1的具体实现,本发明实施例提供了一种用于三维扫描的旋转平台位置参数计算装置,如图4所示,所述装置包括:获取单元31、变换单元32、筛选单元33和计算单元34。
所述获取单元31,可以用于获取扫描到的旋转平台上的待扫描物体的多幅三维点云。
所述变换单元32,可以用于从获取的所述多幅三维点云中确定初始源点云和目标点云,并以所述目标点云为基准,对所述初始源点云进行变换处理,得到变换后的源点云。
所述筛选单元33,可以用于根据所述变换后的源点云,从所述目标点云中筛选出目标特征点。
所述计算单元34,可以用于基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数。
在具体应用场景中,所述筛选单元33,如图5所示,包括:第一确定模块331和筛选模块332。
所述第一确定模块331,可以用于从所述目标点云中随机抽取预设数量的特征点,并确定所述特征点分别在不同变换后的源点云中的最邻近特征点。
所述第一确定模块331,还可以用于确定所述特征点与所述不同变换后的源点云中最邻近特征点之间的距离值。
所述筛选模块332,可以用于基于所述距离值,从所述预设数量的特征点中筛选出目标特征点。
在具体应用场景中,所述筛选模块332,具体可以用于预设一个距离阈值;
比较所述距离值与所述距离阈值;确定所述距离值小于所述距离阈值的特征点为目标特征点。
在具体应用场景中,所述多幅三维点云包括第一点云、第二点云和第三点云,所述获取单元31,具体可以用于获取所述待扫描物体在所述旋转平台旋转前被扫描到的第一点云,以及在所述旋转平台旋转后被扫描到的第二点云和第三点云;或者获取所述待扫描物体在所述旋转平台旋转后被扫描到的第一点云、第二点云和第三点云。
在具体应用场景中,所述所述旋转平台旋转时均以同一角度进行旋转。
在具体应用场景中,为了目标特征点在所述不同初始源点云中的坐标,所述装置还包括:确定单元35。
所述确定单元35,可以用于确定所述目标特征点在所述不同变换后的源点云中的最邻近特征点对应的索引值。
所述获取单元31,还可以用于基于所述索引值,获取所述目标特征点在所述不同初始源点云中的坐标。
在具体应用场景中,所述计算单元34,包括:第二确定模块341和计算模块342。
所述第二确定模块341,可以用于基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,确定拟合平面对应的法向量。
所述计算模块342,可以用于根据所述法向量,以及所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述拟合平面对应的中心点坐标。
所述计算模块342,还可以用于若存在多个所述目标特征点,计算多个所述目标特征点分别对应的法向量的均值,得到所述旋转平台对应的轴线向量,并计算多个所述目标特征点分别对应的中心点坐标的均值,得到所述旋转平台对应的轴心坐标。
所述第二确定模块341,还可以用于将所述轴线向量和所述轴心坐标,确定为所述旋转平台相对于扫描系统的位置参数。
在具体应用场景中,所述目标点云为第一点云,所述不同初始源点云分别为第二点云和第三点云,所述第二确定模块341,具体可以用于获取第一公式;根据所述第一公式,计算所述拟合平面对应的法向量;其中,所述第一公式为:
其中,(x1,y1,z1)为所述目标特征点在所述第一点云中的坐标,(x2,y2,z2)和(x3,y3,z3)为所述目标特征点分别在所述第二点云和所述第三点云中的坐标,(a,b,c)为所述拟合平面对应的法向量。
进一步地,所述计算模块342,具体可以用于获取第二公式;根据所述第二公式,计算所述拟合平面对应的中心点坐标;其中,所述第二公式为:
其中,(x1,y1,z1)为所述目标特征点在所述第一点云中的坐标,(x2,y2,z2)和(x3,y3,z3)为所述目标特征点分别在所述第二点云和所述第三点云中的坐标,(a,b,c)为所述拟合平面对应的法向量,(x,y,z)为所述拟合平面对应的中心点坐标。
在具体应用场景中,所述旋转平台旋转时均以同一角度进行旋转,所述同一角度为20度。
需要说明的是,本发明实施例提供的一种用于三维扫描的旋转平台位置参数计算装置所涉及各功能模块的其他相应描述,可以参考图1所示方法的对应描述,在此不再赘述。
基于上述如图1所示方法,相应的,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:获取扫描到的旋转平台上的待扫描物体的多幅三维点云;从获取的所述多幅三维点云中确定初始源点云和目标点云,并以所述目标点云为基准,对所述初始源点云进行变换处理,得到变换后的源点云;根据所述变换后的源点云,从所述目标点云中筛选出目标特征点;基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数。
基于上述如图1所示方法和如图4所示装置的实施例,本发明实施例还提供了一种计算机设备的实体结构图,如图6所示,该计算机设备包括:处理器41、存储器42、及存储在存储器42上并可在处理器上运行的计算机程序,其中存储器42和处理器41均设置在总线43上所述处理器41执行所述程序时实现以下步骤:获取扫描到的旋转平台上的待扫描物体的多幅三维点云;从获取的所述多幅三维点云中确定初始源点云和目标点云,并以所述目标点云为基准,对所述初始源点云进行变换处理,得到变换后的源点云;根据所述变换后的源点云,从所述目标点云中筛选出目标特征点;基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数。
通过本发明的技术方案,本发明能够获取扫描到的旋转平台上的待扫描物体的多幅三维点云;并从获取的所述多幅三维点云中确定初始源点云和目标点云,以所述目标点云为基准,对所述初始源点云进行变换处理,得到变换后的源点云;与此同时,根据所述变换后的源点云,从所述目标点云中筛选出目标特征点;最终基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数。由此通过直接对待扫描物体进行扫描,获取待扫描物体对应的初始源点云和目标点云,并从待扫描物体对应的目标点云中筛选出目标特征点,能够基于目标特征点在目标点云和不同初始源点云中的坐标点,计算出旋转平台的轴线向量和轴心坐标,并将其确定为所述旋转平台相对于扫描系统的位置参数,从而更方便和更高效的实现三维扫描仪的旋转平台配准。此外,在对旋转平台与扫描系统的相对于位置关系进行标定的过程中,能够避免使用标定物,尤其当旋转平台与扫描系统的相对位置关系发生变化时,能够避免再次使用标定物重新对该相对位置关系进行标定,从而能够简化操作过程,提高旋转平台位置参数的计算效率。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (10)
1.一种用于三维扫描的旋转平台位置参数计算方法,其特征在于,包括:
获取扫描到的旋转平台上的待扫描物体的多幅三维点云;
从获取的所述多幅三维点云中确定初始源点云和目标点云,并以所述目标点云为基准,对所述初始源点云进行变换处理,得到变换后的源点云;
根据所述变换后的源点云,从所述目标点云中筛选出目标特征点;
基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数;
其中,所述基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述旋转平台相对于扫描系统的位置参数,包括:
基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,确定拟合平面对应的法向量;
根据所述法向量,以及所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述拟合平面对应的中心点坐标;
若存在多个所述目标特征点,计算多个所述目标特征点分别对应的法向量的均值,得到所述旋转平台对应的轴线向量,并计算多个所述目标特征点分别对应的中心点坐标的均值,得到所述旋转平台对应的轴心坐标;
将所述轴线向量和所述轴心坐标,确定为所述旋转平台相对于扫描系统的位置参数。
2.根据权利要求1所述的方法,其特征在于,所述根据所述变换后的源点云,从所述目标点云中筛选出目标特征点,包括:
从所述目标点云中随机抽取预设数量的特征点,并确定所述特征点分别在不同变换后的源点云中的最邻近特征点;
确定所述特征点与所述不同变换后的源点云中最邻近特征点之间的距离值;
基于所述距离值,从所述预设数量的特征点中筛选出目标特征点。
3.根据权利要求2所述的方法,其特征在于,所述基于所述距离值,从所述预设数量的特征点中筛选出目标特征点,包括:
预设一个距离阈值;
比较所述距离值与所述距离阈值;
确定所述距离值小于所述距离阈值的特征点为目标特征点。
4.根据权利要求1所述的方法,其特征在于,所述多幅三维点云包括第一点云、第二点云和第三点云,所述获取扫描到的旋转平台上的待扫描物体的多幅三维点云,包括:
获取所述待扫描物体在所述旋转平台旋转前被扫描到的第一点云,以及在所述旋转平台旋转后被扫描到的第二点云和第三点云;或者
获取所述待扫描物体在所述旋转平台旋转后被扫描到的第一点云、第二点云和第三点云。
5.根据权利要求4所述的方法,其特征在于,所述旋转平台旋转时均以同一角度进行旋转。
6.根据权利要求2所述的方法,其特征在于,所述方法还包括:
确定所述目标特征点在所述不同变换后的源点云中的最邻近特征点对应的索引值;
基于所述索引值,获取所述目标特征点在所述不同初始源点云中的坐标。
7.根据权利要求1所述的方法,其特征在于,所述目标点云为第一点云,所述不同初始源点云分别为第二点云和第三点云,所述基于所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,确定拟合平面对应的法向量,包括:
获取第一公式;
根据所述第一公式,计算所述拟合平面对应的法向量;其中,所述第一公式为:
其中,(x1,y1,z1)为所述目标特征点在所述第一点云中的坐标,(x2,y2,z2)和(x3,y3,z3)为所述目标特征点分别在所述第二点云和所述第三点云中的坐标,(a,b,c)为所述拟合平面对应的法向量;
所述根据所述法向量,以及所述目标特征点分别在所述目标点云和不同初始源点云中的坐标,计算所述拟合平面对应的中心点坐标,包括:
获取第二公式;
根据所述第二公式,计算所述拟合平面对应的中心点坐标;其中,所述第二公式为:
其中,(x1,y1,z1)为所述目标特征点在所述第一点云中的坐标,(x2,y2,z2)和(x3,y3,z3)为所述目标特征点分别在所述第二点云和所述第三点云中的坐标,(a,b,c)为所述拟合平面对应的法向量,(x,y,z)为所述拟合平面对应的中心点坐标;
其中,所述旋转平台旋转时均以同一角度进行旋转,所述同一角度为20度。
8.一种用于三维扫描仪的旋转平台配准系统,包括三维扫描仪和旋转平台,其特征在于,所述三维扫描仪用于扫描旋转平台上的待扫描物体,并获取多幅三维点云;所述配准系统用于执行如权利要求1至7任一项所述的方法的步骤,从而实现三维扫描仪的旋转平台配准。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210260972.9A CN114359413B (zh) | 2022-03-17 | 2022-03-17 | 用于三维扫描的旋转平台位置参数计算方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210260972.9A CN114359413B (zh) | 2022-03-17 | 2022-03-17 | 用于三维扫描的旋转平台位置参数计算方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114359413A CN114359413A (zh) | 2022-04-15 |
CN114359413B true CN114359413B (zh) | 2022-06-28 |
Family
ID=81094434
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210260972.9A Active CN114359413B (zh) | 2022-03-17 | 2022-03-17 | 用于三维扫描的旋转平台位置参数计算方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114359413B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108592787A (zh) * | 2018-03-19 | 2018-09-28 | 上海交通大学 | 3d旋转扫描系统的转轴标定方法与系统 |
CN112525161A (zh) * | 2021-02-09 | 2021-03-19 | 南京景曜智能科技有限公司 | 一种旋转轴标定方法 |
CN112700480A (zh) * | 2020-12-29 | 2021-04-23 | 河北工业大学 | 一种面向小尺寸物体旋转扫描的点云快速配准方法及应用 |
WO2021175098A1 (zh) * | 2020-03-06 | 2021-09-10 | 泉州华中科技大学智能制造研究院 | 一种结构光三维扫描相机的标定装置及标定方法 |
CN114037751A (zh) * | 2021-09-27 | 2022-02-11 | 深圳市纵维立方科技有限公司 | 结构光系统的标定参数优化方法、存储介质、计算机设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021253193A1 (zh) * | 2020-06-15 | 2021-12-23 | 深圳市大疆创新科技有限公司 | 多组激光雷达外参的标定方法、标定装置和计算机存储介质 |
-
2022
- 2022-03-17 CN CN202210260972.9A patent/CN114359413B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108592787A (zh) * | 2018-03-19 | 2018-09-28 | 上海交通大学 | 3d旋转扫描系统的转轴标定方法与系统 |
WO2021175098A1 (zh) * | 2020-03-06 | 2021-09-10 | 泉州华中科技大学智能制造研究院 | 一种结构光三维扫描相机的标定装置及标定方法 |
CN112700480A (zh) * | 2020-12-29 | 2021-04-23 | 河北工业大学 | 一种面向小尺寸物体旋转扫描的点云快速配准方法及应用 |
CN112525161A (zh) * | 2021-02-09 | 2021-03-19 | 南京景曜智能科技有限公司 | 一种旋转轴标定方法 |
CN114037751A (zh) * | 2021-09-27 | 2022-02-11 | 深圳市纵维立方科技有限公司 | 结构光系统的标定参数优化方法、存储介质、计算机设备 |
Non-Patent Citations (1)
Title |
---|
基于结构光的非刚体目标快速三维重建关键技术研究;常宏光;《中国优秀硕士学位论文电子期刊网》;20200715;第9-32页 * |
Also Published As
Publication number | Publication date |
---|---|
CN114359413A (zh) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109493375B (zh) | 三维点云的数据匹配及合并方法、装置、可读介质 | |
US20220254059A1 (en) | Data Processing Method and Related Device | |
CN112802124A (zh) | 多台立体相机的标定方法及装置、电子设备及存储介质 | |
US20200134847A1 (en) | Structure depth-aware weighting in bundle adjustment | |
CN113781622A (zh) | 三维模型纹理贴图的转换方法、装置、设备以及介质 | |
CN113223078B (zh) | 标志点的匹配方法、装置、计算机设备和存储介质 | |
CN109685841B (zh) | 三维模型与点云的配准方法及系统 | |
CN112484738B (zh) | 机器人建图方法、装置、计算机可读存储介质及机器人 | |
CN111612731B (zh) | 基于双目显微视觉的测量方法、装置、系统及介质 | |
CN113251919A (zh) | 一种基于坐标变换的圆柱体点云数据拟合方法及装置 | |
CN112435297B (zh) | 目标物体位姿确定方法、装置、存储介质及电子设备 | |
CN114219717A (zh) | 点云配准方法、装置、电子设备及存储介质 | |
CN112198878A (zh) | 一种即时地图构建方法、装置、机器人及存储介质 | |
CN115546379A (zh) | 一种数据处理方法、装置和计算机设备 | |
CN113362445B (zh) | 基于点云数据重建对象的方法及装置 | |
CN113034565B (zh) | 一种单目结构光的深度计算方法及系统 | |
CN114359413B (zh) | 用于三维扫描的旋转平台位置参数计算方法及系统 | |
CN111915681A (zh) | 多组3d相机群的外参标定方法、装置、存储介质及设备 | |
CN116330667B (zh) | 一种玩具的3d打印模型设计方法及系统 | |
CN112529891A (zh) | 一种基于点云的空心孔洞识别与轮廓检测方法、装置及存储介质 | |
CN115457202B (zh) | 一种三维模型更新的方法、装置及存储介质 | |
CN113178000B (zh) | 三维重建方法、装置、电子设备及计算机存储介质 | |
CN113658156A (zh) | 一种去除深度图像中局外点的球体拟合方法和装置 | |
CN117765047B (zh) | 一种工件配准方法、装置、计算机设备及存储介质 | |
CN110813647A (zh) | 五轴运动控制方法、装置及点胶设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |