CN116794629A - 位姿获取方法、设备以及存储介质 - Google Patents
位姿获取方法、设备以及存储介质 Download PDFInfo
- Publication number
- CN116794629A CN116794629A CN202310608336.5A CN202310608336A CN116794629A CN 116794629 A CN116794629 A CN 116794629A CN 202310608336 A CN202310608336 A CN 202310608336A CN 116794629 A CN116794629 A CN 116794629A
- Authority
- CN
- China
- Prior art keywords
- target point
- point clouds
- coordinate system
- determining
- target
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000003860 storage Methods 0.000 title claims abstract description 13
- 230000004044 response Effects 0.000 claims description 12
- 238000012216 screening Methods 0.000 claims description 12
- 238000000513 principal component analysis Methods 0.000 claims description 10
- 230000009467 reduction Effects 0.000 claims description 8
- 238000012847 principal component analysis method Methods 0.000 claims description 2
- 238000001514 detection method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000009776 industrial production Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Landscapes
- Optical Radar Systems And Details Thereof (AREA)
Abstract
本申请公开了一种位姿获取方法、设备以及存储介质,位姿获取方法包括:获取承载设备上的激光雷达对目标对象扫描得到的多个目标点云的相关信息,目标对象包括若干部位;基于多个目标点云的相关信息,确定多个目标点云在目标对象上所属的部位;利用与部位对应的定位方式以及至少部分目标点云的相关信息,确定目标对象相对于承载设备的位姿信息,不同部位对应的定位方式不同。上述方案,能够提高获取得到的目标对象相对于承载设备的位姿的准确度。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种位姿获取方法、设备以及存储介质。
背景技术
近年来,移动机器人在巡检、物流、安防等各个领域得到广泛应用,极大地节省了人力物力,提高了工业生产的效率。在机器人执行货物搬运等任务时需要准确地估计目标的位置及姿态等信息,通过对目标进行识别定位,机器人能够准确地获取目标并搬运至指定位置。目前对目标进行定位的方式通常是采用对目标拍摄得到的图像,并基于图像信息对目标进行定位,但是这种方式不仅对场景的光照条件要求较高,同时也对计算机的运算性能要求较高。
发明内容
本申请至少提供一种位姿获取方法、设备以及存储介质。
本申请提供了一种位姿获取方法,包括:获取承载设备上的激光雷达对目标对象扫描得到的多个目标点云的相关信息,目标对象包括若干部位;基于多个目标点云的相关信息,确定多个目标点云在目标对象上所属的部位;利用与部位对应的定位方式以及至少部分目标点云的相关信息,确定目标对象相对于承载设备的位姿信息,不同部位对应的定位方式不同。
本申请提供了一种位姿获取装置,包括:获取模块、确定模块以及定位模块;获取模块,用于获取承载设备上的激光雷达对目标对象扫描得到的多个目标点云的相关信息,目标对象包括若干部位;确定模块,用于基于多个目标点云的相关信息,确定多个目标点云在目标对象上所属的部位;定位模块,用于利用与部位对应的定位方式以及至少部分目标点云的相关信息,确定目标对象相对于承载设备的位姿信息,不同部位对应的定位方式不同。
本申请提供了一种电子设备,包括存储器和处理器,处理器用于执行存储器中存储的程序指令,以实现上述位姿获取方法。
本申请提供了一种计算机可读存储介质,其上存储有程序指令,程序指令被处理器执行时实现上述位姿获取方法。
上述方案,通过使用承载设备上的激光雷达对目标对象进行扫描得到关于该目标对象的多个点云,然后根据该点云对目标对象进行定位,相比于通过图像信息对目标对象进行定位而言,本方式对光照以及计算机算力等要求较低,另外,通过对多个点云所属部位进行分类,然后利于与部位对应的定位方式以及至少部分点云获取目标对象相对于承载设备的位姿信息,相比于使用单一的定位方式获取目标对象相对于承载设备的位姿信息而言,获得的位姿信息更为准确。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本申请的实施例,并与说明书一起用于说明本申请的技术方案。
图1是本申请位姿获取方法一实施例的流程示意图;
图2是本申请位姿获取方法一实施例示出的目标对象在装载设备上的装载示意图;
图3是本申请位姿获取方法另一实施例的流程示意图;
图4是本申请位姿获取装置一实施例的结构示意图;
图5是本申请电子设备一实施例的结构示意图;
图6是本申请计算机可读存储介质一实施例的结构示意图。
具体实施方式
下面结合说明书附图,对本申请实施例的方案进行详细说明。
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本申请。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
在本申请中,用于实现本申请描述的位姿获取方法的执行主体可以是位姿获取装置。例如,位姿获取装置可以是终端设备或服务器或其它处理设备,其中,终端设备可以为承载设备、移动机器人,用户设备(User Equipment,UE)、用户终端、终端、蜂窝电话、无绳电话、个人数字处理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该位姿获取方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
请参阅图1,图1是本申请位姿获取方法一实施例的流程示意图。
如图1所示,本公开实施例提供的位姿获取方法,可以包括如下步骤:
步骤S11:获取承载设备上的激光雷达对目标对象扫描得到的多个目标点云的相关信息。
本实施例的位姿获取方法的执行设备为承载设备为例,另一些实施例中,执行设备也可以是与承载设备建立通信连接的终端设备。激光雷达指的是二维激光雷达,也可以是三维激光雷达。为更好地减少计算机算力,本申请以激光雷达为二维激光雷达为例。激光雷达可以通过发射激光束探测目标的位置、速度等特征量。激光雷达为二维激光雷达,则获取得到的目标点云为二维点云。目标点云的相关信息可以是获取得到的目标点云的位置信息等。目标对象包括若干部位。若干可以指的是两个或两个以上。
步骤S12:基于多个目标点云的相关信息,确定多个目标点云在目标对象上所属的部位。
一般而言,不同部位在结构上可能存在区别,对部位进行扫描得到的多个点云也会有所不同。具体可以根据扫描得到的点云的分布规律确定其所属的部位。
步骤S13:利用与部位对应的定位方式以及至少部分目标点云的相关信息,确定目标对象相对于承载设备的位姿信息。
其中,不同部位的定位方式不同。至少部分可以是全部,也可以是部分。如上述,不同部位在结构上可能存在区别,导致对部位扫描得到的点云的分布情况也可能不同,通过对不同部位确定不同的定位方式,能够充分考虑到不同点云分布情况对定位的影响,从而使得对目标对象的位姿确定更为准确。
上述方案,通过使用承载设备上的激光雷达对目标对象进行扫描得到关于该目标对象的多个点云,然后根据该点云对目标对象进行定位,相比于通过图像信息对目标对象进行定位而言,本方式对光照以及计算机算力等要求较低,另外,通过对多个点云所属部位进行分类,然后利于与部位对应的定位方式以及至少部分点云获取目标对象相对于承载设备的位姿信息,相比于使用单一的定位方式获取目标对象相对于承载设备的位姿信息而言,获得的位姿信息更为准确。
一些实施例中,目标点云的相关信息包括目标点云在激光雷达所处第一坐标系下的位置。示例性地,请同时参阅图2,图2是本申请位姿获取方法一实施例示出的目标对象在装载设备上的装载示意图。如图2所示,装载设备1上装载了目标对象2,并且装载设备1上还设置有激光雷达10。图2中,目标对象2在装载设备1上的标准装载位置用虚线框表示,目标对象2在装载设备1上的实际装载位置用实线框表示,很多情况下因为各种原因导致目标对象2在装载设备1上的实际装载位置与标准装载位置之间存在差异,故无法直接使用标准装载位置与激光雷达10之间的位置关系确定目标对象2在世界坐标系下的位姿。第一坐标系是以l0为原点的坐标系,第二坐标系是以n0为原点的坐标系,其中,下标x表示x轴,下标y表示y轴,各坐标系具体为笛卡尔坐标系。
其中,上述步骤S11可以包括以下步骤:获取激光雷达扫描得到的若干初始点云。然后,利用各初始点云与第一坐标系的原点的距离以及激光雷达的最小角度、角度增量,确定各初始点云在第一坐标系下的位置。接着,按照各初始点云在第一坐标系下的位置对初始点云进行筛选,得到对目标对象扫描得到的目标点云及其相关信息。
其中,激光雷达的最小角度具体可以是扫描到初始点云的最小角度。例如激光雷达的扫描范围为0-360°,在20°时扫描到了第一颗初始点云,则激光雷达的最小角度为20°。角度增量为激光雷达的常规概念,其可以用于确定激光雷达的分辨率,例如角度增量为0.25,则激光雷达的分辨率为360*(1/0.25)。其中,确定各初始点云在第一坐标系下的位置的方式可以参见公式(1)和公式(2),其中公式(1)用于确定初始点云在第一坐标系下的横坐标pi(x),公式(2)用于确定初始点云在第一坐标系下的纵坐标pi(y)。
pi(x)=ri*cos(anglemin+i*angleincrease) 公式(1);
pi(y)=ri*sin(anglemin+i*angleincrease) 公式(2);
其中,ri表示初始点云i与第一坐标系的原点的距离,anglemin表示最小角度,angleincrease表示角度分量,i为超参数。可选地,将各初始参数按照其扫描角度依序存储到初始点云集合{P}中。
可选地,目标对象为承载设备承载的货架。上述按照各初始点云在第一坐标系下的位置对初始点云进行筛选,得到对目标对象扫描得到的目标点云及其相关信息的方式可以是:获取预设的货架的第一尺寸信息、承载设备上用于承载货架的承载区域的第二尺寸信息以及货架处于承载区域的标准承载位置时与第一坐标系的原点之间的标准距离。然后,基于第一尺寸信息、第二尺寸信息以及标准距离,确定货架在承载区域内的可能承载位置。再按照可能承载位置对各初始点云进行筛选,得到目标点云。
货架的第一尺寸信息包括长度和宽度,货架的长度方向为y轴方向,货架的宽度方向为x轴方向。第二尺寸信息包括长度和宽度,承载区域的长度方向为y轴方向,承载区域的宽度方向为x轴方向。标准距离具体可以理解为图2中原点m0与原点l0之间的距离。其中,可能承载位置可以是横坐标满足-2*d<pi(x)<0,纵坐标满足0.5*wa<abs(pi(y))<0.8*wP,其中,-2、0.5以及0.8可根据需求自行设定,参数的设定不同,可能承载位置也可能会有差异。示例性地,货架的长、宽分别为lP、wP,承载区域的宽为wa,按照承载按照可能承载位置对各初始点云进行筛选的方式可参考公式(3):
其中,{Q}表示的是筛选后保留的点云组成的点云集合。pi(x)、pi(y)分别代表点pi在第一坐标系下的x轴坐标和y轴坐标。
在一些实施例中,上述按照可能承载位置对各初始点云进行筛选,得到目标点云还可包括以下过程:将处于可能承载位置中的初始点云进行聚类得到若干聚类簇。然后,保留包含的候选点云的数量大于或等于预设数量的聚类簇,并将保留的各聚类簇合并为候选点云集合。接着,响应于候选点云集合中扫描角度最大的点云和扫描角度最小的点云之间的距离与货架的第一尺寸信息之间的差异小于或等于预设差异,确定候选点云集合中的点云为目标点云。
具体地,将处于可能承载位置中的初始点云进行聚类得到若干聚类簇的方式可以是按顺序或其他方式对点云集合进行遍历,计算相邻两点之间的距离,若两点之间距离小于设定的阈值dset,则这两点属于同一类点云,将其存储至同一类集合{Si}中;若两点之间距离大于设定的阈值,则这两点属于不同类点云,新建集合用于存储后续点云:
其中表示pi和pi+1之间的欧式距离,pi、pi+1为集合{Q}内的点;遍历完成后,剔除点数少的类,将剩余的点云集合合并得候选点云集合{T}。
其中,根据激光点的扫描角度,候选点云集合{T}中扫描角度最小角度为扫描到候选点云的最小角度,候选点云集合中扫描角度最大角度为扫描到候选点云的最大角度。其中,扫描角度最大的点pangle_max和扫描角度最小的点pangle_min,两点之间距离为dbet。根据两点之间距离dbet,判断其是否属于货架点云:
||dbet-lP||<dtol,{T}是货架点云
||dbet-lP||≥dtol,{T}不是货架点云;
其中,dtol表示可以容忍的检测结果与货架长度之间差距的阈值。
在一些实施例中,上述步骤S12可以包括以下步骤:基于多个目标点云的相关信息,确定多个目标点云对应的形状。然后,利用多个目标点云对应的形状,确定多个目标点云所属的部位。如上述,不同部位扫描得到的点云呈现出来的形状不同,故可以通过对目标点云所呈现的形状进行判断能够确定该目标点云是对哪个部位扫描得到。
其中,多个目标点云对应的形状包括直线。目标对象为承载设备承载的货架,部位包括层板。目标点云的相关信息包括目标点云的位置。具体地,目标点云的位置可以是目标点云在第一坐标系下的位置。在此基础上,上述基于多个目标点云的相关信息,确定多个目标点云对应的形状的方式可以是:将多个目标点云划分为两个区域,各区域分别包括若干目标点云。然后,利用预设主成分分析方式分别确定各区域内目标点云对应的最小特征值、最大特征值以及各特征值向量。并响应于各区域内的目标点云对应的最小特征值与最大特征值之间的比值均小于或等于预设比值,确定多个目标点云对应的形状为直线。
示例性地,可以根据第一坐标系的象限将多个目标点云划分为两个区域。第一、二象限的点云记为{Tup},第三、四象限的点云记为{Tdown}。预设主成分分析方式可以是PCA(principal component analysis)算法。以{Tup}为例,计算{Tup}的特征值λup1、λup2以及其对应的特征向量αup1、αup2,其中λup1为最小的特征值,λup2为最大的特征值,若λup1/λup2小于设定阈值,则{Tup}为直线,否则{Tup}不为直线。若{Tup}和{Tdown}中的一个点云集合不满足该条件,则认为多个点云集合{T}不为直线。
在一些实施例中,上述在利用预设主成分分析方式分别确定各区域内目标点云对应的最小特征值、最大特征值以及各特征值向量之前,还可先执行以下步骤:分别确定各区域中的两个第二端点。然后,对于每一区域,响应于区域内的两个第二端点之间的距离大于或等于预设直线最短距离且两个第二端点在目标对象的宽度方向上的宽度小于或等于预设直线最大宽度,确定执行利用预设主成分分析方式分别确定各区域内目标点云对应的最小特征值、最大特征值以及各特征值向量的步骤。
其中,确定各区域中两个第二端点的方式可以是利用角度分别提取{Tup}的端点pup1、pup2和{Tdown}的端点pdown1、pdown2,也就是每个区域中扫描角度最小的点以及扫描角度最大的点作为第二端点。每个区域内的两个第二端点之间的长度和宽度的获取方式可以参见公式(4)-公式(7):
dup(x)=abs(pup1(x)-pup2(x)) 公式(4);
dup(y)=abs(pup1(y)-pup2(y)) 公式(5);
ddown(x)=abs(pdown1(x)-pdown2(x)) 公式(6);
ddown(y)=abs(pdown1(y)-pdown2(y)) 公式(7);
其中,dup(x)、dup(y)分别表示{Tup}的宽度和长度;ddown(x)、ddown(y)分别表示{Tdown}的宽度和长度。其中,两个第二端点在目标对象的宽度方向上的宽度小于或等于预设直线最大宽度具体为dup(x)小于或等于预设直线最大宽度,预设直线最大宽度可以由用户自定义,此处不做具体限定。
可选地,对于每一区域,响应于区域内的两个第二端点之间的距离小于预设直线最短距离或两个第二端点在目标对象的宽度方向上的宽度大于预设直线最大宽度,判断两个区域内的两个第二端点在目标对象的宽度方向上的宽度以及在目标对象长度方向上的长度是否均小于或等于预设宽度阈值。并响应于两个区域内的两个第二端点在目标对象的宽度方向上的宽度以及在目标对象长度方向上的长度均小于或等于预设宽度阈值,确定多个目标点云对应的形状为局部区域。
继上例,以{Tup}为例,每个区域内的两个第二端点在目标对象的宽度方向上的宽度以及在目标对象长度方向上的长度均小于或等于预设宽度阈值具体可以是dup(x)、dup(y)都小于预设宽度阈值,预设宽度阈值可根据支柱的宽度进行设定。若两个区域内的两个端点均满足该条件,确定多个目标点云对应的形状为局部区域。若其中一个区域不满足该条件,则确定检测失败。
在一些实施例中,上述利用多个目标点云对应的形状,确定多个目标点云所属的部位包括以下步骤:确定与直线对应的层板为目标点云所属的部位。确定与局部区域对应的支柱为目标点云所属的部位。
在一些实施例中,如上述目标对象可以是承载设备承载的货架,部位包括层板和支柱。上述步骤S13可以包括以下步骤:响应于多个目标点云所属部位为货架的层板,利用多个目标点云中包括两个第一端点在内的N个目标点云,确定目标对象相对于承载设备的位姿信息,N大于2。或,响应于多个目标点云所属部位为货架的支柱,利用多个目标点云中的两个第一端点,确定目标对象相对于承载设备的位姿信息。
其中,包括两个第一端点在内的N个目标点云可以是包括两个第一端点以及至少一个中间点。可选地,目标点云的位置包括目标点云在激光雷达所处第一坐标系下的坐标,位姿信息包括目标对象所处的第二坐标系与第一坐标系之间的位置关系。上述步骤利用多个目标点云中包括两个第一端点在内的N个目标点云,确定目标对象相对于承载设备的位姿信息的方式可以是:获取多个目标点云中的两个第一端点在第一坐标系下的位置。基于两个第一端点在第一坐标系下的位置以及两个第一端点与第二坐标系的原点之间的位置关系,确定第二坐标系的原点在第一坐标系下的位置。对多个目标点云进行直线拟合,得到第一直线。其中,进行直线拟合的方式可以是对多个目标点云进行降维,其中,降维后的第一直线与第二坐标系的预设轴平行。基于第一直线在第一坐标系下的位置,得到第二坐标系的预设轴与第一坐标系下的预设轴之间的夹角。
两个第一端点可以是扫描角度最大的点pangle_max和扫描角度最小的点pangle_min。基于两个第一端点在第一坐标系下的位置以及两个第一端点与第二坐标系的原点之间的位置关系,确定第二坐标系的原点在第一坐标系下的位置的方式可以参考公式(8)-公式(9):
其中,为原点在第一坐标系下的横坐标,/>为原点在第一坐标系下的纵坐标。
其中,上述对多个目标点云进行降维的方式可以是:利用预设主成分分析方式对多个目标点云进行降维,并将最小特征值对应的直线作为第一直线。具体地,利用PCA算法计算{T}的特征值λ1、λ2以及其对应的特征向量α1、α2,其中λ1为最小的特征值,λ2为最大的特征值。λ1对应的直线作为第一直线,α1可以认为是该第一直线的特征向量。在此基础上,上述基于第一直线在第一坐标系下的位置,得到第二坐标系的预设轴与第一坐标系下的预设轴之间的夹角的方式可以是:基于最小特征值对应的特征向量确定该夹角。示例性地,基于最小特征值对应的特征向量确定该夹角的方式可参考公式(10):
θ=tan(α1(1)/α1(0)) 公式(10);
其中,特征向量为二维向量,α1可以认为是该第一直线的第1维特征向量,α0可以认为是该第一直线的第0维特征向量。
在一些实施例中,目标点云的位置包括目标点云在激光雷达所处第一坐标系下的坐标。位姿信息包括目标对象所处的第二坐标系与第一坐标系之间的位置关系。上述利用多个目标点云中的两个第一端点,确定目标对象相对于承载设备的位姿信息的方式可以是:获取多个目标点云中的两个第一端点在第一坐标系下的位置。基于两个第一端点在第一坐标系下的位置以及两个第一端点与第二坐标系的原点之间的位置关系,确定第二坐标系的原点在第一坐标系下的位置。基于两个第一端点所处的第二直线在第一坐标系下的位置,得到第二坐标系的预设轴与第一坐标系下的预设轴之间的夹角。第二直线与第二坐标系的预设轴平行。
其中,上述基于两个第一端点在第一坐标系下的位置以及两个第一端点与第二坐标系的原点之间的位置关系,确定第二坐标系的原点在第一坐标系下的位置的方式可参考上述,此处不再赘述。
其中,上述基于两个第一端点所处的第二直线在第一坐标系下的位置,得到第二坐标系的预设轴与第一坐标系下的预设轴之间的夹角θ的方式可参考公式(11):
在一些实施例中,根据货架在承载区域中的标准承载位置和货架实际装载位置,计算得到货架位置偏差量(dx,dy),从而得到货架偏差量(dx,dy,θ)。示例性地,可以通过预先存储的标准承载位置对应的原点m0与实际承载位置对应的原点n0之间的差异,得到货架位置偏差量(dx,dy),并根据上述求得的夹角θ,得到货架最终的偏差量(dx,dy,θ)。
可选地,利用承载设备上的调整装置基于该偏差量将货架从实际承载位置调整至标准承载位置。调整装置可以是机械手或设置在承载区域上的旋转盘,该旋转盘通过旋转和移动调整货架在承载区域上的承载位置。
可选地,承载设备在移动至目标位置后,基于该货架偏差量能够将货架放置在正确的位置,能够减少将货架不规则放置在目标位置的问题出现。
上述方案,通过使用承载设备上的激光雷达对目标对象进行扫描得到关于该目标对象的多个点云,然后根据该点云对目标对象进行定位,相比于通过图像信息对目标对象进行定位而言,本方式对光照以及计算机算力等要求较低,另外,通过对多个点云所属部位进行分类,然后利于与部位对应的定位方式以及至少部分点云获取目标对象相对于承载设备的位姿信息,相比于使用单一的定位方式获取目标对象相对于承载设备的位姿信息而言,获得的位姿信息更为准确。
通过激光雷达扫描到的点云判断其扫描到的货架的部位,针对不同的情况采用不同的位姿估计方法:如果扫描到的为货架层板,则采用直线拟合估计角度;若扫到的为货架支柱,则采用端点估计角度。通过对此区分以提高货架位姿估计的精度。
另外,通过对点云进行聚类,剔除点云中的噪点,减少环境对识别算法的干扰。
另外,采用二维激光雷达对货架进行识别检测,相较于采用相机和ToF,其检测精度更高,受外界环境干扰更小,对处理器计算力要求更低。由于本提案采用导航激光进行检测,其避免了额外的传感器的引入,一方面节约了成本,另一方面减小传感器之间的标定误差对检测精度的影响。
针对运载中的货架的位姿估计算法,能够实时估计货架位于车体的偏差量,辅助机器人更精确地将货架搬运至指定位置,消除机器人取货架时产生的误差,适用于机器人高精度对接等任务。本提案通过对点云进行聚类分割,可以更好地排除环境对识别算法的干扰,提高检测的准确度。
为更好地理解本实施例提供的技术方案,请参考图3,图3是本申请位姿获取方法另一实施例的流程示意图。如图3所示,本实施例还可包括以下步骤:
步骤S21:获取激光雷达扫描得到的若干初始点云。
具体获取方式可参考上述,此处不再赘述。
步骤S22:根据货架和车体尺寸对初始点云进行筛选。
承载设备为车体,目标对象为货架。示例性地,根据货架和车体尺寸对初始点云进行筛选的方式可参考上述公式(3)。
步骤S23:对筛选后的点云进行聚类,剔除离群点。
聚类可以是按顺序或其他方式对点云集合进行遍历,计算相邻两点之间的距离,若两点之间距离小于设定的阈值dset,则这两点属于同一类点云,将其存储至同一类集合{Si}中。
步骤S24:提取点云边缘,计算边缘点的距离d。
根据激光点的扫描角度,候选点云集合{T}中扫描角度最小角度为扫描到候选点云的最小角度,候选点云集合中扫描角度最大角度为扫描到候选点云的最大角度。其中,扫描角度最大的点pangle_max和扫描角度最小的点pangle_min,两点之间距离为dbet。
步骤S25:d是否满足要求。
根据两点之间距离dbet,判断其是否属于货架点云:
||dbet-lP||<dtol,{T}是货架点云
||dbet-lP||≥dtol,{T}不是货架点云;
在判断结果为d满足要求的情况下,执行步骤S27,在判断结果为d不满足要求的情况下,执行步骤S26。
步骤S26:检测失败。
确定检测失败之后,间隔预设时间再执行步骤S21,继续获取货架在车体上的位姿。
步骤S27:判断扫到的是否为货架层板。
判断扫到的是否为货架层板的方式可参考上述,此处不再赘述。在判断结果为扫到的为货架层板的情况下,执行步骤S29,否则执行步骤S28。
步骤S28:判断扫到的是否为货架支柱。
判断扫到的是否为货架支柱的方式可参考上述,此处不再赘述。在判断结果为扫到的为货架支柱的情况下,执行步骤S29,否则执行步骤S26。
步骤S29:计算货架实际承载位置和角度。
利用与部位对应的定位方式以及至少部分目标点云的相关信息,确定目标对象相对于所述承载设备的位姿信息,具体过程可参考上述,此处不再赘述。
步骤S230:计算货架偏差量。
计算实际承载位置和标准承载位置之间的偏差量的方式可参考上述,此处不再赘述。
请参阅图4,图4是本申请位姿获取装置一实施例的结构示意图。位姿获取装置30包括获取模块31、确定模块32以及定位模块33;获取模块31,用于获取承载设备上的激光雷达对目标对象扫描得到的多个目标点云的相关信息,目标对象包括若干部位;确定模块32,用于基于多个目标点云的相关信息,确定多个目标点云在目标对象上所属的部位;定位模块33,用于利用与部位对应的定位方式以及至少部分目标点云的相关信息,确定目标对象相对于承载设备的位姿信息,不同部位对应的定位方式不同。
上述方案,通过使用承载设备上的激光雷达对目标对象进行扫描得到关于该目标对象的多个点云,然后根据该点云对目标对象进行定位,相比于通过图像信息对目标对象进行定位而言,本方式对光照以及计算机算力等要求较低,另外,通过对多个点云所属部位进行分类,然后利于与部位对应的定位方式以及至少部分点云获取目标对象相对于承载设备的位姿信息,相比于使用单一的定位方式获取目标对象相对于承载设备的位姿信息而言,获得的位姿信息更为准确。
其中,各个模块的功能可参见位姿获取方法实施例所述,此处不再赘述。
请参阅图5,图5是本申请电子设备一实施例的结构示意图。电子设备40包括存储器41和处理器42,处理器42用于执行存储器41中存储的程序指令,以实现上述任一位姿获取方法实施例中的步骤。在一个具体的实施场景中,电子设备40可以包括但不限于:监控设备、微型计算机、服务器,此外,电子设备40还可以包括笔记本电脑、平板电脑等承载设备,在此不做限定。
具体而言,处理器42用于控制其自身以及存储器41以实现上述任一位姿获取方法实施例中的步骤。处理器42还可以称为CPU(Central Processing Unit,中央处理单元)。处理器42可能是一种集成电路芯片,具有信号的处理能力。处理器42还可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器42可以由集成电路芯片共同实现。
上述方案,通过使用承载设备上的激光雷达对目标对象进行扫描得到关于该目标对象的多个点云,然后根据该点云对目标对象进行定位,相比于通过图像信息对目标对象进行定位而言,本方式对光照以及计算机算力等要求较低,另外,通过对多个点云所属部位进行分类,然后利于与部位对应的定位方式以及至少部分点云获取目标对象相对于承载设备的位姿信息,相比于使用单一的定位方式获取目标对象相对于承载设备的位姿信息而言,获得的位姿信息更为准确。
请参阅图6,图6是本申请计算机可读存储介质一实施例的结构示意图。计算机可读存储介质50,其上存储有程序指令51,程序指令51被处理器执行时实现上述任一位姿获取方法实施例中的步骤。
上述方案,通过使用承载设备上的激光雷达对目标对象进行扫描得到关于该目标对象的多个点云,然后根据该点云对目标对象进行定位,相比于通过图像信息对目标对象进行定位而言,本方式对光照以及计算机算力等要求较低,另外,通过对多个点云所属部位进行分类,然后利于与部位对应的定位方式以及至少部分点云获取目标对象相对于承载设备的位姿信息,相比于使用单一的定位方式获取目标对象相对于承载设备的位姿信息而言,获得的位姿信息更为准确。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一图像位置,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (14)
1.一种位姿获取方法,其特征在于,包括:
获取承载设备上的激光雷达对目标对象扫描得到的多个目标点云的相关信息,所述目标对象包括若干部位;
基于多个所述目标点云的相关信息,确定多个所述目标点云在目标对象上所属的部位;
利用与所述部位对应的定位方式以及至少部分所述目标点云的相关信息,确定所述目标对象相对于所述承载设备的位姿信息,不同部位对应的定位方式不同。
2.根据权利要求1所述的方法,其特征在于,所述目标对象为所述承载设备承载的货架,所述部位包括层板和支柱,所述利用与所述部位对应的定位方式以及至少部分所述目标点云的相关信息,确定所述目标对象相对于所述承载设备的位姿信息,包括:
响应于多个所述目标点云所属部位为所述货架的层板,利用多个所述目标点云中包括两个第一端点在内的N个目标点云,确定所述目标对象相对于所述承载设备的位姿信息,所述N大于2;
或,响应于多个所述目标点云所属部位为所述货架的支柱,利用多个所述目标点云中的两个第一端点,确定所述目标对象相对于所述承载设备的位姿信息。
3.根据权利要求2所述的方法,其特征在于,所述目标点云的位置包括所述目标点云在所述激光雷达所处第一坐标系下的坐标,所述位姿信息包括所述目标对象所处的第二坐标系与所述第一坐标系之间的位置关系,所述利用多个所述目标点云中包括两个第一端点在内的N个目标点云,确定所述目标对象相对于所述承载设备的位姿信息,包括:
获取多个所述目标点云中的两个第一端点在所述第一坐标系下的位置;
基于两个所述第一端点在所述第一坐标系下的位置以及两个所述第一端点与所述第二坐标系的原点之间的位置关系,确定所述第二坐标系的原点在所述第一坐标系下的位置;
对多个所述目标点云进行降维,其中,降维后的第一直线与所述第二坐标系的预设轴平行;
基于所述第一直线在所述第一坐标系下的位置,得到所述第二坐标系的预设轴与所述第一坐标系下的预设轴之间的夹角。
4.根据权利要求3所述的方法,其特征在于,所述对多个所述目标点云进行降维,包括:
利用预设主成分分析方式对多个所述目标点云进行降维,并将最小特征值对应的直线作为第一直线;
所述基于所述第一直线在所述第一坐标系下的位置,得到所述第二坐标系的预设轴与所述第一坐标系下的预设轴之间的夹角,包括:
基于所述最小特征值对应的特征向量确定所述夹角。
5.根据权利要求2所述的方法,其特征在于,所述目标点云的位置包括所述目标点云在所述激光雷达所处第一坐标系下的坐标,所述位姿信息包括所述目标对象所处的第二坐标系与所述第一坐标系之间的位置关系,所述利用多个所述目标点云中的两个第一端点,确定所述目标对象相对于所述承载设备的位姿信息,包括:
获取多个所述目标点云中的两个第一端点在所述第一坐标系下的位置;
基于两个所述第一端点在所述第一坐标系下的位置以及两个所述第一端点与所述第二坐标系的原点之间的位置关系,确定所述第二坐标系的原点在所述第一坐标系下的位置;
基于两个所述第一端点所处的第二直线在所述第一坐标系下的位置,得到所述第二坐标系的预设轴与所述第一坐标系下的预设轴之间的夹角,所述第二直线与所述第二坐标系的预设轴平行。
6.根据权利要求1-5任意一项所述的方法,其特征在于,所述基于多个所述目标点云的相关信息,确定多个所述目标点云在目标对象上所属的部位,包括:
基于多个所述目标点云的相关信息,确定多个所述目标点云对应的形状;
利用多个所述目标点云对应的形状,确定多个所述目标点云所属的部位。
7.根据权利要求6所述的方法,其特征在于,所述形状包括直线,所述目标对象为所述承载设备承载的货架,所述部位包括层板,所述目标点云的相关信息包括所述目标点云的位置,所述基于多个所述目标点云的相关信息,确定多个所述目标点云对应的形状,包括:
将多个所述目标点云划分为两个区域,各所述区域分别包括若干目标点云;
利用预设主成分分析方式分别确定各区域内目标点云对应的最小特征值、最大特征值以及各特征值向量;
响应于各所述区域内的目标点云对应的所述最小特征值与所述最大特征值之间的比值均小于或等于预设比值,确定多个所述目标点云对应的形状为直线;
所述利用多个所述目标点云对应的形状,确定多个所述目标点云所属的部位,包括:
确定与所述直线对应的层板为所述目标点云所属的部位。
8.根据权利要求7所述的方法,其特征在于,在所述利用预设主成分分析方式分别确定各区域内目标点云对应的最小特征值、最大特征值以及各特征值向量之前,所述方法还包括:
分别确定各所述区域中的两个第二端点;
对于每一所述区域,响应于所述区域内的两个第二端点之间的距离大于或等于预设直线最短距离且所述两个第二端点在所述目标对象的宽度方向上的宽度小于或等于预设直线最大宽度,确定执行所述利用预设主成分分析方式分别确定各区域内目标点云对应的最小特征值、最大特征值以及各特征值向量的步骤。
9.根据权利要求7所述的方法,其特征在于,所述方法还包括:
对于每一所述区域,响应于所述区域内的两个第二端点之间的距离小于预设直线最短距离或所述两个第二端点在所述目标对象的宽度方向上的宽度大于预设直线最大宽度,判断两个所述区域内的两个第二端点在所述目标对象的宽度方向上的宽度以及在所述目标对象长度方向上的长度是否均小于或等于预设宽度阈值;
响应于两个所述区域内的两个第二端点在所述目标对象的宽度方向上的宽度以及在所述目标对象长度方向上的长度均小于或等于预设宽度阈值,确定多个所述目标点云对应的形状为局部区域;
所述利用多个所述目标点云对应的形状,确定多个所述目标点云所属的部位,包括:
确定与所述局部区域对应的支柱为所述目标点云所属的部位。
10.根据权利要求1-5任意一项所述的方法,其特征在于,所述目标点云的相关信息包括所述目标点云在所述激光雷达所处第一坐标系下的位置,所述获取承载设备上的激光雷达对目标对象扫描得到的多个目标点云的相关信息,包括:
获取所述激光雷达扫描得到的若干初始点云;
利用各所述初始点云与所述第一坐标系的原点的距离以及所述激光雷达的最小角度、角度增量,确定各所述初始点云在所述第一坐标系下的位置;
按照各所述初始点云在所述第一坐标系下的位置对所述初始点云进行筛选,得到对所述目标对象扫描得到的目标点云及其相关信息。
11.根据权利要求10所述的方法,其特征在于,所述目标对象为所述承载设备承载的货架,所述按照各所述初始点云在所述第一坐标系下的位置对所述初始点云进行筛选,包括:
获取预设的所述货架的第一尺寸信息、所述承载设备上用于承载所述货架的承载区域的第二尺寸信息以及所述货架处于所述承载区域的标准承载位置时与所述第一坐标系的原点之间的标准距离;
基于所述第一尺寸信息、所述第二尺寸信息以及所述标准距离,确定所述货架在所述承载区域内的可能承载位置;
按照所述可能承载位置对各所述初始点云进行筛选,得到所述目标点云。
12.根据权利要求11所述的方法,其特征在于,所述按照所述可能承载位置对各所述初始点云进行筛选,得到所述目标点云,包括:
将处于所述可能承载位置中的初始点云进行聚类得到若干聚类簇;
保留包含的候选点云的数量大于或等于预设数量的聚类簇,并将保留的各聚类簇合并为候选点云集合;
响应于所述候选点云集合中扫描角度最大的点云和扫描角度最小的点云之间的距离与所述货架的第一尺寸信息之间的差异小于或等于预设差异,确定所述候选点云集合中的点云为目标点云。
13.一种电子设备,其特征在于,包括存储器和处理器,所述处理器用于执行所述存储器中存储的程序指令,以实现权利要求1至12任一项所述的方法。
14.一种计算机可读存储介质,其上存储有程序指令,其特征在于,所述程序指令被处理器执行时实现权利要求1至12任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310608336.5A CN116794629A (zh) | 2023-05-24 | 2023-05-24 | 位姿获取方法、设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310608336.5A CN116794629A (zh) | 2023-05-24 | 2023-05-24 | 位姿获取方法、设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116794629A true CN116794629A (zh) | 2023-09-22 |
Family
ID=88046177
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310608336.5A Pending CN116794629A (zh) | 2023-05-24 | 2023-05-24 | 位姿获取方法、设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116794629A (zh) |
-
2023
- 2023-05-24 CN CN202310608336.5A patent/CN116794629A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102204818B1 (ko) | 3d 정렬 알고리즘들을 위한 밸런싱된-프로브 사이트들의 선택 | |
EP3766644B1 (en) | Workpiece picking device and workpiece picking method | |
CN109801333B (zh) | 体积测量方法、装置、系统及计算设备 | |
CN109784250B (zh) | 自动引导小车的定位方法和装置 | |
CN108381549B (zh) | 一种双目视觉引导机器人快速抓取方法、装置及存储介质 | |
JP6649796B2 (ja) | 物体状態特定方法、物体状態特定装置、および、搬送車 | |
JP2017151652A (ja) | 物体状態特定方法、物体状態特定装置、および、搬送車 | |
CN113748357A (zh) | 激光雷达的姿态校正方法、装置和系统 | |
CN109828250B (zh) | 一种雷达标定方法、标定装置及终端设备 | |
CN110648359B (zh) | 一种果实目标定位识别方法及系统 | |
CN114549599A (zh) | 晶圆快速预对准方法、装置、电子设备及存储介质 | |
US6577758B1 (en) | Image position detection technique in which input parameters can be easily determined | |
JPWO2008032375A1 (ja) | 画像補正装置及び方法、並びにコンピュータプログラム | |
CN116794629A (zh) | 位姿获取方法、设备以及存储介质 | |
Sopauschke et al. | Smart process observer for crane automation | |
JP2010091525A (ja) | 電子部品のパターンマッチング方法 | |
CN115187769A (zh) | 一种定位方法及装置 | |
CN114049380A (zh) | 目标物体定位追踪方法、装置、计算机设备和存储介质 | |
CN110857859B (zh) | 障碍物检测方法及装置 | |
JP2992446B2 (ja) | 画像認識方法およびその装置 | |
CN112712476A (zh) | 用于tof测距的去噪方法及装置、tof相机 | |
WO2014192061A1 (ja) | 画像処理装置、画像処理方法及び画像処理プログラム | |
Quach et al. | Low-level track finding and completion using random fields | |
Yu et al. | Visual servo for fast glass handling by industrial robot with large sensor latency and low sampling rate | |
WO2022190169A1 (ja) | データ処理装置、データ処理方法及びデータ処理プログラム |
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 |