视点路径规划方法、装置、电子设备及存储介质

未命名 07-27 阅读:88 评论:0


1.本发明涉及路径规划技术领域,尤其涉及一种视点路径规划方法、装置、电子设备及存储介质。


背景技术:

2.随着机器人技术和智能制造的快速发展,各种工业产品的生产自动化程度得到不断提升,而在其生产过程中,表面外观检测直接影响到了产品的质量及后续生产过程。当前产品的外观检测多是由人工完成,效率低下,因此迫切需要产品外观检测的自动化解决方案。
3.自动化外观检测装置按照质检对象的种类可分为平面对象检测装置和三维对象检测装置,目前的外观检测装置大多为根据质检对象特点进行定制化设计,且二维图像采集装置较多,对于曲线以及三维质检对象的检测较少。针对三维待检对象,通常需要多个相机分别安装于固定位置,以实现针对三维对象的多角度图像采集成像和检测。此外也有采取在机械臂末端装配相机等传感器,通过控制机械臂的运动以实现对象的多视角观测的方案,这种方案的核心在于相机观测轨迹的获取,目前主要包括人工示教和基于对象cad图纸的离线轨迹规划两种方式,但都需要将对象放置于固定已知的位置和方向。此外,对于实际工业场景中的检测对象,通常很难获取准确的cad图纸,而点云数据获取相对容易,通用性更强。
4.定制化检测方案针对不同的检测对象需要设计特定的检测装置和检测流程,通用性较差,复用性不强,容易造成资源浪费。而目前基于末端装配相机的机械臂的检测方案,大都需要提前规划好相机的扫描路径,且对象需要放置于固定的位置方向,无法适应对象位置发生变动的情况,开发难度较大,不利于实际使用和操作。基于人工示教的质检方案需要针对每种待检对象进行人工拖动示教,获得相应的视点位姿,这种方式耗时耗力,而且通用性较差。


技术实现要素:

5.针对现有技术存在的问题,本发明实施例提供一种视点路径规划方法、装置、电子设备及存储介质。
6.本发明提供一种视点路径规划方法,包括:
7.基于待检测目标的点云数据,确定所述待检测目标对应的边界点,面元实例,以及所述面元实例对应的面元类型;
8.基于所述面元类型对应的第一视点集合和所述边界点对应的第二视点集合,确定目标视点集合;
9.基于所述目标视点集合,确定视点遍历路径。
10.在一些实施例中,在所述面元类型为不规则曲面的情况下,所述面元类型对应的第一视点集合,通过以下方式确定:
11.在所述不规则曲面对应的面元实例中确定目标点;
12.基于相机最佳成像距离,在所述不规则曲面对应的面元实例中确定与所述目标点对应的最佳视点;
13.基于所述最佳视点未覆盖的点云数据,确定所述第一视点集合。
14.在一些实施例中,所述基于所述面元类型对应的第一视点集合和所述边界点对应的第二视点集合,确定目标视点集合,包括:
15.对所述第一视点集合和所述第二视点集合中的冗余视点进行筛选,确定第三视点集合;
16.基于所述第三视点集合中的任意两个视点的相似度,以及预设相似度阈值,确定视点对;
17.基于所述视点对,确定融合视点;
18.在确定第一点云数据覆盖第二点云数据的情况下,基于所述融合视点,确定所述目标视点集合;所述第一点云数据为所述融合视点覆盖的点云数据,所述第二点云数据为所述视点对覆盖的点云数据。
19.在一些实施例中,所述基于待检测目标的点云数据,确定所述待检测目标对应的边界点,面元实例,以及所述面元实例对应的面元类型,包括:
20.基于所述点云数据,以及训练好的模型,确定所述点云数据中每个点的类型、边界概率和嵌入特征;所述训练好的模型是通过带有目标标签的数据训练得到的;
21.基于所述每个点的类型、边界概率和嵌入特征,确定所述边界点、所述面元实例和所述面元类型。
22.在一些实施例中,所述基于所述每个点的类型、边界概率和嵌入特征,确定所述边界点、所述面元实例和所述面元类型,包括:
23.基于所述边界概率,确定所述边界点和内部点;
24.基于所述嵌入特征对所述内部点进行聚类,确定初始聚类簇;
25.基于所述边界点到所述初始聚类簇的中心的距离,确定目标聚类簇;
26.基于所述目标聚类簇,确定所述面元实例;
27.基于所述目标聚类簇内点的类型,确定所述面元类型。
28.在一些实施例中,所述基于所述目标视点集合,确定视点遍历路径,包括:
29.确定所述目标视点集合中任意两个目标视点之间的相似度;
30.基于所述任意两个目标视点之间的相似度,确定遍历所述目标视点的最短路径;
31.将所述最短路径进行拟合,确定所述视点遍历路径。
32.在一些实施例中,所述相似度的计算公式如下:
33.s
ij
=||vp
i-vpj||2·
(2-ni·
nj)
34.其中,s
ij
表示视点i和视点j的相似度,vpi表示视点i的坐标,vpj表示视点j的坐标,ni表示视点i的法向量,nj表示视点j的法向量。
35.本发明还提供一种视点路径规划装置,包括:
36.第一确定模块,用于基于待检测目标的点云数据,确定所述待检测目标对应的边界点,面元实例,以及所述面元实例对应的面元类型;
37.第二确定模块,用于基于所述面元类型对应的第一视点集合和所述边界点对应的
第二视点集合,确定目标视点集合;
38.第三确定模块,用于基于所述目标视点集合,确定视点遍历路径。
39.本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述视点路径规划方法。
40.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述视点路径规划方法。
41.本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述视点路径规划方法。
42.本发明提供的视点路径规划方法、装置、电子设备及存储介质,通过获取待检测目标的点云数据,根据点云数据确定对应的边界点和面元实例的面元类型,并根据面元类型对应的视点集合和边界点对应的视点集合得到目标视点集合,从而可以根据目标视点集合进行视点轨迹规划,可以大大节省人力,并且适用于各种类型的待检测目标,通用性较强。
附图说明
43.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
44.图1是本发明实施例提供的视点路径规划方法的流程示意图之一;
45.图2是本发明实施例提供的点云面元分割与边界预测网络的结构示意图;
46.图3是本发明实施例提供的平面、圆柱面、圆锥面和球面对应的视点示意图。
47.图4是本发明实施例提供的针对不规则曲面的视点生成方法的流程示意图;
48.图5是本发明实施例提供的视点路径规划方法的流程示意图之二;
49.图6是本发明实施例提供的视点路径规划装置的结构示意图;
50.图7是本发明实施例提供的电子设备的结构示意图。
具体实施方式
51.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
52.本发明的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,以便本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”所区别的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”一般表示前后关联对象是一种“或”的关系。
53.图1是本发明实施例提供的视点路径规划方法的流程示意图之一,如图1所示,本
发明实施例提供的视点路径规划方法,包括:
54.步骤101、基于待检测目标的点云数据,确定所述待检测目标对应的边界点,面元实例,以及所述面元实例对应的面元类型;
55.步骤102、基于所述面元类型对应的第一视点集合和所述边界点对应的第二视点集合,确定目标视点集合;
56.步骤103、基于所述目标视点集合,确定视点遍历路径。
57.需要说明的是,本发明提供的视点路径规划方法的执行主体可以是电子设备、电子设备中的部件、集成电路、或芯片。该电子设备可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本或者个人数字助理(personal digital assistant,pda)等,非移动电子设备可以为服务器、网络附属存储器(network attached storage,nas)、个人计算机(personal computer,pc)、电视机(television,tv)、柜员机或者自助机等,本发明不作具体限定。
58.在步骤101中,基于待检测目标的点云数据,确定所述待检测目标对应的边界点,面元实例,以及所述面元实例对应的面元类型。
59.待检测目标可以是二维目标或者三维目标,通过三维扫描仪或者对象的cad模型可以获取待检测目标表面的点云数据。
60.由于初始获取的点云数据可能存在分布不均匀的问题,且没有法向量,可以通过体素下采样获得固定数目且空间分布均匀的表面点云数据,以及通过主成分分析算法计算点云的法向量。
61.可将点云数据输入至预先训练好的模型,得到点云数据中每个点的类型、边界概率和嵌入特征。
62.其中,类型指的是每个点所属的面元的几何类型(包括:平面、圆柱面、球面、圆锥面和不规则曲面)。
63.边界概率指的是点为边界点的概率,取值范围为[0,1],取值越大,则该点为边界点的概率越大。
[0064]
嵌入特征用于区分不同实例的点,例如两个点属于不同的实例时,则嵌入特征间距离更远,若属于相同实例时,则距离更近。
[0065]
可选地,该模型是提前在abcparts数据集上进行训练得到的,训练集包含大量从cad模型中采样的点云样本,同时包含每个点的实例标签、类型标签、边界概率标签。
[0066]
可选地,通过将训练集中的点云输入模型中,根据模型输出结果与实际标签的差别计算损失函数,利用梯度反向传播更新模型权重,使得训练后的模型能够正确输出每个点的类型、边界概率和嵌入特征。
[0067]
根据预设的边界概率阈值和每个点的边界概率,确定内部点和边界点。
[0068]
对内部点采用mean-shift聚类算法,对实例嵌入特征进行聚类,得到初始聚类簇以及聚类中心。
[0069]
对所有边界点计算距离其最近的聚类中心,从而将其划分到相应的初始聚类簇中,得到目标聚类簇。从而每个目标聚类簇对应一个面元实例。
[0070]
根据面元实例中所有点的类型,确定该面元实例的面元类型。即面元类型包括:平
面、圆柱面、球面、圆锥面和不规则曲面。
[0071]
在步骤102中,基于所述面元类型对应的第一视点集合和所述边界点对应的第二视点集合,确定目标视点集合。
[0072]
将每个面元类型对应的面元实例,调用相应的视点生成方法,根据相机的成像距离、视场大小,计算得到针对每个类型已知面元实例的第一视点集合,每个视点包含视点坐标及朝向向量。
[0073]
可理解地,第一视点集合包括以下一项或者多项:平面对应的视点集合、圆柱面对应的视点集合、球面对应的视点集合、圆锥面对应的视点集合、不规则曲面对应的视点集合。
[0074]
此外考虑到边界区域的特殊性,将所有边界点作为单独的点云集合,调用视点生成算法得到针对边界点的视点,得到第二视点集合。
[0075]
将获得的所有视点集合进行融合,对相邻视点进行融合调整,得到目标视点集合。
[0076]
在步骤103中,基于所述目标视点集合,确定视点遍历路径。
[0077]
目标视点集合中的目标视点为一系列离散的视点,将目标视点作为节点构建完全连接图。
[0078]
若两个目标视点之间被待检测目标穿过,则将两个目标视点的边权值设为无穷大,否则将边权值设为两个目标视点的朝向向量的余弦距离与坐标的欧氏距离的乘积。
[0079]
然后利用动态规划算法获取一条最短的视点遍历路径。
[0080]
将获取的视点遍历路径发给表面质检平台,平台运动使得相机末端依次到达计算的视点位置,并以固定的姿态拍摄获取对象的外观图像,并发送给后台进行表面瑕疵检测。
[0081]
本发明实施例提供的视点路径规划方法,通过获取待检测目标的点云数据,根据点云数据确定对应的边界点和面元实例的面元类型,并根据面元类型对应的视点集合和边界点对应的视点集合得到目标视点集合,从而可以根据目标视点集合进行视点轨迹规划,可以大大节省人力,并且适用于各种类型的待检测目标,通用性较强。
[0082]
在一些实施例中,所述基于待检测目标的点云数据,确定所述待检测目标对应的边界点,面元实例,以及所述面元实例对应的面元类型,包括:
[0083]
基于所述点云数据,以及训练好的模型,确定所述点云数据中每个点的类型、边界概率和嵌入特征;所述训练好的模型是通过带有目标标签的数据训练得到的;
[0084]
基于所述每个点的类型、边界概率和嵌入特征,确定所述边界点、所述面元实例和所述面元类型。
[0085]
可选地,将点云数据输入至预先训练好的模型,得到点云数据中每个点的类型、边界概率和嵌入特征。
[0086]
该模型是提前在abcparts数据集上进行训练得到的,训练集包含大量从cad模型中采样的点云样本,同时包含每个点的目标标签,目标标签包括:实例标签、类型标签和边界概率标签。
[0087]
可选地,通过将训练集中的点云输入模型中,根据模型输出结果与实际标签的差别计算损失函数,利用梯度反向传播更新模型权重,使得训练后的模型能够正确输出每个点的类型、边界概率和嵌入特征。
[0088]
本发明实施例提供的视点路径规划方法,通过待检测目标的点云数据,确定待检
测目标对应的边界点,以及面元实例的面元类型,从而可以根据边界点对应的视点集合和面元类型对应的视点集合确定目标视点集合,为视点路径规划提供了准确的数据。
[0089]
在一些实施例中,所述基于所述每个点的类型、边界概率和嵌入特征,确定所述边界点、所述面元实例和所述面元类型,包括:
[0090]
基于所述边界概率,确定所述边界点和内部点;
[0091]
基于所述嵌入特征对所述内部点进行聚类,确定初始聚类簇;
[0092]
基于所述边界点到所述初始聚类簇的中心的距离,确定目标聚类簇;
[0093]
基于所述目标聚类簇,确定所述面元实例;
[0094]
基于所述目标聚类簇内点的类型,确定所述面元类型。
[0095]
根据预设的边界概率阈值和每个点的边界概率,将点云数据中的点分为内部点和边界点。
[0096]
可理解地,边界概率大于边界概率阈值的点为边界点,边界概率小于或等于边界概率阈值的点为内部点。
[0097]
对内部点采用mean-shift聚类算法,对实例嵌入特征进行聚类,得到初始聚类簇以及聚类中心。
[0098]
对所有边界点计算距离其最近的聚类中心,从而将其划分到相应的初始聚类簇中,得到目标聚类簇。每个目标聚类簇对应一个面元实例。
[0099]
根据面元实例中所有点的类型,确定该面元实例的面元类型。例如可统计每个面元实例中每个点的类型,将点的类型占比最大的类型作为该面元实例的类型。面元类型包括:平面、圆柱面、球面、圆锥面和不规则曲面。
[0100]
可选地,图2是本发明实施例提供的点云面元分割与边界预测网络的结构示意图,可以实现对点云面元分割和边界概率预测的联合优化,如图2所示,该网络结构主要包括:编码器、三个并行进行边界概率预测、面元分类和面元实例嵌入特征学习的解码器支路、边界感知的两阶段实例聚类模块。
[0101]
该网络需要提前在abcparts数据集上(包含大量从cad模型中采样的点云样本,同时包含每个点的实例标签、类型标签、边界概率标签)进行训练,具体来说通过将训练集中的点云输入网络中,之后根据网络输出结果与实际标签的差别计算损失函数,利用梯度反向传播更新网络权重,训练后的网络能够输出正确的点云类别、边界概率、实例嵌入特征(该特征用于区分不同实例的点,比如如果两个点属于不同的实例,那么它们的嵌入特征间距离更大,相反若属于相同实例,则距离更近)。
[0102]
实际场景下,按照数据处理的流程,可以分为以下步骤:
[0103]
端到端网络特征提取。输入待检测目标的表面点云和法向量,经过编码器得到点级中间层特征,之后中间层特征分别进入三个任务导向的网络支路,得到三个支路的每个点输出结果:边界概率、类型t∈{0,1,2,3,4}(分别表示平面、球面、圆柱面、圆锥面、不规则曲面)和嵌入特征。
[0104]
两阶段面元实例聚类。根据设定的边界概率阈值将点云分为内部点和边界点。首先对内部点采用mean-shift聚类算法对面元的实例嵌入特征进行聚类得到初始聚类簇以及聚类中心。之后对所有边界点计算距离其最近的聚类中心,从而将其划分到相应的面元实例中。
[0105]
面元类别判断。对得到的每个面元实例,根据所有点的类型投票确定该面元实例所属的面元类型(平面、圆柱面、球面、圆锥面和不规则曲面)。可以根据每个面元实例内,点云个数最多的类型作为该面元实例的面元类型。
[0106]
本发明实施例提供的视点路径规划方法,通过对内部点进行聚类,以及计算边界点到每个簇的中心的距离,将点云数据分为多个面元实例,并确定每个面元实例的类型,从而可以根据边界点对应的视点集合和面元类型对应的视点集合确定目标视点集合,为视点路径规划提供了准确的数据。
[0107]
在一些实施例中,在所述面元类型为不规则曲面的情况下,所述面元类型对应的第一视点集合,通过以下方式确定:
[0108]
在所述不规则曲面对应的面元实例中确定目标点;
[0109]
基于相机最佳成像距离,在所述不规则曲面对应的面元实例中确定与所述目标点对应的最佳视点;
[0110]
基于所述最佳视点未覆盖的点云数据,确定所述第一视点集合。
[0111]
面元类型可以包括:平面、圆柱面、球面、圆锥面、不规则曲面。不同类型的面元实例,可以采用不同的视点生成方法,根据相机的成像距离、视场大小计算得到针对每个类型已知面元实例对应的视点集合,视点包含坐标及朝向向量。
[0112]
图3是本发明实施例提供的平面、圆柱面、圆锥面和球面对应的视点示意图,参考图3,对于平面、圆柱面、圆锥面和球面类型的视点生成方法如下:
[0113]
基于规则面元曲率变化均匀的特征,根据相机成像的景深和视场范围将待检表面划分为网格,每个网格对应相机视点的有效覆盖范围。
[0114]
对于平面点云,首先计算其最小外接矩形。根据外接矩形的长宽与视点成像视场的长宽将外接矩形网格化划分为一系列小矩形,每个小矩形的中心点即对应一个候选视点。
[0115]
对于球面、圆柱面和圆锥面则用平行于底面圆的圆弧将曲面划分为若干块,圆弧间距为视场宽度,同时根据视场的长度在将每个圆弧划分为若干圆弧段,每个圆弧段的中心点即对应一个候选视点。
[0116]
假设所求中心点坐标为pj,法向量为nj,相机的最佳成像距离为l,则候选视点的坐标及法向量为:
[0117]
vpj=pj+l
·
nj,vnj=-njꢀꢀ
(1)
[0118]
其中,vpj表示候选视点的坐标,vnj表示候选视点的法向量。
[0119]
针对任意不规则曲面的视点生成方法,上述四种规则曲面之外的面元通常难以用二阶参数方程表示,曲率变化大,因此无法采用网格化方法求解。图4是本发明实施例提供的针对不规则曲面的视点生成方法的流程示意图,如图4所示,对于不规则曲面,其视点可通过以下方式生成:
[0120]
首先从不规则曲面对应的面元实例中随机选取一个点i,作为目标点。通过公式(1)计算点i对应的最佳视点j,同时根据相机成像约束计算该视点j覆盖的表面点云。
[0121]
相机的成像约束主要要求拍摄表面点位于相机的视场范围之内,同时相机的朝向向量与相机法向量间夹角须大于90
°

[0122]
例如,当表面点i与视点j满足以下公式(2)-(4)时,则可以确定视点j可以覆盖表
面点i。
[0123]dmin
≤||p
i-vpj||2≤d
max
ꢀꢀ
(2)
[0124][0125]
其中,i表示表面点,j表示最佳视点,d
min
表示相机成像距离的最小值,d
max
表示相机成像距离的最大值,pi表示表面点i的坐标,vpj表示最佳视点j的坐标,ni表示表面点i的法向量,vnj表示最佳视点j的法向量,θ
ij
表示表面点i与最佳视点j间的连线与ni之间的夹角。
[0126]
因此可以确定最佳视点所覆盖的表面点云集合,记为s
vp

[0127]
然后在最佳视点未覆盖的表面点云中,计算与最佳视点j距离最远的点,进而得到新的视点及新的视点所覆盖的表面点云。直至所有点被覆盖,输出视点集合,即得到不规则曲面对应的第一视点集合。
[0128]
边界对物体外观具有重要影响,但由于边界点云数量相比较少,因此该步骤针对所有边界点生成针对边界区域检测的视点,对于边界点的视点生成方法如下:
[0129]
首先根据步骤得到的边界概率,输入边界阈值thres,得到边界点。之后对所有边界点采用图4基于最远点采样的视点生成方法得到针对边界区域的视点集合。
[0130]
本发明实施例提供的视点路径规划方法,通过根据相机最佳成像距离,在不规则曲面中确定与目标点对应的最佳视点,并根据最佳视点所覆盖的点云数据,来生成对不规则曲面对应的视点,得到对应的视点集合,可以适用于所有的复杂曲面,提高了视点路径规划的通用性。
[0131]
在一些实施例中,所述基于所述面元类型对应的第一视点集合和所述边界点对应的第二视点集合,确定目标视点集合,包括:
[0132]
对所述第一视点集合和所述第二视点集合中的冗余视点进行筛选,确定第三视点集合;
[0133]
基于所述第三视点集合中的任意两个视点的相似度,以及预设相似度阈值,确定视点对;
[0134]
基于所述视点对,确定融合视点;
[0135]
在确定第一点云数据覆盖第二点云数据的情况下,基于所述融合视点,确定所述目标视点集合;所述第一点云数据为所述融合视点覆盖的点云数据,所述第二点云数据为视点对覆盖的点云数据。
[0136]
在得到所有面元类型对应的第一视点集合和边界点对应的第二视点集合之后,将所有视点集合融合为完整的视点集合。
[0137]
实际点云中许多视点可能存在冗余,因此将完整的视点集合中的冗余视点进行筛选和处理,得到候选视点集合,即第三视点集合。
[0138]
计算第三视点集合中任意两个视点的相似度,根据预设相似度阈值,得到视点对。
[0139]
相似度的计算公式如下:
[0140]sij
=||vp
i-vpj||2·
(2-ni·
nj)
ꢀꢀ
(5)
[0141]
其中,s
ij
表示视点i和视点j的相似度,vpi表示视点i的坐标,vpj表示视点j的坐
标,ni表示视点i的法向量,nj表示视点j的法向量。
[0142]
相似度越大,则表明两个视点越相似,可理解地,当相似度大于预设相似度阈值时,可以将该两个视点确定为视点对。
[0143]
依次取出视点对,计算视点对中两个视点的中间视点坐标平均值及法向量平均值,得到融合视点的坐标和法向量。
[0144]
判断融合视点是否能够覆盖视点对覆盖的表面点云,若可以覆盖,则删去视点对,将融合视点加入目标视点集合中。
[0145]
否则重复上述流程直至遍历完所有视点对,输出处理后的目标视点集合。
[0146]
本发明实施例提供的视点路径规划方法,通过对第一视点集合和第二视点集合中的冗余视点进行筛选,并根据视点之间的相似度,确定视点对,以及根据视点对确定融合视点,最终确定目标视点集合,为规划视点路径提供了准确的候选视点,提高了视点路径规划的效率。
[0147]
在一些实施例中,所述基于所述目标视点集合,确定视点遍历路径,包括:
[0148]
确定所述目标视点集合中任意两个目标视点之间的相似度;
[0149]
基于所述任意两个目标视点之间的相似度,确定遍历所述目标视点的最短路径;
[0150]
将所述最短路径进行拟合,确定所述视点遍历路径。
[0151]
可选地,目标视点集合中包括一系列离散的视点,可将视点路径规划问题看作旅行商问题(traveling salesman problem,tsp),通过求解最短遍历路径得到能够完整遍历所有视点的无碰撞最短路径。
[0152]
将目标视点集合中的所有目标视点看作是图节点,根据公式(5)可以计算得到两个目标视点之间的相似度,将相似度作为图节点的边权值。
[0153]
为了避免运动过程中与待检对象发生碰撞,对可能发生碰撞的两节点连接边做处理,若两节点连线穿过待检对象点云,则将其边权值赋值为无穷大。
[0154]
基于得到的视点连接图,利用动态规划方法得到完整遍历所有视点的路径。
[0155]
为了将得到的离散视点路径变换为连续平滑的运动轨迹,可以通过多项式插值和四元数球面线性插值对向量两视点的坐标平移和方向旋转进行插值得到完整的末端运动轨迹。
[0156]
将获取的视点遍历路径及运动轨迹传给外观质检平台,之后平台沿着计算得到的末端轨迹运动使得相机末端依次到达计算的视点位置,并以固定的姿态拍摄获取对象的外观图像,并发送给后台进行表面瑕疵检测。以ur5作为检测平台,在仿真软件上测试对手机中框的表面质检。
[0157]
本发明实施例提供的视点路径规划方法,通过根据目标视点集合中任意两个目标视点之间的相似度,确定遍历目标视点的最短路径,将最短路径进行拟合,得到视点遍历路径,视点遍历路径可用于外观质检平台对待检测目标进行外观检测。
[0158]
图5是本发明实施例提供的视点路径规划方法的流程示意图之二,如图5所示,本发明实施例提供的视点路径规划方法,包括:
[0159]
步骤501、待检测目标表面点云获取及预处理。
[0160]
利用三维扫描仪或对象cad模型获取待检测目标的表面三维点云,同时通过主成分分析算法计算点云的法向量以及点云体素下采样获得密度相对均匀的表面点云。
[0161]
步骤502、点云面元分割及边界检测。
[0162]
为了将复杂表面分解为简单的几何面元,同时能够检测目标的边界,通过图2所示的点云面元分割与边界预测网络,将预处理后的待检对象表面点云输入点云面元分割与边界预测网络中,经过点云特征提取和面元实例聚类得到点云的面元实例,每个面元实例包含类别标签(可能有五种:平面、圆柱面、球面、圆锥面、不规则曲面)和边界预测结果(0:非边界点,1:边界点)。
[0163]
步骤503、分面元视点生成。
[0164]
面元实例集合中的每个类型的面元实例,分别调用相应的视点生成方法,根据相机的成像距离、视场大小计算得到针对每个类型已知面元实例的视点集合,每个视点包含视点坐标及朝向向量。
[0165]
考虑到边界区域的特殊性,因此将所有边界点作为单独的点云集合,调用视点生成方法得到针对边界点的视点集合。
[0166]
步骤504、视点融合及后处理。
[0167]
将步骤503中获得的所有视点集合进行融合,对相邻视点进行融合调整,得到后处理之后的视点集合。
[0168]
步骤505、无碰撞最短视点路径规划。
[0169]
通过步骤504可得到一系列离散的视点,将其作为节点构建完全连接图,其中若两视点之间被待检对象穿过,则边权值设为无穷大,否则为两点的朝向向量的余弦距离与坐标的欧氏距离的乘积。利用动态规划算法求得一条最短的视点遍历路径。
[0170]
步骤506、检测平台运动采集图像。
[0171]
将步骤505获取的视点遍历路径发给表面质检平台,平台运动使得相机末端依次到达计算的视点位置,并以固定的姿态拍摄获取待检测目标的外观图像,并发送给后台进行表面瑕疵检测。
[0172]
本发明实施例提供的视点路径规划方法,只需要获取对象的表面点云即可进行视点轨迹规划,可以大大节省人力,同时适用于各种复杂类型曲面的视点生成,通用性较强。
[0173]
下面对本发明提供的视点路径规划装置进行描述,下文描述的视点路径规划装置与上文描述的视点路径规划方法可相互对应参照。
[0174]
图6是本发明实施例提供的视点路径规划装置的结构示意图,如图6所示,本发明实施例提供的视点路径规划装置,包括:
[0175]
第一确定模块610,用于基于待检测目标的点云数据,确定所述待检测目标对应的边界点,面元实例,以及所述面元实例对应的面元类型;
[0176]
第二确定模块620,用于基于所述面元类型对应的第一视点集合和所述边界点对应的第二视点集合,确定目标视点集合;
[0177]
第三确定模块630,用于基于所述目标视点集合,确定视点遍历路径。
[0178]
在此需要说明的是,本发明实施例提供的视点路径规划装置,能够实现上述视点路径规划方法实施例所实现的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行具体赘述。
[0179]
可选地,在所述面元类型为不规则曲面的情况下,所述视点路径规划装置,还包括:第四确定模块,用于:
[0180]
在所述不规则曲面对应的面元实例中确定目标点;
[0181]
基于相机最佳成像距离,在所述不规则曲面对应的面元实例中确定与所述目标点对应的最佳视点;
[0182]
基于所述最佳视点未覆盖的点云数据,确定所述第一视点集合。
[0183]
可选地,所述第二确定模块620,具体用于:
[0184]
对所述第一视点集合和所述第二视点集合中的冗余视点进行筛选,确定第三视点集合;
[0185]
基于所述第三视点集合中的任意两个视点的相似度,以及预设相似度阈值,确定视点对;
[0186]
基于所述视点对,确定融合视点;
[0187]
在确定第一点云数据覆盖第二点云数据的情况下,基于所述融合视点,确定所述目标视点集合;所述第一点云数据为所述融合视点覆盖的点云数据,所述第二点云数据为所述视点对覆盖的点云数据。
[0188]
可选地,所述第一确定模块610,具体用于:
[0189]
基于所述点云数据,以及训练好的模型,确定所述点云数据中每个点的类型、边界概率和嵌入特征;所述训练好的模型是通过带有目标标签的数据训练得到的;
[0190]
基于所述每个点的类型、边界概率和嵌入特征,确定所述边界点、所述面元实例和所述面元类型。
[0191]
可选地,所述第一确定模块610,具体用于:
[0192]
基于所述边界概率,确定所述边界点和内部点;
[0193]
基于所述嵌入特征对所述内部点进行聚类,确定初始聚类簇;
[0194]
基于所述边界点到所述初始聚类簇的中心的距离,确定目标聚类簇;
[0195]
基于所述目标聚类簇,确定所述面元实例;
[0196]
基于所述目标聚类簇内点的类型,确定所述面元类型。
[0197]
可选地,所述第三确定模块630,具体用于:
[0198]
确定所述目标视点集合中任意两个目标视点之间的相似度;
[0199]
基于所述任意两个目标视点之间的相似度,确定遍历所述目标视点的最短路径;
[0200]
将所述最短路径进行拟合,确定所述视点遍历路径。
[0201]
可选地,所述相似度的计算公式如下:
[0202]sij
=||vp
i-vpj||2·
(2-ni·
nj)
[0203]
其中,s
ij
表示视点i和视点j的相似度,vpi表示视点i的坐标,vpj表示视点j的坐标,ni表示视点i的法向量,nj表示视点j的法向量。
[0204]
图7示例了一种电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(communications interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行视点路径规划方法,该方法包括:基于待检测目标的点云数据,确定所述待检测目标对应的边界点,面元实例,以及所述面元实例对应的面元类型;基于所述面元类型对应的第一视点集合和所述边界点对应的第二视点集合,确定目标视点集合;基于所述目标视点集合,确定视点遍历路径。
[0205]
此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0206]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的视点路径规划方法,该方法包括:基于待检测目标的点云数据,确定所述待检测目标对应的边界点,面元实例,以及所述面元实例对应的面元类型;基于所述面元类型对应的第一视点集合和所述边界点对应的第二视点集合,确定目标视点集合;基于所述目标视点集合,确定视点遍历路径。
[0207]
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的视点路径规划方法,该方法包括:基于待检测目标的点云数据,确定所述待检测目标对应的边界点,面元实例,以及所述面元实例对应的面元类型;基于所述面元类型对应的第一视点集合和所述边界点对应的第二视点集合,确定目标视点集合;基于所述目标视点集合,确定视点遍历路径。
[0208]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0209]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0210]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

技术特征:
1.一种视点路径规划方法,其特征在于,包括:基于待检测目标的点云数据,确定所述待检测目标对应的边界点,面元实例,以及所述面元实例对应的面元类型;基于所述面元类型对应的第一视点集合和所述边界点对应的第二视点集合,确定目标视点集合;基于所述目标视点集合,确定视点遍历路径。2.根据权利要求1所述的视点路径规划方法,其特征在于,在所述面元类型为不规则曲面的情况下,所述面元类型对应的第一视点集合,通过以下方式确定:在所述不规则曲面对应的面元实例中确定目标点;基于相机最佳成像距离,在所述不规则曲面对应的面元实例中确定与所述目标点对应的最佳视点;基于所述最佳视点未覆盖的点云数据,确定所述第一视点集合。3.根据权利要求1所述的视点路径规划方法,其特征在于,所述基于所述面元类型对应的第一视点集合和所述边界点对应的第二视点集合,确定目标视点集合,包括:对所述第一视点集合和所述第二视点集合中的冗余视点进行筛选,确定第三视点集合;基于所述第三视点集合中的任意两个视点的相似度,以及预设相似度阈值,确定视点对;基于所述视点对,确定融合视点;在确定第一点云数据覆盖第二点云数据的情况下,基于所述融合视点,确定所述目标视点集合;所述第一点云数据为所述融合视点覆盖的点云数据,所述第二点云数据为所述视点对覆盖的点云数据。4.根据权利要求1所述的视点路径规划方法,其特征在于,所述基于待检测目标的点云数据,确定所述待检测目标对应的边界点,面元实例,以及所述面元实例对应的面元类型,包括:基于所述点云数据,以及训练好的模型,确定所述点云数据中每个点的类型、边界概率和嵌入特征;所述训练好的模型是通过带有目标标签的数据训练得到的;基于所述每个点的类型、边界概率和嵌入特征,确定所述边界点、所述面元实例和所述面元类型。5.根据权利要求4所述的视点路径规划方法,其特征在于,所述基于所述每个点的类型、边界概率和嵌入特征,确定所述边界点、所述面元实例和所述面元类型,包括:基于所述边界概率,确定所述边界点和内部点;基于所述嵌入特征对所述内部点进行聚类,确定初始聚类簇;基于所述边界点到所述初始聚类簇的中心的距离,确定目标聚类簇;基于所述目标聚类簇,确定所述面元实例;基于所述目标聚类簇内点的类型,确定所述面元类型。6.根据权利要求1所述的视点路径规划方法,其特征在于,所述基于所述目标视点集合,确定视点遍历路径,包括:确定所述目标视点集合中任意两个目标视点之间的相似度;
基于所述任意两个目标视点之间的相似度,确定遍历所述目标视点的最短路径;将所述最短路径进行拟合,确定所述视点遍历路径。7.根据权利要求3或6所述的视点路径规划方法,其特征在于,所述相似度的计算公式如下:s
ij
=||vp
i-vp
j
||2·
(2-n
i
·
n
j
)其中,s
ij
表示视点i和视点j的相似度,vp
i
表示视点i的坐标,vp
j
表示视点j的坐标,n
i
表示视点i的法向量,n
j
表示视点j的法向量。8.一种视点路径规划装置,其特征在于,包括:第一确定模块,用于基于待检测目标的点云数据,确定所述待检测目标对应的边界点,面元实例,以及所述面元实例对应的面元类型;第二确定模块,用于基于所述面元类型对应的第一视点集合和所述边界点对应的第二视点集合,确定目标视点集合;第三确定模块,用于基于所述目标视点集合,确定视点遍历路径。9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述视点路径规划方法。10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述视点路径规划方法。

技术总结
本发明属于路径规划技术领域,提供一种视点路径规划方法、装置、电子设备及存储介质,所述方法包括:基于待检测目标的点云数据,确定所述待检测目标对应的边界点,面元实例,以及所述面元实例对应的面元类型;基于所述面元类型对应的第一视点集合和所述边界点对应的第二视点集合,确定目标视点集合;基于所述目标视点集合,确定视点遍历路径。本发明提供的视点路径规划方法,通过获取待检测目标的点云数据,根据点云数据确定对应的边界点和面元实例的面元类型,并根据面元类型对应的视点集合和边界点对应的视点集合得到目标视点集合,从而根据目标视点集合进行视点轨迹规划,可以大大节省人力,并且适用于各种类型的待检测目标,通用性较强。通用性较强。通用性较强。


技术研发人员:王少虎 佟玉闯 商秀芹 钟成
受保护的技术使用者:中国科学院自动化研究所
技术研发日:2023.03.17
技术公布日:2023/7/25
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐