激光外参的标定验证方法、装置、电子设备及可存储介质与流程
未命名
07-13
阅读:82
评论:0
1.本技术涉及激光雷达技术领域,具体涉及一种激光外参的标定验证方法、装置、电子设备及可存储介质。
背景技术:
2.激光雷达通过向目标对象发射激光光束并接收从目标对象发射的光束来探测目标对象的位置等信息。激光雷达可以为叉车如无人叉车提供真实可靠的目标信息。为了提高叉车如无人叉车对周围环境的感知能力,需要对激光雷达进行外参标定来获得准确的激光外参。但现有方案主要通过将激光雷达检测结果与实际测量结果进行比对,来获取激光外参,这种方式受测量精度影响较大,得到的激光外参的准确性较低。
技术实现要素:
3.本技术实施例公开了一种激光外参的标定验证方法、装置、电子设备及可存储介质,能够减少测量误差,提高获得的激光外参的准确性。
4.本技术实施例第一方面公开了一种激光外参的标定验证方法,叉车外部设置有3d激光雷达以及托盘,所述叉车和托盘上均设置有反光板,所述方法包括:获得每块反光板对所述3d激光雷达发出的激光反射得到的点云数据;从所述点云数据中提取每块所述反光板的部分点云数据,根据每块所述反光板的部分点云数据确定每块所述反光板的重心点;根据每个所述重心点,确定所述叉车与托盘之间的相对位置关系;根据预先获取的位置关系对所述相对位置关系进行标定验证,在所述预先获取的位置关系与所述相对位置关系相同的情况下,完成所述激光外参的标定验证过程。
5.本技术实施例第二方面公开了一种激光外参的标定验证装置,叉车外部设置有3d激光雷达以及托盘,所述叉车和托盘上均设置有反光板,所述装置包括:数据获取模块,用于获得每块反光板对所述3d激光雷达发出的激光反射得到的点云数据;数据处理模块,用于从所述点云数据中提取每块所述反光板的部分点云数据,根据每块所述反光板的部分点云数据确定每块所述反光板的重心点;关系确定模块,用于根据每个所述重心点,确定所述叉车与托盘之间的相对位置关系;标定验证模块,用于根据预先获取的位置关系对所述相对位置关系进行标定验证,在所述预先获取的位置关系与所述相对位置关系相同的情况下,完成所述激光外参的标定验证过程。
6.本技术实施例第三方面公开了一种电子设备,所述电子设备包括存储器及处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器实现本技术实施例公开的任意一种激光外参的标定验证方法。
7.本技术实施例第四方面公开一种计算机可读存储介质,其存储计算机程序,其中,所述计算机程序被处理器执行时实现本技术实施例公开的一种激光外参的标定验证方法。
8.与相关技术相比,本技术实施例具有以下有益效果:在叉车外部设置3d激光雷达,在叉车外部设置托盘,叉车以及托盘上均设置有反光板。获得设置的每块反光板对3d激光雷达的激光反射得到的点云数据,从这些点云数据中提取出每块反光板所对应的部分点云数据,并且根据每块反光板对应的部分点云数据确定出每块反光板的重心点。接着根据每块反光板的重心点,确定出叉车与托盘之间的相对位置关系,将预先获取的位置关系对确定的相对位置关系进行标定验证。在预先获取的位置关系与确定的相对位置关系相同的情况下,结束并完成激光外参的标定验证过程。能够获取准确的激光外参,大大减小了利用3d激光雷达进行测量时的测量误差,使得在工厂和园区等复杂场景下位置关系测量的准确性得到有效的提高。
附图说明
9.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
10.图1为一个实施例公开的激光外参的标定验证方法的应用场景图;图2为一个实施例公开的一种激光外参的标定验证方法的流程示意图;图3为一个实施例公开的另一种激光外参的标定验证方法的流程示意图;图4为一个实施例公开的一种激光外参的标定验证装置的结构示意图;图5为一个实施例公开的一种电子设备的结构示意图。
具体实施方式
11.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
12.需要说明的是,本技术实施例及附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
13.本技术实施例公开了一种激光外参的标定验证方法、装置、电子设备及可存储介质,能够减少测量误差,提高获得的激光外参的准确性。以下分别进行详细说明。
14.请参阅图1,图1为一个实施例公开的激光外参的标定验证方法的应用场景图。如图1所示,可包括叉车10、托盘20、3d激光雷达30和反光板40。3d激光雷达30和托盘20均设置在叉车10外部,叉车可以为有人驾驶的叉车或者是无人叉车,叉车10中至少可包括中央处理器、货叉以及定向轮。托盘20可以为不同尺寸甚至是不同形状的托盘,托盘20位于叉车的货叉所在方向的延长线上。3d激光雷达30位于叉车的侧边。反光板40可以为矩形反光板,反
光板40设置在托盘以及叉车上。
15.叉车10或者其他设备中的中央处理器获取每块反光板40对3d激光雷达30发出的激光反射得到的点云数据,从点云数据中提取每块反光板40的部分点云数据,并且根据每块反光板40的部分点云数据确定出每块反光板40的重心点。接着根据每个重心点确定叉车10与托盘20之间的相对位置关系,根据预先获取的位置关系对确定的相对位置关系进行标定验证,并且在预先获取的位置关系与相对位置关系相同的情况下,完成激光外参的标定验证过程。
16.请参阅图2,图2为一个实施例公开的一种激光外参的标定验证方法的流程示意图,该方法可应用于如图1所示的应用场景中的叉车10,叉车外部设置有3d激光雷达以及托盘,托盘位于叉车的货叉所在方向的延长线上,3d激光雷达位于叉车的侧边,叉车和托盘上均设置有反光板。如图2所示,该方法可包括以下步骤:210、获得每块反光板对3d激光雷达发出的激光反射得到的点云数据。
17.在本技术实施例中,3d激光雷达可以朝向叉车以及托盘所在方位发射激光信号,并且接收反射回来的激光信号,根据接收到的反射回来的激光信号确定点云数据。3d激光雷达可以将确定的点云数据传输到叉车中的处理器中。或者,3d激光雷达可以将接收到的反射回来的激光信号传输到叉车中的处理器中,使得叉车中的处理器根据接收到的反射回来的激光信号确定点云数据。在获得点云数据后,叉车可以对获得的点云数据进行筛选,例如根据反射回来的激光信号的强度、根据接收到反射回来的激光信号的时间或者根据点云数据在叉车坐标系上的方位,来筛选出每块反光板对3d激光雷达发出的激光反射得到的点云数据。
18.220、从点云数据中提取每块反光板的部分点云数据,根据每块反光板的部分点云数据确定每块反光板的重心点。
19.在本技术实施例中,叉车从获得的所有反光板对3d激光雷达发出的激光反射得到的点云数据中,确定出每块反光板对应的部分点云数据,也就是每块反光板各自对3d激光雷达的激光反射得到的点云数据。叉车具体可以根据获得的点云数据中每个采样点的位置信息,对点云数据进行聚类处理,确定出多个簇,确定的簇的数量可以与反光板的数量相等,每个簇包含的采样点的集合即为一块反光板对应的部分点云数据。
20.叉车在确定每块反光板对应的部分点云数据后,可以根据反光板对应的部分点云数据中每个采样点的位置信息,确定出每块反光板的重心点。针对每块反光板,叉车具体可以根据反光板对应的部分点云数据中每个采样点的三维坐标,计算出一个三维坐标平均值,将这个平均值确定为这块反光板的重心点的三维坐标。或者,叉车可以根据反光板对应的部分点云数据中每个采样点的三维坐标,确定其中最大的横坐标和最小的横坐标,从而确定出平均横坐标;确定出其中最大的纵坐标和最小的纵坐标,从而确定出平均纵坐标;确定出其中最大的竖坐标和最小的竖坐标,从而确定出平均竖坐标。将反光板对应的部分点云数据中每个采样点中,将与平均横坐标、平均纵坐标和平均竖坐标对应的点距离最接近的采样点,确定为这个反光板的重心点。
21.230、根据每个重心点,确定叉车与托盘之间的相对位置关系。
22.在本技术实施例中,叉车根据每块反光板的重心点,确定出叉车与托盘之间的相对位置关系。举例来说,叉车上设置有两块反光板a和b,托盘上也设置有两块反光板c和d,
叉车上的两块反光板a和b之间的距离,以及托盘上的两块反光板c和d之间的距离,比叉车上的反光板a或b与托盘上的反光板c或d之间的距离要小。因此,叉车可以根据四块反光板a、b、c和d的重心点,确定出任意两块反光板之间的距离,具体为a和b之间的距离,a和c之间的距离,a和d之间的距离,b和c之间的距离,b和d之间的距离,c和d之间的距离。将其中最小的两个距离所对应的反光板,分别确定为设置在叉车上的反光板以及设置在托盘上的反光板。例如最小的两个距离为a和b之间的距离,或者,c和d之间的距离,那么可以认为a和b为设置在叉车上的反光板,c和d则为设置在托盘上的反光板。或者是a和b为设置在托盘上的反光板,c和d则为设置在叉车上的反光板。由于只需要确定叉车与托盘之间的相对位置关系,因此明确出两组反光板即可。在这里,叉车可以将反光板a和b两个重心点的中点,确定为叉车所在的位置,将反光板c和d两个重心点的中点,确定为托盘所在的位置。根据这两个位置可以确定出叉车与托盘之间的相对位置关系。
23.240、根据预先获取的位置关系对相对位置关系进行标定验证,在预先获取的位置关系与相对位置关系相同的情况下,完成激光外参的标定验证过程。
24.在本技术实施例中,叉车可以预先通过设置在叉车上的目标感知设备如激光雷达、传感器或者深度相机等,对托盘所在位置进行检测,并确定出叉车与托盘之间的位置关系,该位置关系即为预先获取的位置关系。
25.叉车在确定出叉车与托盘之间的相对位置关系后,将这个相对位置关系与预先获取的位置关系进行标定验证,具体可以是确定相对位置关系与预先获取的位置关系之间的偏差情况,如果这个偏差情况在允许范围内,那么叉车可以认为预先获取的位置关系与相对位置关系相同。在这种情况下,叉车可以结束本次激光外参的标定验证过程。
26.在本技术实施例中,托盘可位于叉车的货叉所在方向的延长线上,激光雷达可位于叉车的侧边,上述位置设置方式能够令激光雷达更好地采集到叉车和托盘上的反光板的点云数据。
27.采用上述实施例,叉车能够获取准确的激光外参,大大减小了利用3d激光雷达进行测量时的测量误差,使得在工厂和园区等复杂场景下位置关系测量的准确性得到有效的提高。
28.在一些实施例中,叉车还可以执行以下步骤:在预先获取的位置关系与相对位置关系不相同的情况下,对叉车上的目标感知设备的激光外参进行调整,以使通过叉车的目标感知设备对托盘进行检测得到的预先获取的位置关系,与相对位置关系相同。
29.在本技术实施例中,叉车获得了叉车与托盘之间的相对位置关系之后,可以将这个相对位置关系与预先获取的叉车与托盘之间的位置关系进行比较,确定出叉车与托盘之间的相对位置关系和预先获取的叉车与托盘之间的位置关系是否相同。其中,叉车具体可以采用设置在叉车上的3d激光雷达等设备,对托盘进行检测,预先获取叉车与托盘之间的位置关系。如果叉车与托盘之间的相对位置关系和预先获取的叉车与托盘之间的位置关系不相同,那么叉车可以根据叉车与托盘之间的位置关系,对设置在叉车上的3d激光雷达等设备的激光外参进行不断调整,直至通过设置在叉车上的3d激光雷达等设备检测到的叉车与托盘之间的位置关系,与叉车与托盘之间的相对位置关系相同。举例来说,叉车通过设置在叉车上的3d激光预先获取的叉车与托盘之间的位置关系包括在叉车坐标系下,叉车的三
维坐标(a1,b1,c1)、托盘的三维坐标(d1,e1,f1)以及叉车与托盘之间的角度theta1。而通过外置的3d激光检测后,确定的叉车与托盘之间的相对位置关系,包括在叉车坐标系下,叉车的三维坐标(a2,b2,c2)、托盘的三维坐标(d2,e2,f2)以及叉车与托盘之间的角度theta2。如果三维坐标(a1,b1,c1)与三维坐标(a2,b2,c2),三维坐标(d1,e1,f1)与(d2,e2,f2),角度theta1与角度theta2中,一组或多组不相同,那么可以认为叉车与托盘之间的相对位置关系和预先获取的叉车与托盘之间的位置关系不相同。因此,叉车可以对设置在叉车上的3d激光的激光外参进行调整,使得三维坐标(a1,b1,c1)与三维坐标(a2,b2,c2)相同,三维坐标(d1,e1,f1)与(d2,e2,f2)相同,角度theta1与角度theta2相同。
30.采用上述实施例,能够在外参标定验证结果不理想时对相关设备的激光外参进行调整,保证了后续能够采用准确的激光外参进行测量,使得后续测量的准确性得到有效的提高。
31.在一个实施例中,请参阅图3,图3为一个实施例公开的另一种激光外参的标定验证方法的流程示意图。该方法可应用于如图1所示的应用场景中的叉车10,叉车外部设置有3d激光雷达以及托盘,托盘位于叉车的货叉所在方向的延长线上,3d激光雷达位于叉车的侧边,叉车的货叉以及托盘上分别设置有至少两个反光板,叉车的除货叉之外的其他位置设置有反光板,位于叉车的货叉以及托盘上的多个反光板位于同一水平面。如图3所示,该方法可包括以下步骤:310、获得每块反光板对3d激光雷达发出的激光反射得到的点云数据,其中,点云数据至少包括每个采样点的三维坐标以及反光强度。
32.在本技术实施例中,叉车所获得的点云数据,至少包括了每个采样点的三维坐标以及每个采样点的反光强度。其中,三维坐标可以为地面坐标系下的三维坐标,也可以为叉车坐标系下的三维坐标。
33.320、根据每个采样点的反光强度,从点云数据中提取出每块反光板的部分点云数据。
34.在本技术实施例中,由于反光板对于激光反射的效果较好,而叉车车身和托盘本体等对于激光反射的效果较差,因此,叉车可以根据对3d激光雷达的激光反射的效果,也就是每个采样点的反光强度,来确定出每块反光板对应的部分点云数据。叉车具体可以预设反光强度阈值,将反光强度大于该阈值的采样点筛选出来,确定为每块反光板的部分点云数据。这里的部分点云数据为所有反光板总共的未分隔的点云数据。其中,设置在货叉上的反光板数量可以为一个或多个,设置在托盘上的反光板数量也可以为一个或多个,设置在叉车上除货叉以外位置的反光板数量也可以为一个或多个。每个反光板的反光面朝向3d激光雷达,并且每个反光板的反光强度可以有所不同。通过至少在叉车的货叉以及托盘上设置反光板,能够有效地确定叉车的货叉与托盘之间的相对位置。另外,在叉车上除货叉以外的其他位置设置反光板能够更好地区分叉车与托盘,并确定叉车的位置。
35.330、对每块反光板的部分点云数据进行聚类处理,确定多个目标点云集合。
36.在本技术实施例中,叉车可以通过聚类算法如dbscan密度聚类,来对获得的每块反光板的部分点云数据进行聚类处理,将所有反光板的点云数据分隔开,从而确定出多个目标点云集合,每个目标点云集合对应一个反光板,目标点云集合的数量与反光板的数量可以保持一致。每个目标点云集合包含的点云数据,即为对应的反光板的实际点云数据。举
例来说,叉车从每块反光板对3d激光雷达的激光反射中得到了包含1000个采样点的点云数据,叉车根据每个采样点的反射强度,筛选出了包含800个采样点的点云数据,这包含了800个采样点的点云数据即为每块反光板的点云数据。接着叉车采用dbscan密度聚类对这包含了800个采样点的点云数据进行处理,将这800个采样点分隔开,得到了4个目标点云集合a、b、c和d,每个目标点云集合均包含了200个采样点,目标点云集合a对应反光板a,目标点云集合a为反光板a的实际点云数据;目标点云集合b对应反光板b,目标点云集合b为反光板b的实际点云数据;目标点云集合c对应反光板c,目标点云集合c为反光板c的实际点云数据;目标点云集合d对应反光板d,目标点云集合d为反光板d的实际点云数据。
37.在一些实施例中,步骤330中对每块反光板的部分点云数据进行聚类处理,确定多个目标点云集合的过程,可以包括以下步骤:采用统计滤波方式,过滤掉每块反光板的部分点云数据中的孤立点云数据,得到优化后的每块反光板的部分点云数据;对优化后的每块反光板的部分点云数据进行聚类处理,确定多个目标点云集合。
38.在本技术实施例中,叉车在确定每块反光板的部分点云数据后,叉车可以采用统计滤波方式对目标点云集合进行处理,以过滤掉其中可能是误差或者是离群的点云数据,也就是孤立点云数据。具体的,叉车可以计算每个采样点到其最近的k个采样点的平均距离,部分点云数据中所有采样点的距离应构成高斯分布,叉车可以根据给定均值与方差,剔除方差之外的采样点,从而实现部分点云数据中的孤立点云数据的过滤,得到优化后的每块反光板的部分点云数据。接着叉车可以通过聚类算法如dbscan密度聚类,来对优化后的每块反光板的部分点云数据进行聚类处理,将所有反光板的点云数据分隔开,从而确定出多个目标点云集合,每个目标点云集合对应一个反光板,目标点云集合的数量与反光板的数量可以保持一致。每个目标点云集合包含的点云数据,即为对应的反光板的实际点云数据。
39.采用上述实施例,能够实现点云数据的优化,避免不相关的点云数据对重心点的确定以及叉车与托盘之间的相对位置关系的确定造成影响,提高了标定验证过程的准确性。
40.340、根据每个目标点云集合的聚集位置,确定与每个目标点云集合对应的重心点。
41.在本技术实施例中,叉车可以根据每个目标点云集合的聚集位置,确定出每个目标点云集合,也就是对应的反光板,所对应的重心点。举例来说,反光板a对应目标点云集合a,目标点云集合a包含了200个采样点,叉车可以对这200个采样点的三维坐标进行平均处理,具体是分别计算出这200个采样点的横坐标、纵坐标和竖坐标的平均值,得到一个由横坐标平均值x1、纵坐标平均值y1和竖坐标平均值z1组成的三维坐标(x1,y1,z1),这个三维坐标(x1,y1,z1)即为反光板a的重心点,或者说目标点云集合a对应的重心点。叉车也可以从目标点云集合a包含的200个采样点,筛选出横坐标最小的采样点和横坐标最大的采样点,根据这两个采样点的横坐标计算出平均横坐标x1,筛选出纵坐标最小的采样点和纵坐标最大的采样点,根据这两个采样点的纵坐标计算出平均纵坐标y1,筛选出竖坐标最小的采样点和竖坐标最大的采样点,根据这两个采样点的竖坐标计算出平均竖坐标z1,这三个平均值组成的三维坐标(x1,y1,z1)即为反光板a的重心点,或者说目标点云集合a对应的重
心点。叉车还可以直接根据目标点云集合a包含的200个采样点的分布,确定出这200个采样点的聚集位置,将聚集位置对应的采样点确定为反光板a的重心点,或者说目标点云集合a对应的重心点。
42.350、根据每个重心点的高度值确定每块反光板的重心点。
43.在本技术实施例中,反光板分别设置在叉车以及托盘上,反光板不仅需要设置在叉车的货叉上,还需要设置在除货叉以外的叉车其他位置上,如车身、轮子或者门架等,设置在叉车的货叉上的反光板至少为两块,设置在托盘上的反光板也至少为两块,设置在叉车除货叉以外的其他位置上的反光板至少为一块。设置在叉车的货叉上的反光板与设置在托盘上的反光板可以处于同一水平面,而设置在叉车除货叉以外的其他位置的反光板的高度可以大于设置在叉车的货叉上以及托盘上的反光板的高度,也可以低于设置在叉车的货叉上以及托盘上的反光板的高度。使得叉车可以根据确定的每个重心点,区分出每个重心点是设置在叉车上其他位置的反光板的重心点,还是设置在叉车的货叉上以及托盘上的反光板的重心点。其中,令叉车货叉上的反光板与托盘上的反光板处于同一水平面,能够通过叉车与托盘之间的位置关系更好地确定出反光板是设置在货叉上还是设置在托盘,并且能够排除其他高度位置的点云数据的干扰;此外,在叉车货叉上设置至少两个反光板以及在托盘上设置至少两个反光板,使得点云数据更好地反映了叉车和托盘的位置情况,从而提高后续标定验证过程的准确性;还有,在叉车上其他位置设置反光板,并且令叉车上其他位置的反光板与货叉和托盘上的反光板不在同一水平面,使得点云数据更好地反映了叉车上的不同位置的情况,同时还能根据高度的不同更好地区分货叉和托盘上的反光板以及叉车上其他位置的反光板。
44.举例来说,设置在叉车的货叉上的反光板a和b,与设置在托盘上的反光板c和d,位于同一水平面上,也就是说反光板a、b、c和d的高度均相等。在叉车的车身上也设置有一块反光板e,反光板e的高度大于反光板a、b、c和d的高度。叉车可以根据每个重心点的高度,具体是每个重心点的三维坐标中的竖坐标,确定出高度最高的一个重心点,高度最高的重心点即为反光板e的重心点,其他高度相同的重心点分别为反光板a、b、c和d的重心点。而由于设置在叉车的车身上的反光板与设置在货叉上的反光板之间的距离,明显小于设置在叉车的车身上的反光板与设置在托盘上的反光板之间的距离,因此,叉车可以根据反光板e的重心点分别与其他四个重心点之间的距离,确定出最近的两个距离的重心点和最远的两个距离的重心点,那么可以将最近的两个距离的重心点确定为设置在货叉上的反光板a和b的重心点,将最远的两个距离的重心点确定为设置在托盘上的反光板c和d的重心点。其中,设置在叉车的货叉上的反光板的重心点为第一重心点,设置在托盘上的反光板的重心点为第二重心点。
45.采用上述实施例,能够准确筛选出所有反光板的部分点云数据以及每块反光板分别对应的目标点云集合,从而提高所确定的每块反光板的重心点的准确性,进而有效的提高了标定验证过程的准确性。另外,根据设置在叉车货叉以外其他位置的反光板的高度与其他反光板的高度不同,以及根据设置在叉车货叉以外其他位置的反光板与其他反光板之间的距离特性,有效地区分了反光板设置在叉车还是托盘,对每个重心点的所属进行了区分,能够更加准确地确定出后续叉车与托盘之间的相对位置关系。
46.在一些实施例中,其他位置为定向轮外侧,定向轮的高度低于货叉的高度。
47.而步骤350中根据每个重心点的高度值确定每块反光板的重心点的过程,可以包括以下步骤:确定高度值最小的重心点为定向轮外侧设置的反光板的重心点,并确定定向轮外侧设置的反光板的重心点对应的目标点云集合为定向轮外侧设置的反光板;根据定向轮外侧设置的反光板与其他反光板之间的距离,确定货叉上设置的反光板的点云以及托盘上设置的反光板的点云,其中,与定向轮外侧设置的反光板之间的距离最近的两块反光板的点云为货叉上设置的反光板的点云,其他反光板的点云为托盘上设置的反光板的点云。
48.举例来说,在叉车的货叉上设置两块反光板a和b,在托盘上设置两块反光板c和d,在叉车的定向轮外侧设置一块反光板e。其中,反光板a和b分别设置在货叉的对称位置,反光板c和d分别设置在托盘两侧的对称位置,反光板a、b、c和d的高度一致,由于定向轮的高度低于货叉高度,因此反光板e的高度比其他四个反光板的高度低。上述反光板可以为5cm*5cm的正方形反光板,且所有反光板的方向均指向同一个方向。另外,托盘设置在叉车货叉方向距离叉根2m处的位置。3d激光雷达设置在反光板反光面的一侧,3d激光雷达与叉车的水平距离可以为2m,高度为18cm。叉车在确定了这五个重心点后,叉车可以根据这五个重心点的高度,确定出高度最低的重心点,这个重心点即为反光板e的重心点,也就是定向轮外侧设置的反光板的重心点。接着叉车可以确定定向轮外侧设置的反光板的重心点对应的目标点云集合e为定向轮外侧设置的反光板,也就是说,目标点云集合e包含的采样点组成了定向轮外侧设置的反光板e。由于货叉与定向轮之间的距离比货叉与托盘之间的距离要近,因此,叉车可以根据定向轮外侧设置的反光板与其他反光板之间的距离,确定货叉上设置的反光板的点云以及托盘上设置的反光板的点云。其中,叉车可以将反光板e的重心点与其他重心点之间的距离确定为定向轮外侧设置的反光板与其他反光板之间的距离;叉车也可以将目标点云集合e包含的每个采样点与一个重心点之间的距离进行计算,得到的最小距离即为这个重心点对应的反光板与定向轮外侧设置的反光板之间的距离。依此确定定向轮外侧设置的反光板与其他反光板之间的距离。在确定反光板e与其他四个反光板之间的距离之后,叉车将与反光板e之间的距离最近的两块反光板,确定为反光板a和b,这两块反光板的点云为货叉上设置的反光板的点云;叉车将其他反光板确定为反光板c和d,这两块反光板的点云为托盘上设置的反光板的点云。其中,在托盘对称位置设置两块反光板,以及在货叉的对称位置设置两块反光板,能够令货叉上的一对反光板在一个轴上的坐标相同,以及令托盘上的一对反光板在一个轴上的坐标相同,更好地确定点云在三维坐标系的其他两个轴上的情况。此外,定向轮为叉车上的关键位置,通过在该位置设置反光板,能够结合叉车上重要部件的点云数据来验证标定过程。
49.采用上述实施例,能够快速且准确地确定定向轮外侧设置的反光板及对应的点云,并且以定向轮外侧设置的反光板为依据,准确地确定每块反光板,以及所对应的点云,提高了识别的反光板的准确性,进而提高了后续标定验证过程的准确性。
50.360、根据叉车上的至少两个反光板的至少两个第一重心点,确定第一直线方程。
51.370、根据托盘上的至少两个反光板的至少两个第二重心点,确定第二直线方程。
52.380、根据第一直线方程、第二直线方程、至少两个第一重心点以及至少两个第二
重心点,确定叉车与托盘之间的相对位置关系。
53.在本技术实施例中,叉车在确定叉车与托盘之间的相对关系的过程中,具体可以先根据确定的设置在叉车上的至少两个反光板的重心点,也就是至少两个第一重心点,确定出一个直线方程,即第一直线方程。与此同时,叉车可以根据确定的设置在托盘上的至少两个反光板的重心点,也就是至少两个第二重心点,确定出另一个直线方程,即第二直线方程。接着叉车可以根据确定的这两个直线方程、至少两个第一重心点和至少两个第二重心点,确定出叉车与托盘之间的相对位置关系。其中,叉车可以具体根据两个第一重心点的三维坐标,确定出两个第一重心点所在直线的截距和斜率,从而确定出第一直线方程;以及,叉车可以具体根据两个第二重心点的三维坐标,确定出两个第二重心点所在直线的截距和斜率,从而确定出第二直线方程。
54.举例来说,设置在叉车的货叉上的反光板分别为a和b,设置在托盘上的反光板分别为c和d。叉车确定出反光板a的重心点为(x1,y1,z1),反光板b的重心点为(x2,y2,z2),反光板c的重心点为(x3,y3,z3),反光板d的重心点为(x4,y4,z4)。叉车根据反光板a和b的两个第一重心点(x1,y1,z1)和(x2,y2,z2),确定出第一重心点(x1,y1,z1)和(x2,y2,z2)所在直线分别与各个坐标轴的截距和斜率,并根据确定的截距和斜率计算出第一直线方程l1;叉车还根据反光板c和d的两个第二重心点(x3,y3,z3)和(x4,y4,z4),确定出第二重心点(x3,y3,z3)和(x4,y4,z4)所在直线分别与各个坐标轴的截距和斜率,并根据确定的截距和斜率计算出第二直线方程l2。叉车在确定出直线方程l1和l2后,可以计算出两个直线之间的距离,确定出叉车与托盘之间的距离,再根据两个第一重心点和两个第二重心点两两之间的位置关系,确定出叉车与托盘之间的方位,位置与方位相结合从而确定出叉车与托盘之间的相对位置关系。
55.采用上述实施例,通过确定直线方程,并且结合所确定的每块反光板对应的重心点,进一步提高了所确定的叉车与托盘之间的相对位置关系的准确性,从而提高了标定验证的准确性。
56.390、根据预先获取的位置关系对相对位置关系进行标定验证,在预先获取的位置关系与相对位置关系相同的情况下,完成激光外参的标定验证过程。
57.在一些实施例中,步骤380中根据第一直线方程、第二直线方程、至少两个第一重心点以及至少两个第二重心点,确定叉车与托盘之间的相对位置关系的过程,可以包括以下步骤:确定第一直线方程对应的第一斜率以及第二直线方程对应的第二斜率;根据至少两个第一重心点,确定第一中心点;根据至少两个第二重心点,确定第二中心点;根据第一斜率、第二斜率、第一中心点以及第二中心点,确定叉车与托盘之间的相对位置关系。
58.在本技术实施例中,叉车在确定叉车与托盘之间的相对关系的过程中,具体可以先根据确定的设置在叉车上的至少两个反光板的重心点,也就是至少两个第一重心点,确定出一个直线方程,即第一直线方程。与此同时,叉车可以根据确定的设置在托盘上的至少两个反光板的重心点,也就是至少两个第二重心点,确定出另一个直线方程,即第二直线方程。接着叉车可以确定出第一直线方程的斜率以及第二直线方程的斜率,也就是第一斜率
和第二斜率,例如第一直线方程为ax+by+c=0,那么第一直线方程对应的斜率,即第一斜率为k=-a/b。叉车在确定第一斜率和第二斜率之外,还根据至少两个第一重心点,确定一个第一中心点,以及根据至少两个第二重心点,确定一个第二中心点。可以通过计算所有第一重心点的三维坐标的平均值来得到第一中心点,以及计算所有第二重心点的三维坐标的平均值来得到第二中心点,在此不再赘述。叉车根据得到的第一斜率、第二斜率、第一中心点以及第二中心点,确定出叉车与托盘之间的相对位置关系。其中,叉车可以根据得到的第一斜率和第二斜率,确定叉车与托盘在叉车坐标系下相互之间的角度,叉车根据得到的第一中心点以及第二中心点,确定出叉车与托盘之间的距离。将叉车与托盘之间的角度和距离,确定为叉车与托盘之间的相对位置关系。
59.采用上述实施例,采用两个直线方程之间的斜率能够准确地确定叉车与托盘之间的角度,采用两个重心点之间的中心点能够准确地确定叉车与托盘之间的距离,并以此作为叉车与托盘之间的相对位置关系,进一步提高了所确定的叉车与托盘之间的相对位置关系的准确性,从而提高了标定验证的准确性。
60.请参阅图4,图4为一个实施例公开的一种激光外参的标定验证装置的结构示意图,该激光外参的标定验证装置可应用于如图1所示的应用场景中的叉车10,叉车外部设置有3d激光雷达以及托盘,托盘位于叉车的货叉所在方向的延长线上,3d激光雷达位于叉车的侧边,叉车和托盘上均设置有反光板。如图4所示,该激光外参的标定验证装置400可包括:数据获取模块410、数据处理模块420、关系确定模块430以及标定验证模块440。
61.数据获取模块410,用于获得每块反光板对3d激光雷达发出的激光反射得到的点云数据;数据处理模块420,用于从点云数据中提取每块反光板的部分点云数据,根据每块反光板的部分点云数据确定每块反光板的重心点;关系确定模块430,用于根据每个重心点,确定叉车与托盘之间的相对位置关系;标定验证模块440,用于根据预先获取的位置关系对相对位置关系进行标定验证,在预先获取的位置关系与相对位置关系相同的情况下,完成激光外参的标定验证过程。
62.在一些实施例中,叉车的货叉以及托盘上分别设置有至少两个反光板。
63.关系确定模块430,还用于:根据叉车上的至少两个反光板的至少两个第一重心点,确定第一直线方程;根据托盘上的至少两个反光板的至少两个第二重心点,确定第二直线方程;根据第一直线方程、第二直线方程、至少两个第一重心点以及至少两个第二重心点,确定叉车与托盘之间的相对位置关系。
64.在一些实施例中,关系确定模块430,还用于:确定第一直线方程对应的第一斜率以及第二直线方程对应的第二斜率;根据至少两个第一重心点,确定第一中心点;根据至少两个第二重心点,确定第二中心点;根据第一斜率、第二斜率、第一中心点以及第二中心点,确定叉车与托盘之间的相对位置关系。
65.在一些实施例中,叉车的除货叉之外的其他位置设置有反光板,点云数据至少包括每个采样点的三维坐标以及反光强度。
66.数据处理模块420,还用于:根据每个采样点的反光强度,从点云数据中提取出每块反光板的部分点云数据;对每块反光板的部分点云数据进行聚类处理,确定多个目标点云集合;根据每个目标点云集合的聚集位置,确定与每个目标点云集合对应的重心点;根据每个重心点的高度值确定每块反光板的重心点。
67.在一些实施例中,位于叉车的货叉以及托盘上的多个反光板位于同一水平面;其他位置为定向轮外侧,定向轮的高度低于货叉的高度。
68.数据处理模块420,还用于:确定高度值最小的重心点为定向轮外侧设置的反光板的重心点,并确定定向轮外侧设置的反光板的重心点对应的目标点云集合为定向轮外侧设置的反光板;根据定向轮外侧设置的反光板与其他反光板之间的距离,确定货叉上设置的反光板的点云以及托盘上设置的反光板的点云,其中,与定向轮外侧设置的反光板之间的距离最近的两块反光板的点云为货叉上设置的反光板的点云,其他反光板的点云为托盘上设置的反光板的点云。
69.在一些实施例中,数据处理模块420,还用于:采用统计滤波方式,过滤掉每块反光板的部分点云数据中的孤立点云数据,得到优化后的每块反光板的部分点云数据;对优化后的每块反光板的部分点云数据进行聚类处理,确定多个目标点云集合。
70.在一些实施例中,图4所示的激光外参的标定验证装置,还包括:外参调整模块450,用于在预先获取的位置关系与相对位置关系不相同的情况下,对3d激光雷达的激光外参进行调整,以使通过叉车的目标感知设备对托盘进行检测得到的预先获取的位置关系,与相对位置关系相同。
71.请参阅图5,图5为一个实施例公开的一种电子设备的结构示意图。如图5所示,该电子设备500可以包括:存储有可执行程序代码的存储器510。
72.与存储器510耦合的处理器520。
73.其中,处理器520调用存储器510中存储的可执行程序代码,执行本技术实施例公开的任意一种激光外参的标定验证方法。
74.需要说明的是,图5所示的电子设备还可以包括电源、输入按键、摄像头、扬声器、屏幕、rf电路、wi-fi模块、蓝牙模块等未显示的组件,本实施例不作赘述。
75.本技术实施例公开一种计算机可读存储介质,其存储计算机程序,其中,该计算机程序使得计算机执行本技术实施例公开的任意一种激光外参的标定验证方法。
76.本技术实施例公开一种计算机程序产品,该计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,且该计算机程序可操作来使计算机执行本技术实施例公开的任意一种激光外参的标定验证方法。
77.应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本技术的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定特征、结构或特性可以以任意适合的方式结合在一个或多个实施例中。本领域技术人员也应该知悉,
说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本技术所必须的。
78.在本技术的各种实施例中,应理解,上述各过程的序号的大小并不意味着执行顺序的必然先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
79.上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物单元,即可位于一个地方,或者也可以分布到多个网络单元上。可根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
80.另外,在本技术各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
81.上述集成的单元若以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可获取的存储器中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或者部分,可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干请求用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本技术的各个实施例上述方法的部分或全部步骤。
82.本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(read-only memory,rom)、随机存储器(random access memory,ram)、可编程只读存储器(programmable read-only memory,prom)、可擦除可编程只读存储器(erasable programmable read only memory,eprom)、一次可编程只读存储器(one-time programmable read-only memory,otprom)、电子抹除式可复写只读存储器(electrically-erasable programmable read-only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
83.以上对本技术实施例公开的激光外参的标定验证方法、装置、电子设备及可存储介质进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想。同时,对于本领域的一般技术人员,根据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
技术特征:
1.一种激光外参的标定验证方法,其特征在于,叉车外部设置有3d激光雷达以及托盘,所述叉车和托盘上均设置有反光板,所述方法包括:获得每块反光板对所述3d激光雷达发出的激光反射得到的点云数据;从所述点云数据中提取每块所述反光板的部分点云数据,根据每块所述反光板的部分点云数据确定每块所述反光板的重心点;根据每个所述重心点,确定所述叉车与托盘之间的相对位置关系;根据预先获取的位置关系对所述相对位置关系进行标定验证,在所述预先获取的位置关系与所述相对位置关系相同的情况下,完成所述激光外参的标定验证过程。2.根据权利要求1所述的方法,其特征在于,所述叉车的货叉以及所述托盘上分别设置有至少两个反光板;所述根据每个所述重心点,确定所述叉车与托盘之间的相对位置关系,包括:根据所述叉车上的至少两个反光板的至少两个第一重心点,确定第一直线方程;根据所述托盘上的至少两个反光板的至少两个第二重心点,确定第二直线方程;根据所述第一直线方程、所述第二直线方程、所述至少两个第一重心点以及所述至少两个第二重心点,确定所述叉车与托盘之间的相对位置关系。3.根据权利要求2所述的方法,其特征在于,所述根据所述第一直线方程、所述第二直线方程、所述至少两个第一重心点以及所述至少两个第二重心点,确定所述叉车与托盘之间的相对位置关系,包括:确定所述第一直线方程对应的第一斜率以及所述第二直线方程对应的第二斜率;根据所述至少两个第一重心点,确定第一中心点;根据所述至少两个第二重心点,确定第二中心点;根据所述第一斜率、所述第二斜率、所述第一中心点以及所述第二中心点,确定所述叉车与托盘之间的相对位置关系。4.根据权利要求2所述的方法,其特征在于,所述叉车的除所述货叉之外的其他位置设置有反光板,所述点云数据至少包括每个采样点的三维坐标以及反光强度;所述从所述点云数据中提取每块所述反光板的部分点云数据,根据每块所述反光板的部分点云数据确定每块所述反光板的重心点,包括:根据所述每个采样点的反光强度,从所述点云数据中提取出每块所述反光板的部分点云数据;对每块所述反光板的部分点云数据进行聚类处理,确定多个目标点云集合;根据每个目标点云集合的聚集位置,确定与每个目标点云集合对应的重心点;根据每个所述重心点的高度值确定每块所述反光板的重心点。5.根据权利要求4所述的方法,其特征在于,所述其他位置为定向轮外侧,所述定向轮的高度低于所述货叉的高度;所述根据每个所述重心点的高度值确定每块所述反光板的重心点,包括:确定高度值最小的重心点为所述定向轮外侧设置的反光板的重心点,并确定所述定向轮外侧设置的反光板的重心点对应的目标点云集合为所述定向轮外侧设置的反光板;根据所述定向轮外侧设置的反光板与其他所述反光板之间的距离,确定所述货叉上设置的反光板的点云以及所述托盘上设置的反光板的点云,其中,与所述定向轮外侧设置的
反光板之间的距离最近的两块反光板的点云为所述货叉上设置的反光板的点云,其他反光板的点云为所述托盘上设置的反光板的点云。6.根据权利要求4所述的方法,其特征在于,所述对每块所述反光板的部分点云数据进行聚类处理,确定多个目标点云集合,包括:采用统计滤波方式,过滤掉每块所述反光板的部分点云数据中的孤立点云数据,得到优化后的每块所述反光板的部分点云数据;对所述优化后的每块所述反光板的部分点云数据进行聚类处理,确定多个目标点云集合。7.根据权利要求1~6任一所述的方法,其特征在于,所述方法还包括:在所述预先获取的位置关系与所述相对位置关系不相同的情况下,对所述3d激光雷达的激光外参进行调整,以使通过所述叉车的目标感知设备对所述托盘进行检测得到的预先获取的位置关系,与所述相对位置关系相同;其中,所述目标感知设备为已完成标定的感知设备。8.一种激光外参的标定验证装置,其特征在于,叉车外部设置有3d激光雷达以及托盘,所述叉车和托盘上均设置有反光板,所述装置包括:数据获取模块,用于获得每块反光板对所述3d激光雷达发出的激光反射得到的点云数据;数据处理模块,用于从所述点云数据中提取每块所述反光板的部分点云数据,根据每块所述反光板的部分点云数据确定每块所述反光板的重心点;关系确定模块,用于根据每个所述重心点,确定所述叉车与托盘之间的相对位置关系;标定验证模块,用于根据预先获取的位置关系对所述相对位置关系进行标定验证,在所述预先获取的位置关系与所述相对位置关系相同的情况下,完成所述激光外参的标定验证过程。9.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器实现如权利要求1至7任一项所述的方法。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法。
技术总结
本申请实施例公开一种激光外参的标定验证方法、装置、电子设备及存储介质,叉车外部设置有3D激光雷达以及托盘,叉车和托盘上均设置有反光板,该方法包括:获得每块反光板对3D激光雷达的激光反射得到的点云数据;从点云数据中提取每块反光板的部分点云数据,根据每块反光板的部分点云数据确定每块反光板的重心点;根据每个重心点,确定叉车与托盘之间的相对位置关系;根据预先获取的位置关系对相对位置关系进行标定验证,在预先获取的位置关系与相对位置关系相同的情况下,完成激光外参的标定验证过程。实施本申请实施例,能够获取准确的激光外参。光外参。光外参。
技术研发人员:杨秉川 方牧 鲁豫杰 李陆洋 黎兴成 方晓曼
受保护的技术使用者:未来机器人(深圳)有限公司
技术研发日:2023.06.01
技术公布日:2023/7/12
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
