对象检测方法、装置及运载装置转让专利

申请号 : CN202310626985.8

文献号 : CN116359938B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杨秉川方牧鲁豫杰李陆洋杨思琪方晓曼

申请人 : 未来机器人(深圳)有限公司

摘要 :

本申请实施例公开一种对象检测方法、装置及运载装置,该方法包括:获取针对目标对象的多个初始点云数据,以及获取运载装置的多帧里程信息;根据每个初始点云数据对应的采集时刻,以及每帧里程信息对应的时间戳,将多个初始点云数据与多帧里程信息进行匹配;根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,对第一初始点云数据进行修正,得到第一初始点云数据对应的目标点云数据;根据每个初始点云数据对应的目标点云数据,确定目标对象对应的当前位置信息。实施本申请实施例,能够对初始点云数据进行运动去畸变处理,提高了点云数据的准确性,提高了对象检测的准确性。

权利要求 :

1.一种对象检测方法,其特征在于,应用于运载装置,所述方法包括:

获取通过激光雷达采集的针对目标对象的多个初始点云数据,以及获取通过里程计装置采集的所述运载装置的多帧里程信息;所述目标对象包括待取放的货物,所述里程信息包括空间坐标信息和方向信息;

根据每个所述初始点云数据对应的采集时刻,以及每帧所述里程信息对应的时间戳,将所述多个初始点云数据与所述多帧里程信息进行匹配;

根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,对所述第一初始点云数据进行修正,得到所述第一初始点云数据对应的目标点云数据;所述第一初始点云数据为所述多个初始点云数据中的任一初始点云数据,所述最新初始点云数据为采集时刻距离当前时刻最近的初始点云数据;

根据每个所述初始点云数据对应的目标点云数据,确定所述目标对象对应的当前位置信息;

所述根据每个所述初始点云数据对应的目标点云数据,确定所述目标对象对应的当前位置信息,包括:根据每个所述初始点云数据对应的目标点云数据,确定每个所述目标点云数据对应的第一位置信息;

获取所述里程计装置采集的最近一帧里程信息;所述最近一帧里程信息为对应的时间戳距离当前时刻最近的里程信息;

根据所述最近一帧里程信息以及所述目标里程信息,对最新目标点云数据对应的最新位置信息进行更新,以得到所述目标对象对应的当前位置信息;其中,所述最新目标点云数据为所述最新初始点云数据对应的目标点云数据。

2.根据权利要求1所述的方法,其特征在于,所述根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,对所述第一初始点云数据进行修正,得到所述第一初始点云数据对应的目标点云数据,包括:根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,将所述第一初始点云数据从所述第一里程信息对应的第一坐标系,转换至所述目标里程信息对应的目标坐标系,以得到所述第一初始点云数据对应的目标点云数据。

3.根据权利要求1所述的方法,其特征在于,所述根据每个所述初始点云数据对应的采集时刻,以及每帧所述里程信息对应的时间戳,将所述多个初始点云数据与所述多帧里程信息进行匹配,包括:若第一初始点云数据对应的第一采集时刻与第一时间戳相同,则将所述第一时间戳对应的第一里程信息确定为所述第一初始点云数据匹配的第一里程信息。

4.根据权利要求1所述的方法,其特征在于,所述根据每个所述初始点云数据对应的采集时刻,以及每帧所述里程信息对应的时间戳,将所述多个初始点云数据与所述多帧里程信息进行匹配,包括:若第一初始点云数据对应的第一采集时刻与每帧所述里程信息对应的时间戳都不相同,则根据所述第一采集时刻,确定与所述第一初始点云数据相邻的第三里程信息及第四里程信息;其中,所述第三里程信息对应的时间戳与所述第一采集时刻相邻,并且位于所述第一采集时刻之前;所述第四里程信息对应的时间戳与所述第一采集时刻相邻,并且位于所述第一采集时刻之后;

根据所述第三里程信息以及所述第四里程信息,确定所述第一初始点云数据匹配的第一里程信息。

5.根据权利要求1所述的方法,其特征在于,所述获取通过激光雷达采集的针对目标对象的多个初始点云数据,以及获取通过里程计装置采集的所述运载装置的多帧里程信息,包括:控制里程计装置定时发送同步信号至激光雷达,以使所述里程计装置与所述激光雷达同步采集数据;

接收所述激光雷达采集的针对目标对象的多个点云数据,并对所述多个点云数据进行缓存;

接收里程计装置采集的所述运载装置的多帧里程信息,并将所述多帧里程信息进行缓存。

6.根据权利要求1所述的方法,其特征在于,所述根据所述最近一帧里程信息以及所述目标里程信息,对最新目标点云数据对应的最新位置信息进行更新,以得到所述目标对象对应的当前位置信息,包括:根据所述最近一帧里程信息以及所述目标里程信息,将所述最新目标点云数据对应的最新位置信息从所述目标里程信息对应的目标坐标系,转换至所述最近一帧里程信息对应的当前坐标系,以得到所述目标对象对应的当前位置信息。

7.根据权利要求1 5任一所述的方法,其特征在于,所述方法还包括:

~

根据每个所述初始点云数据对应的目标点云数据,确定每个所述目标点云数据对应的第一位置信息;

分别根据每个所述第一位置信息,以及第二里程信息,计算得到每个所述第一位置信息分别在第二坐标系下的第二位置信息;所述第二坐标系为基于第二里程信息建立的坐标系,所述第二里程信息为任意一帧所述里程信息;

根据每个所述第二位置信息,确定所述运载装置对应的系统误差数据。

8.一种对象检测装置,其特征在于,所述装置包括:

数据获取模块,用于获取通过激光雷达采集的针对目标对象的多个初始点云数据,以及获取通过里程计装置采集的运载装置的多帧里程信息;所述目标对象包括待取放的货物,所述里程信息包括空间坐标信息和方向信息;

数据匹配模块,用于根据每个所述初始点云数据对应的采集时刻,以及每帧所述里程信息对应的时间戳,将所述多个初始点云数据与所述多帧里程信息进行匹配;

数据修正模块,用于根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,对所述第一初始点云数据进行修正,得到所述第一初始点云数据对应的目标点云数据;所述第一初始点云数据为所述多个初始点云数据中的任一初始点云数据,所述最新初始点云数据为采集时刻距离当前时刻最近的初始点云数据;

对象检测模块,用于根据每个所述初始点云数据对应的目标点云数据,确定所述目标对象对应的当前位置信息;

所述对象检测模块,具体用于根据每个所述初始点云数据对应的目标点云数据,确定每个所述目标点云数据对应的第一位置信息;

获取所述里程计装置采集的最近一帧里程信息;所述最近一帧里程信息为对应的时间戳距离当前时刻最近的里程信息;

根据所述最近一帧里程信息以及所述目标里程信息,对最新目标点云数据对应的最新位置信息进行更新,以得到所述目标对象对应的当前位置信息;其中,所述最新目标点云数据为所述最新初始点云数据对应的目标点云数据。

9.一种运载装置,其特征在于,所述运载装置包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器实现如权利要求1至

7任一项所述的方法。

说明书 :

对象检测方法、装置及运载装置

技术领域

[0001] 本申请涉及物流运输技术领域,具体涉及一种对象检测方法、装置及运载装置。

背景技术

[0002] 随着贸易的不断发展,物流运输的重要性愈发显现。而通过叉车等运载装置对货物进行取出,则是物流运输过程中非常重要的一环。而现有运载装置的取货方式通常是采用激光雷达对货物进行检测,根据生成的点云数据来对货物进行识别和定位。但运动过程中点云数据会产生运动畸变,因此运载装置需要停车进行点云检测,否则会出现点云数据不准确的情况,而如果叉车等设备停车对货物进行检测,由于设备启动和检测耗时较长,则会影响货物检测的效率。

发明内容

[0003] 本申请实施例公开了一种对象检测方法、装置及运载装置,能够提高点云数据的准确性,从而提高对象检测的准确性,且不需要运载装置停车进行检测,提高检测效率。
[0004] 本申请实施例第一方面公开了一种对象检测方法,应用于运载装置,所述方法包括:
[0005] 获取通过激光雷达采集的针对目标对象的多个初始点云数据,以及获取通过里程计装置采集的所述运载装置的多帧里程信息;
[0006] 根据每个所述初始点云数据对应的采集时刻,以及每帧所述里程信息对应的时间戳,将所述多个初始点云数据与所述多帧里程信息进行匹配;
[0007] 根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,对所述第一初始点云数据进行修正,得到所述第一初始点云数据对应的目标点云数据;所述第一初始点云数据为所述多个初始点云数据中的任一初始点云数据,所述最新初始点云数据为采集时刻距离当前时刻最近的初始点云数据;
[0008] 根据每个所述初始点云数据对应的目标点云数据,确定所述目标对象对应的当前位置信息。
[0009] 本申请实施例第二方面公开了一种对象检测装置,所述装置包括:
[0010] 数据获取模块,用于获取通过激光雷达采集的针对目标对象的多个初始点云数据,以及获取通过里程计装置采集的所述运载装置的多帧里程信息;
[0011] 数据匹配模块,用于根据每个所述初始点云数据对应的采集时刻,以及每帧所述里程信息对应的时间戳,将所述多个初始点云数据与所述多帧里程信息进行匹配;
[0012] 数据修正模块,用于根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,对所述第一初始点云数据进行修正,得到所述第一初始点云数据对应的目标点云数据;所述第一初始点云数据为所述多个初始点云数据中的任一初始点云数据,所述最新初始点云数据为采集时刻距离当前时刻最近的初始点云数据;
[0013] 对象检测模块,用于根据每个所述初始点云数据对应的目标点云数据,确定所述目标对象对应的当前位置信息。
[0014] 本申请实施例第三方面公开了一种运载装置,所述运载装置包括存储器及处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器实现本申请实施例公开的任意一种对象检测方法。
[0015] 与相关技术相比,本申请实施例具有以下有益效果:
[0016] 获取通过激光雷达采集的针对目标对象的多个初始点云数据,以及通过里程计装置采集的运载装置的多帧里程信息,接着根据每个初始点云数据对应的采集时刻,以及根据每帧里程信息对应的时间戳,将点云数据与里程信息进行匹配,能够将里程信息与初始点云数据实现时间同步。而由于最新初始点云数据为采集时刻距离当前时刻最近的初始点云数据,因此匹配后根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,对第一初始点云数据进行修正,得到第一初始点云数据对应的目标点云数据,能够根据最新初始点云数据,对同步后的初始点云数据进行运动去畸变处理,提高了点云数据的准确性。后续根据每个初始点云数据对应的目标点云数据确定目标对象对应的当前位置信息,能够根据去运动畸变后的点云数据检测出目标对象当前的位置信息,提高了对象检测的准确性。本申请实施例可以在运载装置运动过程中进行对象检测,无需运载装置停车进行检测,提高了对象检测的效率。

附图说明

[0017] 为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018] 图1为一个实施例公开的对象检测方法的应用场景图;
[0019] 图2为一个实施例公开的一种对象检测方法的流程示意图;
[0020] 图3是一个实施例公开的一种运载装置运动轨迹示意图;
[0021] 图4是一个实施例公开的一种触发信号的示意图;
[0022] 图5是一个实施例公开的另一种对象检测方法的流程示意图;
[0023] 图6是一个实施例公开的一种运载装置进行对象检测的流程示意图;
[0024] 图7是一个实施例公开的一种对象检测方法的时序图;
[0025] 图8为一个实施例公开的一种对象检测装置的结构示意图;
[0026] 图9为一个实施例公开的一种运载装置的结构示意图。

具体实施方式

[0027] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0028] 需要说明的是,本申请实施例及附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0029] 本申请实施例公开了一种对象检测方法、装置及运载装置,能够提高点云数据的准确性,从而提高对象检测的准确性,且不需要运载装置停车进行检测,提高检测效率。以下分别进行详细说明。
[0030] 请参阅图1,图1为一个实施例公开的对象检测方法的应用场景图。如图1所示,可包括运载装置10(例如无人叉车等,也可称为自动搬运机器人或自动导向车,即Automated Guided Vehicle,AGV)和目标对象20。
[0031] 如图1所示,运载装置10可以包括激光雷达11以及里程计装置12。
[0032] 其中,上述激光雷达11可以包括3D激光雷达,以用于针对运载装置10附近,尤其是其前方空间进行点云数据采集,得到相应的点云数据。该点云数据可以用于进行目标检测,以确定其中针对目标对象20的初始点云数据。
[0033] 其中,上述里程计装置12,可以包括用于对运载装置10运动的空间信息、方向信息等进行记录,得到相应的里程信息的模组,例如加速度传感器、陀螺仪、舵轮运动及转向记录模块(如针对电机、车轮、转向盘、制动器等部件的相关状态、控制信号进行记录的模块)等。根据上述里程计装置12所采集的里程信息,可以确定运载装置10所处的位置,进而可以结合上述激光雷达11所采集的点云数据,进一步确定目标对象20对应的位置信息。
[0034] 示例性地,以运载装置10包括无人叉车为例,上述激光雷达11可以设置于该无人叉车的叉臂根部间的中点处(例如设置于车体上或叉臂结构上,前者如图1所示),也可以根据实际条件设置于其他位置(例如基于无人叉车形态、仓储空间环境的不同调整设置位置)。上述里程计装置12则可以设置于该无人叉车内部,或者根据具体需求设置于无人叉车的其他不同位置。
[0035] 需要说明的是,图1所示的运载装置10为车辆形态,这仅是一种示例。在其他实施例中,运载装置10也可以具有其他不同的形态,例如轨道运载装置、非车辆形态的无轨道运载装置、机器人等,本申请实施例中不作具体限定。示例性地,上述运载装置10所搭载的激光雷达11和里程计装置12,可以由该运载装置10内置的处理器模块(未具体图示)进行控制,例如车机、电脑、基于SoC(System‑on‑a‑Chip,片上系统)的运载装置取货检测系统等各类设备或系统,本申请实施例中也不作具体限定。
[0036] 在一些实施例中,上述激光雷达11和里程计装置12,也可以分别搭载有相应的处理单元,并通过与运载装置10内置的其他必要模块建立通信连接,受控实现所需的运载装置取货检测功能。示例性地,上述其他必要模块,可以包括处理器(可用于向激光雷达11和/或里程计装置12发送触发信号)、目标检测模块(可用于根据激光雷达11和/或里程计装置12所采集的数据,检测目标对象20)、结果预测模块(可用于根据激光雷达11和/或里程计装置12所采集的数据,确定目标对象20对应的位置信息)等,本申请实施例中也不作具体限定。
[0037] 示例性地,上述目标对象20,可以包括待取放的货物、货物托盘(例如空托盘,或者盛放有货物的托盘)、货架等,也可以包括用于确定运载装置10后续运动目标的位置标识或方向标识(例如用于指示运载装置10停靠或朝向某一方向运动的条形码、二维码等),可根据该运载装置10在工作场景中的具体需求而确定。
[0038] 在本申请实施例中,为了在仓储物流的工作场景中对目标对象20的位置进行检测,并克服相关技术中由于运载装置10在移动过程中采用激光雷达对货物进行检测,使得生成的点云数据产生运动畸变,而导致对目标对象20的识别、定位失准的问题,可以通过结合上述激光雷达11所采集的点云数据,以及里程计装置12所采集的里程信息,共同实现对目标对象20的精确定位。示例性地,运载装置10获取通过激光雷达采集的针对目标对象20的多个初始点云数据,以及获取通过里程计装置采集的运载装置的多帧里程信息。运载装置10根据每个初始点云数据对应的采集时刻,以及每帧里程信息对应的时间戳,将多个点云数据与多帧里程信息进行匹配。匹配后运载装置10根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,对第一初始点云数据进行修正,得到第一初始点云数据对应的目标点云数据;其中,第一初始点云数据为多个初始点云数据中的任一初始点云数据,最新初始点云数据为采集时刻距离当前时刻最近的初始点云数据。运载装置10最后根据每个初始点云数据对应的目标点云数据,确定目标对象20对应的当前位置信息。
[0039] 可见,实施本实施例的对象检测方法,根据获取的每个初始点云数据对应的采集时刻,以及根据获取的每帧里程信息对应的时间戳,将点云数据与里程信息进行匹配,能够将里程信息与初始点云数据实现时间同步。而由于最新初始点云数据为采集时刻距离当前时刻最近的初始点云数据,因此匹配后根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,对第一初始点云数据进行修正,得到第一初始点云数据对应的目标点云数据,能够根据最新初始点云数据,对同步后的初始点云数据进行运动去畸变处理,提高了点云数据的准确性。后续根据每个初始点云数据对应的目标点云数据确定目标对象对应的当前位置信息,能够根据去运动畸变后的点云数据检测出目标对象当前的位置信息,提高了对象检测的准确性。
[0040] 请参阅图2,图2为一个实施例公开的一种对象检测方法的流程示意图,该方法可应用于如图1所示的应用场景中的运载装置10。如图2所示,该方法可包括以下步骤:
[0041] 210、获取通过激光雷达采集的针对目标对象的多个初始点云数据,以及获取通过里程计装置采集的运载装置的多帧里程信息。
[0042] 在本申请实施例中,运载装置可以通过激光雷达进行持续或者间断的点云数据采集,得到多个采集时刻的点云数据,并从中获取出针对目标对象的多个初始点云数据;同时,运载装置还可以通过里程计装置进行持续或者间断的里程信息采集,得到多帧里程信息。为了尽可能节省功耗,运载装置在进行上述点云数据采集以及里程信息采集时,均可以按照一定时间间隔进行,并且可以基于指定的触发控制逻辑定时进行。其中,初始点云数据为针对目标对象进行采集的点云数据,具体可以为通过激光雷达采集的部分或者全部的点云数据;运载装置可以从激光雷达采集的每个采集时刻的点云数据中,获取当前时刻之前的一个时间段的点云数据作为初始点云数据。里程信息为反映运载装置运动情况的信息,具体可以包括运载装置的三维加速度和三维角速度。
[0043] 在一些实施例中,运载装置执行获取通过激光雷达采集的目标对象在每个时刻的点云数据,以及获取通过里程计装置采集的运载装置的多帧里程信息的步骤中,可以包括以下步骤:
[0044] 控制里程计装置定时发送同步信号至激光雷达,以使里程计装置与激光雷达同步采集数据;
[0045] 接收激光雷达采集的针对目标对象的多个点云数据,并对多个点云数据进行缓存;
[0046] 接收里程计装置采集的运载装置的多帧里程信息,并将多帧里程信息进行缓存。
[0047] 在本申请实施例中,运载装置,具体可以是运载装置中的处理器,控制里程计装置定时发送同步信号至激光雷达,以使里程计装置以及激光雷达根据同步信号同时开始进行对应的数据采集,实现里程计装置与激光雷达同步采集数据。
[0048] 里程计装置将同步信号发送到激光雷达,与激光雷达同时采集,并在采集到多帧里程信息后,可以将采集的多帧里程信息传输至算法模块或者存储模块中,以实现多帧里程信息的缓存其中,算法模块是用于进行数据运算的模块,存储模块是用于进行数据存储的模块。
[0049] 激光雷达接收到同步信号,与里程计装置同时采集,并在采集到多个点云数据后,可以将采集的针对目标对象的多个点云数据传输至运载装置中的进行数据运算的模块或者是进行数据存储的模块中,以实现点云数据的缓存。
[0050] 在本申请实施例中,运载装置可以从缓存的每个采集时刻的点云数据中,获取当前时刻之前一段时间的点云数据作为初始点云数据,并且从缓存的多帧里程数据中,获取部分或者全部里程信息。
[0051] 采用上述实施例,能够令里程计装置与激光雷达同时采集数据,以在后续点云去畸变过程中更好地将初始点云数据与里程信息进行匹配;另外,在里程计装置和激光雷达每次同步采集数据时,对采集到的里程信息以及点云数据进行缓存,能够提高后续获取初始点云数据以及里程信息的效率,并且能够及时对数据进行更新。
[0052] 在一些实施例中,上述运载装置或者是运载装置中的处理器可以按照第一频率(例如1Hz、2Hz等),定时向激光雷达发送第一触发信号,以触发该激光雷达按照第一频率采集点云数据。类似地,运载装置或者是运载装置中的处理器也可以按照第二频率(例如5Hz、10Hz等),定时向里程计装置发送第二触发信号,以触发该里程计装置按照第二频率采集运载装置自身的里程信息。其中,第一触发信号用于控制激光雷达进行点云数据采集的第一频率;第二触发信号用于控制里程计装置进行里程信息采集的第二频率。
[0053] 其中,上述第一频率可以与第二频率相同,也可以不相同。在一些实施例中,第二频率可以高于第一频率,即,相同时长内里程计装置所采集里程信息的帧数,可以保持高于激光雷达所采集点云数据的帧数,以在尽可能降低运载装置处理从检测的点云数据中获取的初始点云数据所需消耗的算力和时间(即节省算力,提高检测效率)的基础上,仍保持较高的里程记录频率,确保运载装置后续对目标对象进行定位的准确性。
[0054] 可选地,上述第二频率可以为第一频率的整数倍(例如2倍、3倍、5倍等),以便于后续对运载装置所获取的初始点云数据和里程信息进行匹配。在一些实施例中,每次运载装置或者是运载装置中的处理器向激光雷达发送第一触发信号,均可与该处理器向里程计装置发送第二触发信号同步进行,即,针对每个第一触发信号,均存在同时触发的第二触发信号,以保证激光雷达以及里程计模块能够同步开始进行数据采集。
[0055] 举例来说,请参阅图3,图3是一个实施例公开的一种运载装置运动轨迹示意图。如图3所示,在运载装置运动的过程中,每隔一定时长(例如按照上述的第二频率),运载装置或者运载装置内置的处理器均可向里程计装置发送第二触发信号,以触发该里程计装置定时采集里程信息(如运载装置运动轨迹中的黑点所示),该里程信息可以包括运载装置的空间坐标、朝向方向信息等。在此基础上,针对里程计装置采集里程信息的时刻,每隔一定时长(例如按照上述的第一频率),即,在里程计装置采集里程信息的部分相隔该固定时长的时刻(例如t0、t1、t2时刻等),运载装置或者运载装置内置的处理器可以同时向激光雷达发送第一触发信号,以触发该激光雷达定时采集点云数据(如运载装置运动轨迹中,t0、t1、t2时刻对应的激光雷达所示)。需要说明的是,图3所示的里程计装置采集里程信息的帧率,为激光雷达采集点云数据的帧率的2倍,这仅是一种示例,在其他实施例中也可以为其他倍数。
[0056] 其中,上述点云数据,可以包括点云数据的数据集合,也可以包括基于点云数据得到的三维重建图像等,本申请实施例中不作具体限定。上述里程信息,则可以包括运载装置运动的空间信息、方向信息等,例如该运载装置的空间坐标x、y、z(可基于指定原点所建立的XYZ三维坐标系而确定),以及该运载装置的朝向方向信息roll(横滚角/翻滚角,即绕Z轴旋转的角度)、pitch(俯仰角,即绕X轴旋转的角度)、yaw(航向角/偏航角,即绕Y轴旋转的角度)等,本申请实施例中也不作具体限定。
[0057] 采用上述实施例,能够控制里程计装置以及激光雷达按照不同的采集频率进行数据采集,使得数据采集过程在保证采集的数据量的同时,还能够对运算量进行控制,减少不必要的运算。
[0058] 在一些实施例中,请参阅图4,图4是一个实施例公开的激光雷达与里程计装置分别进行数据获取的时序图。如图4所示,里程计装置采集里程信息的频率与常规的时钟信号频率相同,而激光雷达采集点云数据的频率则大于里程计装置采集里程信号的频率,也就是激光雷达和里程计装置均在对应时序的上升沿进行一次数据采集。激光雷达将采集到的点云数据进行缓存,并且在缓存时,将当前时刻之前的100个时刻内的点云数据作为一帧点云数据。激光雷达可以按照预定的频率以及每帧包含的点云数据数量,对采集到的点云数据进行缓存,以及从缓存的点云数据中获取初始点云数据。里程计装置也可以按照预定的频率,对采集到的里程信息进行缓存,以及从缓存的里程信息中获取多帧里程信息。
[0059] 220、根据每个初始点云数据对应的采集时刻,以及每帧里程信息对应的时间戳,将多个初始点云数据与多帧里程信息进行匹配。
[0060] 在本申请实施例中,运载装置根据获取的每个初始点云数据对应的采集时刻,以及获取的每帧里程信息对应的时间戳,将初始点云数据与里程信息进行匹配。其中,针对每个初始点云数据,可以根据初始点云数据对应的采集时刻,按顺序分别与每帧里程信息对应的时间戳进行比较,确定出与初始点云数据的采集时刻最接近的时间戳,并将该最接近的时间戳对应的里程信息确定为该初始点云数据匹配的里程信息。每个初始点云数据所匹配的里程信息各不相同。采集时刻为采集到点云数据或者是对点云数据进行采集的时刻;时间戳为采集到里程信息或者是对里程信息进行采集的时间数据。
[0061] 举例来说,运载装置获取了3个初始点云数据和4个里程信息,3个初始点云数据分别为初始点云数据A、初始点云数据B和初始点云数据C,这三个初始点云数据对应的采集时刻分别为1s、1.5s和2s,而4个里程信息分别为里程信息a、里程信息b、里程信息c和里程信息d,这四个里程信息对应的时间戳分别为0.8s、1.2s、1.6s和2s。运载装置按照初始点云数据对应的采集时刻的先后顺序,来依次匹配里程信息。因此先从初始点云数据A开始匹配,由于里程信息a和里程信息b的时间戳均为最接近初始点云数据A对应的采集时刻,因此,运载装置可以将里程信息a或者里程信息b确定为初始点云数据A匹配的里程信息,在这里,运载装置将里程信息a确定为初始点云数据A匹配的里程信息。接着,运载装置将初始点云数据B与每个里程信息进行匹配。由于,每个初始点云数据所匹配的里程信息各不相同,而里程信息a已与初始点云数据A匹配了,因此,运载装置可以将初始点云数据B与里程信息b、里程信息c和里程信息d进行匹配。可见,里程信息c的时间戳均为最接近初始点云数据B对应的采集时刻,因此,运载装置可以将里程信息c确定为初始点云数据B匹配的里程信息。最后,运载装置将初始点云数据C与里程信息b和里程信息d进行匹配。可见,里程信息d的时间戳均为最接近初始点云数据C对应的采集时刻,因此,运载装置可以将里程信息d确定为初始点云数据C匹配的里程信息。
[0062] 230、根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,对第一初始点云数据进行修正,得到第一初始点云数据对应的目标点云数据;第一初始点云数据为多个初始点云数据中的任一初始点云数据,最新初始点云数据为采集时刻距离当前时刻最近的初始点云数据。
[0063] 在本申请实施例中,运载装置确定出每个初始点云数据匹配的里程信息后,根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,对第一初始点云数据进行修正。其中,第一初始点云数据为获取的多个初始点云数据中的任意一个;最新初始点云数据为获取的多个初始点云数据中,采集时刻距离当前时刻最接近的初始点云数据,目标里程信息为最新初始点云数据所匹配的里程信息。
[0064] 运载装置按照上述修正方式,对获取的每个初始点云数据进行修正,得到每个初始点云数据所对应的目标点云数据。其中,目标点云数据为初始点云数据修正后的点云数据。
[0065] 240、根据每个初始点云数据对应的目标点云数据,确定目标对象对应的当前位置信息。
[0066] 在本申请实施例中,运载装置可以根据每个初始点云数据对应的目标点云数据,对目标对象进行检测,以检测出目标对象的位置信息。具体地,运载装置可以根据每个初始点云数据对应的目标点云数据,得到目标对象的多个第一位置信息,接着根据这些第一位置信息可以确定出目标对象对应的当前位置信息。其中,第一位置信息为根据目标点云数据检测得到的目标对象的位置信息;当前位置信息为预测的目标对象当前时刻所在的位置的位置信息。由于得到多个第一位置信息所依据的目标点云数据是由多个初始点云数据修正后得到的,因此,运载装置可以将得到的多个第一位置信息采用例如计算平均值、计算最大值或者是加权求和等方式,得到最终的一个位置信息,将该位置信息确定为目标对象对应的当前位置信息。
[0067] 采用上述实施例,根据每个初始点云数据对应的采集时刻,以及根据每帧里程信息对应的时间戳,将点云数据与里程信息进行匹配,能够将里程信息与初始点云数据实现时间同步。而由于最新初始点云数据为采集时刻距离当前时刻最近的初始点云数据,因此匹配后根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,对第一初始点云数据进行修正,得到第一初始点云数据对应的目标点云数据,能够根据最新初始点云数据,对同步后的初始点云数据进行运动去畸变处理,提高了点云数据的准确性。后续根据每个初始点云数据对应的目标点云数据确定目标对象对应的当前位置信息,能够根据去运动畸变后的点云数据检测出目标对象当前的位置信息,提高了对象检测的准确性。
[0068] 请参阅图5,图5是一个实施例公开的另一种对象检测方法的流程示意图,该方法可以应用于图1所示的运载装置10。如图5所示,该机器人取货检测方法可以包括以下步骤:
[0069] 510、获取通过激光雷达采集的针对目标对象的多个初始点云数据,以及获取通过里程计装置采集的运载装置的多帧里程信息。
[0070] 520、根据每个初始点云数据对应的采集时刻,以及每帧里程信息对应的时间戳,将多个初始点云数据与多帧里程信息进行匹配。
[0071] 在一些实施例中,根据每个初始点云数据对应的采集时刻,以及每帧里程信息对应的时间戳,将多个初始点云数据与多帧里程信息进行匹配,包括:
[0072] 若第一初始点云数据对应的第一采集时刻与第一时间戳相同,则将第一时间戳对应的第一里程信息确定为第一初始点云数据匹配的第一里程信息。
[0073] 若第一初始点云数据对应的第一采集时刻与每帧里程信息对应的时间戳都不相同,则根据第一采集时刻,确定与第一初始点云数据相邻的第三里程信息及第四里程信息;其中,第三里程信息对应的时间戳与第一采集时刻相邻,并且位于第一采集时刻之前;第四里程信息对应的时间戳与第一采集时刻相邻,并且位于第一采集时刻之后;
[0074] 根据第三里程信息以及第四里程信息,确定第一初始点云数据匹配的第一里程信息。
[0075] 在本申请实施例中,运载装置根据每个初始点云数据对应的采集时刻,以及每帧里程信息对应的时间戳,将多个初始点云数据与多帧里程信息进行匹配。具体地,如果运载装置或者运载装置中的处理器通过分别发送触发信号至激光雷达以及里程计装置,使得激光雷达开始采集点云数据的时刻与里程计装置开始采集里程信息的时刻相同,并且激光雷达采集点云数据的频率与里程计装置采集里程信息的频率相同。那么,从采集的点云数据中获取的一个初始点云数据所对应的采集时刻,必然与某一采集的里程信息对应的时间戳相同。因此,运载装置具体将第一初始点云数据对应的第一采集时刻,与每帧里程信息对应的时间戳进行匹配。其中,第一采集时刻为第一初始点云数据对应的采集时刻,第一初始点云数据为任一初始点云数据。
[0076] 如果第一初始点云数据对应的第一采集时刻与第一时间戳相同,那么运载装置可以将第一时间戳对应的第一里程信息确定为第一初始点云数据匹配的第一里程信息。依此确定出每个初始点云数据所匹配的里程信息。其中,第一时间戳为任一时间戳,第一里程信息为第一时间戳所对应的时间信息。
[0077] 举例来说,运载装置中的处理器通过发送触发信息至激光雷达以及里程计装置,使得激光雷达与里程计装置同时开始采集点云数据以及里程信息,并且激光雷达与里程计装置分别采集点云数据和里程信息的频率均为2s一次。运载装置获取到3个初始点云数据,分别为初始点云数据A、初始点云数据B和初始点云数据C,这三个初始点云数据对应的采集时刻分别为1s、3s和5s,里程计装置同一时段采集到3个里程信息分别为里程信息a、里程信息b和里程信息c,这三个里程信息对应的时间戳分别为3s、1s和5s。根据上述采集时刻以及时间戳,运载装置可以将里程信息b确定为初始点云数据A匹配的里程信息,将里程信息a确定为初始点云数据B匹配的里程信息,将里程信息c确定为初始点云数据C匹配的里程信息。
[0078] 如果运载装置或者运载装置中的处理器通过分别发送触发信号至激光雷达以及里程计装置,使得激光雷达开始采集点云数据的时刻与里程计装置开始采集里程信息的时刻不相同,和/或,激光雷达采集点云数据的频率与里程计装置采集里程信息的频率不相同。那么,从采集的点云数据中获取的一个初始点云数据所对应的采集时刻,可能与每帧采集的里程信息对应的时间戳都不相同。
[0079] 因此,针对任一初始点云数据,例如第一初始点云数据,如果第一初始点云数据对应的第一采集时刻与每帧里程信息对应的时间戳都不相同,那么,运载装置可以根据第一初始点云数据对应的第一采集时刻,确定出与第一采集时刻相邻的两个里程信息,分别为第三里程信息与第四里程信息。其中,第三里程信息所对应的时间戳与第一采集时刻相邻,并且第三里程信息所对应的时间戳位于第一采集时刻之前;而第四里程信息对应的时间戳也与第一采集时刻相邻,但第四里程信息所对应的时间戳位于第一采集时刻之后。接着运载装置可以根据第三里程信息与第四里程信息,确定出第一初始点云所匹配的第一里程信息。
[0080] 作为一种实施方式,运载装置通过插值算法如线性插值、球面插值或者加权插值等方式,根据第三里程信息与第四里程信息,确定出第一初始点云所匹配的第一里程信息。
[0081] 作为另一种实施方式,运载装置还可以对第三里程信息与第四里程信息进行判断,直接将第三里程信息或者第四里程信息确定为第一初始点云所匹配的第一里程信息。
[0082] 举例来说,第一初始点云数据对应的第一采集时刻为1.8s,而里程计装置采集到3个里程信息分别为里程信息a、里程信息b和里程信息c,这三个里程信息对应的时间戳分别为1s、1.5s和2s。因此,运载装置根据第一采集时刻以及三个时间戳,可以确定出第三里程信息为里程信息b,第四里程信息为里程信息c。运载信息可以采用线性插值法对里程信息b和里程信息c进行插值处理,确定出里程信息在1.5s到2s之间可能的轨迹。接着确定出轨迹上与第一采集时刻1.8s相同时刻的里程信息,将该里程信息确定出第一初始点云数据对应的第一里程信息。
[0083] 运载装置根据上述方式确定出所有初始点云数据匹配的里程信息后,根据每个初始点云数据对应的采集时刻,选取出采集时刻距离当前时刻最近的初始点云数据作为最新初始点云数据,以及确定出最新初始点云数据对应的目标里程信息。
[0084] 采用上述实施例,运载装置能够在采集时刻与时间戳相同的情况下,快速完成初始点云数据与里程信息的匹配;而在采集时刻与时间戳不相同的情况下,通过初始点云数据对应的采集时刻相邻的时间戳所对应的里程信息,来确定出初始点云数据匹配的里程信息,能够提高确定的与初始点云数据匹配的里程信息的准确度,从而保证后续对象检测的准确性。上述实施例能够提高初始点云数据和里程信息匹配过程的适用性。
[0085] 530、根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,将第一初始点云数据从第一里程信息对应的第一坐标系,转换至目标里程信息对应的目标坐标系,以得到第一初始点云数据对应的目标点云数据。其中,第一初始点云数据为多个初始点云数据中的任一初始点云数据,最新初始点云数据为采集时刻距离当前时刻最近的初始点云数据。
[0086] 在本申请实施例中,基于多帧里程信息中的任意一帧里程信息,均可以建立相应的坐标系。针对任意一个初始点云数据,也就是第一初始点云数据,运载装置根据确定的第一初始点云数据匹配的第一里程信息,以及最新初始点云数据匹配的目标里程信息,将第一初始点云数据从第一里程信息对应的第一坐标系,转换至目标里程信息对应的目标坐标系,得到的坐标系转换后的第一初始点云数据为第一初始点云数据对应的目标点云数据。其中,第一坐标系为基于第一里程信息建立的坐标系,目标坐标系为基于目标里程信息建立的坐标系。
[0087] 举例来说,第一初始点云数据可以表示为 ,第一里程信息对应的第一坐标系为,目标里程信息对应的目标坐标系为 。因此,运载装置将第一初始点云数据从第一里程信息对应的第一坐标系,转换至目标里程信息对应的目标坐标系,得到第一初始点云数据对应的目标点云数据的过程可以如下式(1)所示,
[0088] (1)
[0089] 其中, 为第一初始点云数据对应的目标点云数据。
[0090] 运载装置可以根据上述目标点云数据确定过程,得到每个初始点云数据对应的目标点云数据。
[0091] 采用上述实施例,通过基于里程信息建立的坐标系之间的坐标系转换方式,能够令最新初始点云数据以外的其他初始点云数据,更好地与最新初始点云数据进行对齐,从而提高其他初始点云数据与最新初始点云数据进行对齐而实现的点云去运动畸变的效果。
[0092] 540、根据每个初始点云数据对应的目标点云数据,确定每个目标点云数据对应的第一位置信息。
[0093] 550、获取里程计装置采集的最近一帧里程信息;最近一帧里程信息为对应的时间戳距离当前时刻最近的里程信息。
[0094] 560、根据最近一帧里程信息以及目标里程信息,对每个第一位置信息进行更新,以得到目标对象对应的当前位置信息。
[0095] 在本申请实施例中,由于根据每个目标点云数据确定出目标对象对应的位置信息的处理过程需要一定的处理时间,使得运载装置在根据目标点云数据确定出目标对象对应的位置信息之后,最新初始点云数据匹配的目标里程信息的时间戳,已与当前时刻相距较远,使得位置信息的准确性有所降低。因此,运载装置在根据目标点云数据确定出目标对象对应的第一位置信息之后,为得到目标对象对应的当前位置信息,需要获取里程计装置采集的最近一帧里程信息来将第一位置信息进行更新。
[0096] 具体地,运载装置可以先根据每个初始点云数据对应的目标点云数据,确定出每个初始点云数据分别对应的第一位置信息,第一位置信息为根据初始点云数据对应的目标点云数据所检测得到的目标对象的位置信息,每个第一位置信息与一个初始点云数据或者是初始点云数据对应的目标点云数据一一对应。运载装置获取里程计装置采集的最近一帧里程信息,最近一帧里程信息为对应的时间戳距离当前时刻最近的里程信息,也就是里程计装置最近一次采集或者缓存的一帧里程信息。运载装置可以结合最近一帧里程计信息和最新初始点云数据匹配的目标里程信息,对每个目标点云数据对应的第一位置信息进行更新,从而得到目标对象对应的当前位置信息。
[0097] 其中,每个第一位置信息更新后均可得到一个更新后的第一位置信息,运载装置可以将得到的多个更新后的第一位置信息采用例如计算平均值、计算最大值或者是加权求和等方式,得到最终的一个位置信息,并将该位置信息确定为目标对象对应的当前位置信息。
[0098] 请参阅图6,图6是一个实施例公开的一种运载装置进行对象检测的流程示意图。如图6所示,在运载装置运动的过程中,每隔一定时长(例如按照上述的第二频率),运载装置或者运载装置内置的处理器均可向里程计装置发送第二触发信号,以触发该里程计装置定时采集里程信息(如运载装置运动轨迹中的黑点所示),该里程信息可以包括运载装置的空间坐标、朝向方向信息等。在此基础上,针对里程计装置采集里程信息的时刻,每隔一定时长(例如按照上述的第一频率),即,在里程计装置采集里程信息的部分相隔该固定时长的时刻(例如t0、t1、t2时刻等),运载装置或者运载装置内置的处理器可以同时向激光雷达发送第一触发信号,以触发该激光雷达定时采集点云数据(如运载装置运动轨迹中,t0、t1、t2时刻对应的激光雷达所示)。
[0099] 运载装置从采集的点云数据中获取一段时间的点云数据作为初始点云数据,并将初始点云数据与里程信息进行匹配,根据初始点云数据匹配的里程信息,对每个初始点云数据进行点云去畸变,以得到每个初始点云数据对应的目标点云数据。运载装置根据每个目标点云数据确定出目标对象对应的当前位置信息。
[0100] 采用上述实施例,通过对目标点云数据对应的第一位置信息进行更新,能够令确定的目标对象对应的当前位置信息更加准确地反应目标对象在当前时刻所在的位置和姿态等信息,进一步提高了对象检测的准确性。
[0101] 在一些实施例中,运载装置执行根据最近一帧里程信息以及目标里程信息,对每个第一位置信息进行更新,以得到目标对象对应的当前位置信息的步骤中,可以包括以下步骤:
[0102] 根据里程计装置采集的最近一帧里程信息以及目标里程信息,将每个第一位置信息从目标里程信息对应的目标坐标系,转换至最近一帧里程信息对应的当前坐标系,以得到目标对象对应的当前位置信息。
[0103] 在本申请实施例中,针对任意一个第一位置信息,根据最近一帧里程信息以及目标里程信息对该第一位置信息进行更新的过程,具体可以为运载装置将第一位置信息从目标里程信息对应的目标坐标系,转换至最近一帧里程信息对应的坐标系,也就是当前坐标系,得到的坐标系转换后的位置信息为更新后的该目标点云数据对应的第一位置信息。最后运载装置可以将得到的多个更新后的第一位置信息采用例如计算平均值、计算最大值或者是加权求和等方式,得到最终的一个位置信息,并将该位置信息确定为目标对象对应的当前位置信息。其中,目标坐标系为基于目标里程信息建立的坐标系,当前坐标系为基于最近一帧里程信息建立的坐标系。
[0104] 在一些实施例中,请参阅图4,将第一位置信息 从目标里程信息对应的目标坐标系 ,转换至最近一帧里程信息对应的当前坐标系 ,得到的更新后的该目标点云数据对应的第一位置信息 的过程,可以如以下式(2)所示。
[0105] 式(2)
[0106] 采用上述实施例,通过结合运载装置得到第一位置信息所依据的目标里程信息以及最新采集的里程信息,可以相对准确地推测运载装置以及目标对象在当前时刻的位置,从而能够进一步提升运载装置对目标对象进行检测的准确性。
[0107] 在一些实施例中,运载装置执行上述对象检测方法的过程中,还可以执行以下步骤:
[0108] 根据每个初始点云数据对应的目标点云数据,确定每个目标点云数据对应的第一位置信息;
[0109] 分别根据每个第一位置信息,以及第二里程信息,计算得到每个第一位置信息分别在第二坐标系下的第二位置信息;第二坐标系为基于第二里程信息建立的坐标系,第二里程信息为任意一帧里程信息;
[0110] 根据每个第二位置信息,确定运载装置对应的系统误差数据。
[0111] 在本申请实施例中,为了对运载装置检测、定位目标对象过程中的系统误差进行统计分析,可以在对上述至少一个初始点云数据与多帧里程信息进行匹配之后,分别获取每个初始点云数据所匹配的帧里程信息;进而,在针对各个初始点云数据对应的目标进行目标检测,确定出目标对象对应的第一位置信息之后,还可以分别获取各个目标点云数据对应的第一位置信息。
[0112] 在本申请实施例中,基于上述多帧里程信息中的任一帧里程信息,均可建立相应的坐标系,以用于确定目标对象在某一时刻的坐标位置,也就是目标点云数据对应的第一位置信息。而确定目标对象在某一时刻的坐标位置后,可以基于另一帧里程信息所构建的坐标系,将目标对象在某一时刻的坐标位置进行坐标系转换,得到目标对象在另一时刻的坐标位置。也就是,运载装置可以根据每个第一位置信息,根据基于第二里程信息所构建的坐标系,进行坐标系转换,从而得到每个第一位置信息分别在第二坐标系下的第二位置信息。其中,第二里程信息为任意一个里程信息。
[0113] 举例来说,第一位置信息 为基于目标里程信息对应的目标坐标系 所得到的位置信息,也就是说,第一位置信息 为目标对象在tn时刻,在目标坐标系中的位置信息。第二里程信息为首帧里程信息,首帧里程信息对应的坐标系为 ,因此,根据第一位置信息 ,第一位置信息对应的目标坐标系 以及第二里程信息对应的第二坐标系 ,得到第一位置信息在第二坐标系下的第二位置信息 的过程可以如下式(3)所示。
[0114] 式(3)
[0115] 由于首帧里程计坐标系具体为x=0、y=0、z=0、roll=0、pitch=0、yaw=0,因此,得到第一位置信息在第二坐标系下的第二位置信息 的过程可以简化为下式(4)所示。
[0116] 式(4)
[0117] 在本申请实施例中,根据上述各个第二位置信息,运载装置以确定其在检测、定位目标取货对象过程中的系统误差数据。示例性地,该系统误差数据可以通过对上述各个第二位置信息求方差、标准差等方式得到,也可以通过统计上述各个第二位置信息的分布情况得到。
[0118] 在一些实施例中,以对上述各个第二位置信息求方差为例,该方差值可以直接作为运载装置对应的系统误差数据,也可以经过加权调整后作为上述系统误差数据。其中,若该方差值越大,可以表示运载装置根据各个时刻t所采集的数据,推导得到其在同一时刻对应的第二位置信息的波动较大,故而系统误差较大,需根据上述系统误差数据进行修正;若该方差值越小,则可以表示运载装置推导得到其在同一时刻对应的第二位置信息的波动较小,故而系统误差较小,暂不需要进一步修正针对目标取货对象的定位结果。
[0119] 采用上述实施例,能够准确确定出运载装置进行检测过程的误差,或者是整个取货系统的误差,从而更好地对对象检测过程进行适应性调整,以保证对象检测乃至取货过程的准确性。
[0120] 在一些实施例中,请参阅图7,图7是一个实施例公开的一种对象检测方法的时序图。如图7所示,该对象检测方法可以包括以下步骤:
[0121] 710、里程计装置向激光雷达定时发送同步信号和时间戳。
[0122] 720、里程计装置将多帧里程信息发送至算法模块。
[0123] 其中,算法模块在接收到上述多帧里程信息之后,可以分别对其进行缓存。
[0124] 730、激光雷达将多个点云数据发送至算法模块。
[0125] 其中,算法模块在接收到上述多个点云数据之后,可以分别对其进行缓存。上述步骤710至步骤730可以循环进行,以不断采集并更新运载装置的最新里程信息以及点云数据。
[0126] 740、算法模块根据每个初始点云数据对应的采集时刻,以及每帧里程信息对应的时间戳,将多个初始点云数据与所述多帧里程信息进行匹配,以得到每个初始点云数据匹配的里程信息。
[0127] 750、算法模块根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,对第一初始点云数据进行修正,以完成第一初始点云数据的点云去畸变。
[0128] 760、算法模块根据每个初始点云数据对应的目标点云数据,确定每个目标点云数据对应的第一位置信息。
[0129] 其中,算法模块在接收到上述第一位置信息以及相应的里程信息之后,可以对其进行缓存。上述步骤710至步骤730可以循环进行,以不断采集并更新里程信息,并基于最新的最近一帧里程信息,确定目标对象准确的当前位置信息。
[0130] 770、终端设备获取第一位置信息。
[0131] 780、算法模块根据最近一帧里程信息以及目标里程信息,对每个第一位置信息进行更新,以得到目标对象对应的当前位置信息。
[0132] 其中,上述步骤780也可以循环进行,以在上述两个循环的基础上,不断基于最新的最近一帧里程信息,推测目标对象对应的当前位置信息,从而可以相对准确地实现对目标对象的实时定位。
[0133] 790、算法模块向终端设备反馈当前位置信息。
[0134] 可见,实施上述实施例所描述的对象检测方法,能够通过对运载装置所采集的初始点云数据以及里程信息进行匹配,在运载装置运动的过程中持续确定目标对象的位置信息,从而能够降低由于运载装置通过传感器采集数据存在滞后而可能导致的误差,并且对运动过程中采集的点云进行去畸变,有效提升运载装置在运动过程中检测对象的准确性。在仓储物流的工作场景中,这样能够避免无人叉车等运载装置出现需要停车检测校准的情况,从而实现不停车检测及取货,不仅能够提升运载装置货运的精度,还有利于提高运载装置货运的自动化运输效率。此外,通过对运载装置检测、取货的系统误差进行统计分析,有利于进一步修正定位算法及定位结果,从而能够提升运载装置对目标对象进行定位的准确性和可靠性。
[0135] 请参阅图8,图8为一个实施例公开的一种对象检测装置的结构示意图,该对象检测装置可应用于如图1所示的应用场景中的运载装置10。该对象检测装置800可包括:数据获取模块810、数据匹配模块820、数据修正模块830以及对象检测模块840。
[0136] 数据获取模块810,用于获取通过激光雷达采集的针对目标对象的多个初始点云数据,以及获取通过里程计装置采集的运载装置的多帧里程信息;
[0137] 数据匹配模块820,用于根据每个初始点云数据对应的采集时刻,以及每帧里程信息对应的时间戳,将多个初始点云数据与多帧里程信息进行匹配;
[0138] 数据修正模块830,用于根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,对第一初始点云数据进行修正,得到第一初始点云数据对应的目标点云数据;第一初始点云数据为多个初始点云数据中的任一初始点云数据,最新初始点云数据为采集时刻距离当前时刻最近的初始点云数据;
[0139] 对象检测模块840,用于根据每个初始点云数据对应的目标点云数据,确定目标对象对应的当前位置信息。
[0140] 在一些实施例中,数据修正模块830,还用于:
[0141] 根据第一初始点云数据匹配的第一里程信息以及最新初始点云数据匹配的目标里程信息,将第一初始点云数据从第一里程信息对应的第一坐标系,转换至目标里程信息对应的目标坐标系,以得到第一初始点云数据对应的目标点云数据。
[0142] 在一些实施例中,数据匹配模块820,还用于:
[0143] 若第一初始点云数据对应的第一采集时刻与第一时间戳相同,则将第一时间戳对应的第一里程信息确定为第一初始点云数据匹配的第一里程信息第一初始点云数据。
[0144] 在一些实施例中,数据匹配模块820,还用于:
[0145] 若第一初始点云数据对应的第一采集时刻与每帧里程信息对应的时间戳都不相同,则根据第一采集时刻,确定与第一初始点云数据相邻的第三里程信息及第四里程信息;其中,第三里程信息对应的时间戳与第一采集时刻相邻,并且位于第一采集时刻之前;第四里程信息对应的时间戳与第一采集时刻相邻,并且位于第一采集时刻之后;
[0146] 根据第三里程信息以及第四里程信息,确定第一初始点云数据匹配的第一里程信息。
[0147] 在一些实施例中,数据获取模块810,还用于:
[0148] 控制里程计装置定时发送同步信号至激光雷达,以使里程计装置与激光雷达同步采集数据;
[0149] 接收激光雷达采集的针对目标对象的多个点云数据,并对多个点云数据进行缓存;
[0150] 接收里程计装置采集的运载装置的多帧里程信息,并将多帧里程信息进行缓存。
[0151] 在一些实施例中,对象检测模块840,还用于:
[0152] 根据每个初始点云数据对应的目标点云数据,确定每个目标点云数据对应的第一位置信息;
[0153] 获取里程计装置采集的最近一帧里程信息;最近一帧里程信息为对应的时间戳距离当前时刻最近的里程信息;
[0154] 根据最近一帧里程信息以及目标里程信息,对每个第一位置信息进行更新,以得到目标对象对应的当前位置信息。
[0155] 在一些实施例中,对象检测模块840,还用于:
[0156] 根据里程计装置采集的最近一帧里程信息以及目标里程信息,将每个第一位置信息从目标里程信息对应的目标坐标系,转换至最近一帧里程信息对应的当前坐标系,以得到目标对象对应的当前位置信息。
[0157] 在一些实施例中,图8所示的对象检测装置,还包括:
[0158] 误差检测模块850,用于根据每个初始点云数据对应的目标点云数据,确定每个目标点云数据对应的第一位置信息;
[0159] 分别根据每个第一位置信息,以及第二里程信息,计算得到每个第一位置信息分别在第二坐标系下的第二位置信息;第二坐标系为基于第二里程信息建立的坐标系,第二里程信息为任意一帧里程信息;
[0160] 根据每个第二位置信息,确定运载装置对应的系统误差数据。
[0161] 请参阅图9,图9为一个实施例公开的一种运载装置的结构示意图。如图9所示,该运载装置900可以包括:
[0162] 存储有可执行程序代码的存储器910。
[0163] 与存储器910耦合的处理器920。
[0164] 其中,处理器920调用存储器910中存储的可执行程序代码,执行本申请实施例公开的任意一种对象检测方法。
[0165] 需要说明的是,图9所示的运载装置还可以包括电源、输入按键、摄像头、扬声器、屏幕、RF电路、Wi‑Fi模块、蓝牙模块等未显示的组件,本实施例不作赘述。
[0166] 本申请实施例公开一种计算机可读存储介质,其存储计算机程序,其中,该计算机程序使得计算机执行本申请实施例公开的任意一种对象检测方法。
[0167] 本申请实施例公开一种计算机程序产品,该计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,且该计算机程序可操作来使计算机执行本申请实施例公开的任意一种对象检测方法。
[0168] 以上对本申请实施例公开的对象检测方法、装置及运载装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。同时,对于本领域的一般技术人员,根据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。