基于三维点云的表面缺陷检测方法、装置及存储介质与流程

文档序号:26142492发布日期:2021-08-03 14:27阅读:1003来源:国知局
基于三维点云的表面缺陷检测方法、装置及存储介质与流程

本发明涉及机器视觉与图像处理技术领域,尤其是涉及一种基于三维点云的表面缺陷检测方法、装置及存储介质。



背景技术:

产品的表面缺陷主要包括体积、形态、长度等的差异,如产品表面凸起、凹陷、空洞、破损等问题。产品的外观表面存在缺陷,不仅影响了用户体验,还有可能会对使用者造成损失,甚至还会发生安全事故,如火车钢轨表面存在缺陷会降低其使用寿命,存在安全隐患。

目前,产品表面的缺陷检测主要分为人工检测和自动化检测。其中,人工检测是依靠人的眼睛来进行产品外观质量的检测,但人的眼睛会疲劳,并且不同的人对缺陷的判断标准不一,必定会存在漏判和误判等情况。自动化检测主要通过机器视觉设备获取产品的表面数据并采用相应的算法对表面数据进行处理和判断,具有精度高、效果直观和检测效率高的优势,并被广泛运用到电路板生产、电子器件外观检测、工农业生产等众多领域中。机器视觉检测是指在一定的光照环境下,使用某种光学图像传感器,去采集一个产品的表面数据并在传感器内部的感光元件中生成二维图像或三维点云,经过后续的视觉算法处理来提取感兴趣的目标信息。

在现有的产品表面缺陷检测技术中,包括二维视觉缺陷检测和三维视觉缺陷检测。其中,二维缺陷检测技术运用了很多成熟的数字图像处理技术,具有快速高效、易于实现的特点。但是,以图像为载体的二维检测只能识别产品的灰度、纹理、轮廓等信息,并且缺陷检测的准确度在很大程度上取决于产品的成像质量,还难以体现出样品的深度、高度等三维特性。

三维视觉缺陷检测,是使用三维相机扫描产品表面获得点云数据(点云数据包含产品的三维空间坐标和表面强度等信息,能够表现产品的三维特性),将点云数据进行一系列三维点云算法(如噪声去除、精简采样、三维数据匹配、曲面重建等)的处理后再与标准样品的点云模型数据进行比对,从而判断出产品表面是否存在缺陷。与二维平面图像相比,三维点云数据能更好的体现出产品表面的划痕、凹槽、破损等三维空间缺陷。但是,使用三维相机获取的原始点云数量级较大,并且分布情况复杂不均,存在很多噪声和冗余数据,因此降低了缺陷检测的效率和精度;三维点云数据具有离散型,处理难度大,原有的二维图像的处理算法已经不再适用。



技术实现要素:

本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种基于三维点云的表面缺陷检测方法,能够在不影响精度的前提下,提高运算效率,并且精准地检测出了样品表面的缺陷信息。

第一方面,本发明的一个实施例提供了基于三维点云的表面缺陷检测方法,包括:

获取原始点云,所述原始点云通过三维相机扫描待测样品表面获取;

获取所述原始点云中每一个点的贡献度,并根据所述贡献度对原始点云进行精简采样获得待测点云;

获取标准模型点云,将待测点云与标准模型点云进行配准,使得待测点云与标准模型点云对齐到同一位置;

根据配准后的待测点云与标准模型点云进行比较来检测缺陷,获取待测样品表面的缺陷特征量。

本发明实施例通过对原始点云进行精简采样,并在粗配准阶段引入法向量、角度、曲率等多种约束,和精配准阶段结合统计学距离、法向量、联合点云特征描述子的剔除策略,能够加快对点云数据的运算速度,提高了运算效率。本发明还通过在缺陷检测阶段采用点到重建表面投影的三位表面缺陷检测方式,能够在不影响精度的前提下,提高运算效率,并且精准地检测出了样品表面的缺陷信息。

进一步,获取所述原始点云中每一个点的贡献度,并根据所述贡献度对原始点云进行精简采样获得待测点云,包括:

获取标准模型点云,并在标准模型点云中确定与原始点云中每一点对应的匹配点;

获取所述原始点云中每一点到所述标准模型点云中相应的匹配点所在切面的第一投影距离;

通过将原始点云按照预设位移量进行移动,获取移动后的原始点云每一点到所述标准模型点云中相应匹配点所在切面的第二投影距离;

根据第一投影距离和第二投影距离的差值生成所述原始点云中每一点的贡献度;

将所述原始点云中贡献度大于或等于预设贡献度的点组成待测点云。

本发明通过对原始点云做微小移动引起的变化量来衡量原始点云每个点的贡献度,并采样贡献度大的点,从而实现对密度较大、冗余信息较多的原始点云进行精简的同时,最大程度地保留了原始点云中的重要信息,提高后续缺陷检测的效率和精度。

进一步,所述将待测点云与标准模型点云进行配准,使得待测点云与标准模型点云对齐到同一位置,包括:

通过共面四点一致算法将待测点云和标准模型点云进行粗配准;

通过icp算法获取待进行粗匹配后的待测点云和所述标准模型点云中所有的匹配点对,所述每一匹配点对包括点pi和qi,所述pi是待测点云中的点,所述qi是pi在标准模型点云中对应的匹配点;

通过预设剔除策略剔除配准过程中出现的错误配准点对,实现精配准。

进一步,所述通过共面四点一致算法将待测点云和标准模型点云进行粗配准,包括:

在待测点云中选取多个共面四点对构成基础点对集,所述每一共面四点对在同一平面但其中任意三点不在同一直线上;

获取预设距离误差,根据预设误差距离在标准模型点云中获取与每一共面四点对相对应的共面匹配点对集;

通过奇异值分解算法获取每一共面匹配点对集中每个点的刚体变换参数,选取最优的刚体变换参数对应的四个共面匹配点作为共面四点对最优匹共面配点对。

进一步,在所述待测点云中选取的每一共面四点对符合第一预设条件,每一所述共面匹配点对集中的共面匹配点对符合第二预设条件;

所述第一预设条件包括:每一所述共面四点对中至少有一对点之间的法向量方向的第一夹角大于第一预设夹角阈值;

所述第二预设条件包括:

所述共面四点对中四个点对角连线构成的夹角为第二夹角,在标准模型点云中每一共面匹配点对的四个点的对角连线构成与所述第二夹角对应的第三夹角,所述第二夹角和第三夹角的差的绝对值小于或等于第二夹角阈值;

获取所述共面匹配点对集中的点与在所述共面四点对中对应的点之间的平均曲率,所述平均曲率的差的绝对值小于或等于预设曲率阈值。

进一步,所述预设剔除策略包括以下一种或多种:基于统计学距离的剔除策略、基于点云法向量夹角的剔除策略、基于联合特征描述子的剔除策略;其中,

所述基于统计学距离的剔除策略包括:计算每一匹配点对中点pi到点qi所在切平面的直线距离,所述每一匹配点对包括两个点pi和qi,所述pi是待测点云中的点,所述qi是pi在标准模型点云中对应的匹配点;根据所有匹配点对的所述直线距离计算所有匹配点对的直线距离平均值和直线距离标准差,根据直线距离平均值和直线距离标准差剔除错误匹配点对;

所述基于点云法向量夹角的剔除策略包括:计算每一匹配点对中两点的法向量的第四夹角;获取第三预设夹角阈值,将第四夹角大于第三预设夹角阈值的匹配点对作为错误匹配点对进行剔除;

所述基于联合特征描述子的剔除策略:比较每一所述匹配点对中两个点的upf特征,获取特征差异;获取特征预设阈值,所述匹配点对的特征差异超出所述特征预设阈值时,将所述匹配点对作为错误匹配点对进行剔除。

本发明在待测点云和标准模型点云的配准过程中,对粗配准阶段的共面四点一致算法引入法向量、角度、曲率等多种约束,提高了共面四点集的搜索效率;对于精配准阶段中错误配准点对,设计了一种结合统计学距离、法向量、联合点云特征描述子的剔除方法,提高了剔除错误匹配点对的成功率,因此,本发明通过“先粗后精”的配准方法,加快了配准过程的速度和提高了配准的精度。

进一步,所述根据配准后的测点云数据与标准模型点云进行缺陷检测包括:

通过移动立方体算法重建标准模型表面三角网络,以及通过kd-搜索树获取待测点云中每一点在所述标准模型表面三角网络上对应的间距最小的三角形作为三角面片;

将待测点云中每一点投影到对应的三角面片获取每一投影点的方向和距离;

根据投影点的方向和距离、所述三角面片的法向量,将所有三角面片分为凹缺陷三角面片、凸缺陷三角面片和缺失型面片;

根据凹缺陷三角面片、凸缺陷三角面片和缺失型三角面片获取所述样品存在的缺陷的位置、表面积和体积。

进一步,所述根据投影点的方向和距离、所述三角面片的法向量,将所有三角面片分为凹缺陷三角面片、凸缺陷三角面片和缺失型三角面片,包括:

所述投影点的距离大于预设指定阈值,并且所述投影点的方向与所述三角面片的法向量相同时,所述三角面片为凹缺陷三角面片;

所述投影点的距离大于预设指定阈值,并且所述投影点的方向与所述三角面片的法向量不相同时,所述三角面片为凸缺陷三角面片;

既不是凹缺陷三角面片,又不是凸缺陷三角面片的三角面片为缺失型三角面片。

本发明在缺陷检测过程中,通过移动立方体算法重建标准模型表面三角网络并获取三角面片,然后根据待测点云在三角面片上的投影点的方向和距离检测出每一三角面片的缺陷问题并进行分类,从而计算出原始点云是否存在缺陷,若存在缺陷还能够计算出缺陷的位置、表面积、体积等特征量。

第二方面,本发明的一个实施例提供了一种基于三维点云的表面缺陷检测装置,包括处理器和所述处理器通信连接的存储器;其中,所述存储器存储有可被处理器执行的指令,使得所述处理器能够执行如上所述的基于三维点云的表面缺陷检测方法。

第三方面,本发明的一个实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机只执行的指令,所述计算机可执行的指令用于使计算机执行如上所述的基于三维点云的表面缺陷检测方法。

本发明的基于三维点云的表面缺陷检测方法相较于传统二维图像缺陷检测在划痕、凹槽、破损等三维空间缺陷有明显的优势,包含的细节更加丰富,对缺陷的体积、表面积等空间信息的检测更加准确。另外,在与传统三维检测技术的对比中,通过获取贡献度对原始点云进行精简、在四点一面算法中引入多种约束、在剔除错误匹配点中结合多种特征、在缺陷检测中采用移动立方体算法重建标准模型表面三角网络,不仅提高了缺陷检测的精度,还有明显的速度优势。结果表明,在不影响精度的前提下,本方法对点云精简和点云配准的改进提高了运算效率,并且精准地检测出了样品表面的缺陷信息,为后续的修复和复检提供了量化依据。

附图说明

图1是本发明实施例中基于三维点云的表面缺陷检测方法的一具体实施例流程示意图;

图2是本发明实施例中基于三维点云的表面缺陷检测方法中获取原始点云中每一个点的贡献度的一具体实施例流程示意图;

图3是本发明实施例中基于三维点云的表面缺陷检测方法中将待测点云与标准模型点云进行配准的一具体实施例流程示意图;

图4是本发明实施例中基于三维点云的表面缺陷检测方法中将待测点云和标准模型点云进行粗配准的一具体实施例流程示意图;

图5是本发明实施例中基于三维点云的表面缺陷检测方法中共面四点对和共面匹配点对的一具体实施例示意图;

图6是本发明实施例中基于三维点云的表面缺陷检测方法中根据配准后的待测点云与标准模型点云进行比较来检测缺陷的一具体实施例流程示意图。

具体实施方式

以下将结合实施例对本发明的构思及产生的技术效果进行清楚、完整地描述,以充分地理解本发明的目的、特征和效果。显然,所描述的实施例只是本发明的一部分实施例,而不是全部实施例,基于本发明的实施例,本领域的技术人员在不付出创造性劳动的前提下所获得的其他实施例,均属于本发明保护的范围。

在本发明实施例的描述中,如果涉及到“若干”,其含义是一个以上,如果涉及到“多个”,其含义是两个以上,如果涉及到“大于”、“小于”、“超过”,均应理解为不包括本数,如果涉及到“以上”、“以下”、“以内”,均应理解为包括本数。如果涉及到“第一”、“第二”,应当理解为用于区分技术特征,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。

参考图1,图1是具体本发明实施例的基于三维点云的表面缺陷检测方法,包括以下步骤。

步骤s1,获取原始点云,原始点云具体可通过三维相机扫描待测样品表面获取。

采用三维相机获取的原始点云数量级较大,且分布情况复杂不均,存有很多噪声和冗余数据,降低了缺陷检测的效率和精度,因此需要对原始点云进行精简和采样,本发明实施例通过以下步骤在精简数据量和去噪的同时,最大程度地保留重要信息。

步骤s2,获取原始点云中每一个点的贡献度,并根据所述贡献度对原始点云进行精简采样获得待测点云。

针对原始点云数据密度较大,存在冗余信息的问题,本发明实施例提出了一种基于点对配准贡献度对原始点云进行精简采样,将配准阶段的误差函数引入到采样阶段,通过微小移动引起的误差变化来衡量点对配准的贡献度,进而采样贡献度大的点,具体实现过程如图2所示。

步骤s21,获取标准模型点云,并在标准模型点云中确定与原始点云中每一点对应的匹配点。

具体地,先获取与本实施例待测样品对应的标准样品的标准模型点云,标准模型点云是通过三维相机采集标准样品表面的三维数据。假设p是原始点云,p是原始点云p中某个特定的采样点;q是标准模型点云,q是标准模型点云q中p的对应匹配点。

步骤s22,获取原始点云中每一点到标准模型点云中相应的匹配点所在切面的第一投影距离。

本实施例中原始点云p内某点pi到标准模型点云q内匹配点qi处所在切平面的投影距离可以根据公式(1)计算获得,公式(1)如下所示:

其中,pi为原始点云p中的某特定点,qi为经刚体变换后pi点在标准模型点云q中的匹配点,ni为qi处的法向量。当旋转矩阵r比较小时,可以把r进行向量线性化近似,即点pi进行的运算由rpi+t变为[r×pi+t],其中r=(rx,ry,rz)代表旋转向量,t=(tx,ty,tz)代表平移向量,投影距离函数由(1)式变为(2)式:

本发明实施例可以通过公式(2)获取原始点云中每一点的第一投影距离,当然,在具体实现时,第一投影距离也可以根据其他方式计算获取。

步骤s23,通过将原始点云按照预设位移量进行移动,获取移动后的原始点云每一点到标准模型点云中相应匹配点所在切面的第二投影距离。

步骤s24,根据第一投影距离和第二投影距离的差值生成原始点云中每一点的贡献度,然后将原始点云中贡献度大于或等于预设贡献度的点组成待测点云。

将原始点云按照预设位移量进行移动后,同样通过公式(2)计算第二投影距离,然后计算原始点云每一点的第一投影距离和第二投影距离的差值作为其贡献度。本发明实施例通过挑选贡献度大于或等于预设贡献度对原始点云进行精简,并将贡献度高的点放在待测点云的数据集中,剔除了贡献度低的点,因此本发明能够在精简数据量和去噪的同时,最大程度地保留了原始点云的重要信息。

在本发明的另一个实施例中,可以直接根据预设位移量来获取原始点云中每一点的贡献度。具体地,本发明实施例通过对点pi进行轻微扰动即将原始点云按照预设位移量进行移动,则移动后的原始点云p中的任意点pi到qi所在切平面的距离的变化量如公式(3)所示:

若是点pi在平移空间中做微小的平移,δd是保持不变的;或者在旋转空间中,点pi做微小的旋转,δd同样是保持不变的。在这两种情况下,原始点云的点pi可能是位于一个比较平坦的曲面上,在点云配准流程里的贡献度较低,而冗余度比较高,原始点云中存在这两种情况的点不采样(即不加入待测点云中)。

在本发明实施例中,原始点云中每一点的贡献度还可以根据以下方法计算:

具体地,对公式(2)进行偏微分,可以把其转换成一个线性系统cx=b求解,其中x是6×1的向量,代表6个刚体变换参数,b是配准偏差,c是由每组对应点对得到的协方差矩阵,如(4)式所示,协方差矩阵c评估了当原始点云p相对于标准模型点云q做微小移动时,影响总体配准偏差变化的程度,目标能量函数e的变化量δe如(5)式所示。

同样使用svd(奇异值分解法)法对公式(4)的矩阵c进行分解,计算得6个特征向量x1、x2、…、x6,及其对应的6个特征值λ1、λ2、…、λ6,每个特征向量都代表着一个移动,由绕着某个轴的旋转分量和沿着轴的平移分量组成。假设矩阵c的6个特征值满足λ1≥λ2≥λ3≥λ4≥λ5≥λ6,若任意一个特征值λk与λ1的差别很小,则表示其沿着任意一个特征向量方向移动,对目标能量函数的影响都很大,即对点云配准的贡献度较大。本发明实施例的采样判别标准为c=λ1/λ6,本实施例的采样规则是让c尽可能接近1的点采集到待测点云中。

步骤s3,获取标准模型点云,将待测点云与标准模型点云进行配准,使得待测点云与标准模型点云对齐到同一位置。

在对原始点云进行精简获得待测点云后,需要对待测点云与标准模型点云配准,本发明实施例的配准过程包括粗配准和精配准,具体实现过程参考图3。

步骤s31,通过共面四点一致算法将待测点云和标准模型点云进行粗配准。

本发明是实施例采用fpcs(four-pointcongruentsets,共面四点一致)算法。其中,fpcs算法的是点对间的仿射关系(距离、比例等)在空间刚体变换中是保持不变的。

通过共面四点一致算法将待测点云和标准模型点云进行粗配准的具体步骤如图4所示,包括:

步骤s311,在待测点云中选取多个共面四点对构成基础点对集,每一共面四点对在同一平面但其中任意三点不在同一直线上。

例如,在待测点云的数据集p中选取四个点a、b、c、d为一个共面四点对,满足处于一个平面但任意三个不在一条直线的条件,求得其交点e,并根据交点e计算两个仿射变换比例r1、r2,这两个仿射比例值在刚体变换中是保持不变的。

本发明在原始点云p中挑选一些共面四点对,构成基础点对集b={b1,b2,…,bn}。通常情况下,在挑选时是先在点云空间中不同位置选取三个距离相差较大的点,同时满足不在同一条直线的条件,之后再挑选能够与这三个点在偏差范围里处于一个平面的第四个点,且这四个点中任意三点不在一条直线,构建共面四点对。

步骤s312,获取预设距离误差,根据预设误差距离在标准模型点云中获取与每一共面四点对相对应的共面匹配点对集。

本发明实施例利用仿射比例值在刚体变换中是保持不变的原理,首先在标准模型点云q中,任选两点q1、q2,根据在待测点云p中得到的仿射不变比例r1、r2,由(6)式计算其中间点e1、e2:

在标准模型点云q中,若有两组这样的点a′、b′和c′、d′,一组由r1计算得到的e1与另一组由r2计算得到的e2之间的误差在预设距离误差(预设距离误差根据用户对配准的精准度的需求设定)内,那么这两组点可能是待测点云p中共面四点对a、b、c、d经刚体变换后的对应匹配点。标准模型点云q中可能存在多组点a′、b′和c′、d′符合预设距离误差的要求,标准模型点云q中所有符合要求的点构成共面匹配点对集。

对于给定的共面四点对bi={a,b,c,d}和预设距离误差ε,计算两段距离d1=||a-b||、d2=||c-d||,先从标准模型点云q中搜索距离在d1±ε和d2±ε范围内的点对s1、s2,然后在s1、s2中依据仿射不变的规则计算中间点e,寻找和bi可能形成匹配的共面匹配点对集u={u1,u2,…,un}。

步骤s313,通过奇异值分解算法获取每一共面匹配点对集中每个点的刚体变换参数,选取最优的刚体变换参数对应的四个共面匹配点作为共面四点对最优匹共面配点对。

对u中的每个匹配4点对ui,使用svd分解法求解刚体变换关系ti,并且统计标准模型点云q有多少点与待测点云p之间的距离小于给定阈值δ。可以采用ann(approximatenearestneighbor,近似最近邻搜索算法)来提高判断速度,具体来说,先从标准模型点云q中选择一部分点使用ti进行刚体变换,统计其与待测点云p中由多少点距离在给定阈值δ范围内。若统计到足够多的点,那么对其余的点也进行同样的计算,并且对ti打分(如1/mse),最后选择分数最高的作为最优刚体变换参数ti。对于b中的每个bi,都进行上述步骤的计算,直到得到最终的最优刚体变换参数topt,将最优刚体变换参数topt对应的四个共面匹配点作为最优共面匹配点对,然后根据最优共面匹配点对将待测点云和标准模型点云进行粗配准。

在本实施例中,影响fpcs算法计算效率的因素主要有两个:一是在待测点云p中基础点对集合b的挑选,二是在标准模型点云q中共面匹配点对集u的搜寻。本实施例为了能够挑选特征更明显,代表性更强的基础共面四点对,同时减少在标准模型点云q中可能匹配的共面匹配点对集中点对的数量,加快fpcs算法的收敛速度,本发明实施例提出以下两个优化条件:一、在待测点云中选取的每一共面四点对符合第一预设条件;二、每一所述共面匹配点对集中的共面匹配点对符合第二预设条件。

其中,本实施例的第一预设条件包括:每一所述共面四点对中至少有一对点之间的法向量方向的第一夹角大于第一预设夹角阈值。

具体地,本发明实施例的缺陷检测算法在挑选基础点对集b时,引入法向量的约束,提高提取到的共面四点对的代表性,同时减少集合b中点的数量。例如,{p1,p2,p3,p4}是从待测点云p中提取到的一组共面四点对,除了要满足上述提到的任意三点不共线和分布广的要求外,还要满足这四个点中至少有一对点的法向量方向夹角大于第一预设夹角阈值τ。

本实施例的第二预设条件包括:所述共面四点对中四个点对角连线构成的夹角为第二夹角(例如该第二夹角小于90°),在标准模型点云中每一共面匹配点对的四个点的对角连线构成与第二夹角对应的第三夹角,第二夹角和第三夹角的差的绝对值小于或等于第二夹角阈值;获取共面匹配点对集中的点与在共面四点对中对应的点之间的平均曲率,平均曲率的差的绝对值小于或等于预设曲率阈值。

具体地如图5所示,在标准模型点云q中获取的可能匹配的共面匹配点对时,除了要考虑仿射不变的要求外,还要引入交线夹角度数和平均曲率的约束。例如,一组共面四点对中的p1p2与p3p4之间的夹角θ1与标准模型点云中对应的匹配点对q1q2与q3q4之间的夹角θ2要满足|θ1-θ2|≤ε,同时每一个对应点对{pi,qi}间的平均曲率{cpi,cqi}要满足|cpi-cqi|≤τ,其中ε、τ是由用户预先定义的第二夹角阈值和预设曲率阈值。本发明的缺陷检测方法引入了这两个约束之后,将大大减少可能的匹配点集u中点的数量,从而提高验证和计算的效率。

步骤s32,通过icp算法获取待进行粗匹配后的待测点云和所述标准模型点云中所有的匹配点对,每一匹配点对包括点pi和qi,pi是待测点云中的点,qi是pi在标准模型点云中对应的匹配点。

步骤s33,通过预设剔除策略剔除配准过程中出现的错误配准点对,实现精配准。其中,预设剔除策略包括以下一种或多种:基于统计学距离的剔除策略、基于点云法向量夹角的剔除策略、基于联合特征描述子的剔除策略。

对于基于统计学距离的剔除策略,该策略是计算每一匹配点对中点pi到点qi所在切平面的直线距离,每一匹配点对包括两个点pi和qi,pi是待测点云中的点,qi是pi在标准模型点云中对应的匹配点;根据所有匹配点对的直线距离计算所有匹配点对的直线距离平均值和直线距离标准差,根据直线距离平均值和直线距离标准差剔除错误匹配点对。

例如,对待测点云p与标准模型点云q中每组配准点对pi、qi,计算pi到qi处点云切平面的间距di=||pi-qi||·nqi。假设di的分布满足高斯分布,统计计算所有di的平均值μd和标准差σd,本发明将满足(7)式的匹配点对剔除,因为其距离相差太大,在很大概率是误匹配点对。

di>μd+ασd(7)

上式中α是标准差系数,可以设置其大小来调节剔除的力度。

对于基于点云法向量夹角的剔除策略包括,该策略是计算每一匹配点对中两点的法向量的第四夹角;获取第三预设夹角阈值,将第四夹角大于第三预设夹角阈值的匹配点对作为错误匹配点对进行剔除。

例如,对于待测点云p和标准模型点云q中每对匹配点pi、qi,计算其对应法向量的夹角θ(npi,nqi)。因为在点云粗配准过程后,两片点云已经达到基本对齐的位置,对应匹配点的法向量方向应该是相似的,若其法向量之间夹角过大,那么很有可能这对匹配点是无匹配的,应该剔除。本发明通过给定夹角度数阈值θτ(即第三预设夹角阈值),去除满足θ(npi,nqi)>θτ的匹配点对pi、qi。

对于基于联合特征描述子的剔除策略,该策略是比较每一匹配点对中两个点的upf特征,获取特征差异;获取特征预设阈值,匹配点对的特征差异超出特征预设阈值时,将匹配点对作为错误匹配点对进行剔除。

具体地,本发明的缺陷检测方法比较待测点云p和标准模型点云q中每对匹配点pi、qi的upf特征,衡量其特征差别,若差别大于给定阈值,则应该将其当做误匹配点对剔除。

本发明可以同时使用上述三种策略来进行误匹配点对的剔除,尽最大可能减少误匹配点对的数量,也可结合实际场景选取其中一种或两种。本发明实施例的缺陷检测方法通过将精简后的原始点云(即待测点云)进行配准,在“先粗后精”的配准思路下,对粗配准阶段的fpcs算法引入法向量、角度、曲率等多种约束,提高共面四点集搜索效率。并且针对精配准阶段的错误配准点对剔除问题,设计了一种结合统计学距离、法向量、联合点云特征描述子的剔除策略,提高了错误匹配点对的去除程度,加速配准算法的收敛。

步骤s4,根据配准后的待测点云与标准模型点云进行比较来检测缺陷,获取待测样品表面的缺陷特征量。

在将待检测点云数据与标准模型点云数据对齐到同一位置后,就可以做相互比对来对待测样品进行缺陷检测。在此阶段,本发明实施例的缺陷检测方法先使用mc(marchingcubes,移动立方体)算法重建标准模型表面的三角网络,之后将待检测点云投影到三角形面片上,根据投影点的方向和距离进行聚类,进而计算出缺陷的位置、表面积、体积等特征量,具体步骤如图5所示。

步骤s41,通过移动立方体算法重建标准模型表面三角网络,以及通过kd-搜索树获取待测点云中每一点在标准模型表面三角网络上对应的间距最小的三角形作为三角面片。

得到标准模型点云表面三角网络后,本发明通过每个三角面片的端点坐标所确定的平面来计算法向量。由于计算得到的法向量方向会存在正负两个方向,不同的法向量方向会对后续缺陷检测造成影响。本发明实施例规定,朝向标准模型点云的模型外侧的法向量方向为正方向,可以利用区域生长传播的方式调整整个三角网络的法向量方向,整个三角网络法向量方向的确定过程如下:

步骤一,挑选z轴方向坐标值最小的点所在的三角面片t当为种子三角面片,将其法向量方向调整为朝外侧的正确方向nt;步骤二,对于与t的三条边分别相邻的三个三角形t1、t2、t3,若其法矢ni满足nt·ni<0,表明cos(nt,ni)<0,此时将ni反向,否则保持ni方向不变;步骤三,将t1、t2、t3作为新的种子三角形,重复上述过程,进行广度优先遍历,直到所有三角形面片的法向量方向都调整为正确的朝向。

本发明由于采用三维相机扫描到的点云数据只包含x,y,z三个坐标位置信息,所以通常可以检测出待测样品表面缺失或者凹凸类型等缺陷。本发明实施例的具体缺陷检测过程如图5所示:

步骤s42,将待测点云中每一点投影到对应的三角面片获取每一投影点的方向和距离。

具体地,对于待测点云数据p中的每个点pi,使用kd-搜索树搜寻在标准模型点云q的表面三角网络上间距最小的三角形面片tr;然后从qi点向该三角面片tr做投影,得到垂足点坐标q′。

步骤s43,根据投影点的方向和距离、三角面片的法向量,将所有三角面片分为凹缺陷三角面片、凸缺陷三角面片和缺失型面片。

具体地,由用户设定预设指定阈值,当投影点的距离大于预设指定阈值,并且投影点的方向与三角面片的法向量相同时,该三角面片为凹缺陷三角面片;当投影点的距离大于预设指定阈值,并且投影点的方向与所述三角面片的法向量不相同时,该三角面片为凸缺陷三角面片;若既不是凹缺陷三角面片,又不是凸缺陷三角面片的三角面片,则为缺失型三角面片。

例如,若向量qq′的长度||qq′||小于或等于指定阈值τ,则说明待测样品中q点位置的表面没有缺陷。若向量qq′的长度||qq′||大于指定阈值τ,且向量方向与三角面片tr的法向量方向相同,则该三角面片为凹缺陷三角面片,把tr与q一同加入凹缺陷队列;若与tr的法向量方向相反,则该三角面片为凸缺陷三角面片,则加入凸缺陷队列。然后遍历标准模型点云q的表面三角网络中每个三角面片,若其既没有加入凹缺陷队列也没有加入凸缺陷队列,说明没有点投影到这个三角面片上,则该三角面片为缺失型三角面片,将其加入缺失缺陷队列中。

步骤s44,根据凹缺陷三角面片、凸缺陷三角面片和缺失型三角面片获取所述样品存在的缺陷的位置、表面积和体积。

具体地,通过遍历凹缺陷队列、凸缺陷队列和缺失缺陷队列中每个三角面片,并采用区域生长传播的方法,将两个三角形存在一条边是重合的归并聚类,直到每个队列中剩下的都是彼此不相邻,独立的缺陷三角面片。

然后统计每个缺陷三角面片的表面积(即将每个缺陷面片中的所有三角形面积相加),将面积小于指定阈值的缺陷过滤掉,因为其可能是噪声或者是3d相机的系统误差造成的。对于过滤后的每个缺陷面片,若属于缺失类型的缺陷,则可得到缺失部分的表面积和位置;若属于凹凸类型的缺陷,利用其上的投影点坐标和投影距离进行体积分,得到凹凸缺陷的体积和位置,从而确定各种类型缺陷的位置和表面积、体积等信息。

本发明的缺陷检测方法相较于传统二维图像缺陷检测在划痕、凹槽、破损等三维空间缺陷有明显的优势,包含的细节更加丰富,对缺陷的体积、表面积等空间信息的检测更加准确。并且,在与传统三维检测技术的对比中,又有明显的速度优势。使用实拍点云模型,对传统算法的改进和缺陷检测思路进行验证。通过试验表明,在不影响精度的前提下,本发明的缺陷检测方法对点云精简和点云配准的改进提高了运算效率,并且精准地检测出了样品表面的缺陷信息,为后续的修复和复检提供了量化依据。

一种基于三维点云的表面缺陷检测装置,包括处理器和所述处理器通信连接的存储器;其中,所述存储器存储有可被处理器执行的指令,使得所述处理器能够执行如图1-6对应实施例所述的基于三维点云的表面缺陷检测方法。

本实施例中的表面缺陷检测装置与上述图1-6对应实施例中的表面缺陷检测方法属于同一构思,其具体实现过程详细见对应的方法实施例,且方法实施例中的技术特征在本设备实施例中均对应适用,这里不再赘述。

一种计算机可读存储介质,所述计算机可读存储介质存储有计算机只执行的指令,所述计算机可执行的指令用于使计算机执行如图1-6对应实施例所述的基于三维点云的表面缺陷检测方法。

本实施例中的计算机可读存储介质与上述图1-6对应实施例中的表面缺陷检测方法属于同一构思,其具体实现过程详细见对应的方法实施例,且方法实施例中的技术特征在本设备实施例中均对应适用,这里不再赘述。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成。实施例中的各功能单元、模块可以集成在一个处理器中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的实施例中,应该理解到,所揭露的表面缺陷检测方法、装置及存储介质,可以通过其它的方式实现。例如,以上所描述的表面缺陷检测装置实施例仅仅是示意性的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理器中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或界面切换设备、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。

上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。此外,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1