目标检测与跟踪方法、相关设备和计算机可读存储介质与流程

文档序号:20833661发布日期:2020-05-22 16:36阅读:124来源:国知局
目标检测与跟踪方法、相关设备和计算机可读存储介质与流程

本发明涉及无人驾驶领域,特别涉及一种目标检测与跟踪方法、相关设备和计算机可读存储介质。



背景技术:

在无人驾驶领域,激光雷达在无人车换道、避障和泊车等方面有着巨大的作用,其可以提供无人车在行驶过程中的周围环境的信息,尤其对于行驶中的目标(例如车辆)能够快速地检测并且在目标过多时,能够清晰分辨每个目标的运行轨迹,对行车状况做出一个良好、可靠的评估。

现有的一种目标检测与跟踪是通过激光雷达获取的点云数据与摄像机获取的图像配准之后,首先在点云数据中对目标大概的区域进行筛选;然后再利用图像处理技术,根据摄像机提供的图像进行辅助检测目标;最后在目标跟踪阶段,依据激光雷达获取的目标位置、速度和方向等信息估计特定动目标位置,进行目标跟踪,企图通过融合两类传感器数据进行动平台下的特定动目标跟踪,提高跟踪准确率和跟踪效率。

然而,上述方法能够获得较高跟踪准确率和效率的前提条件是光照、天气和亮度等外界条件较佳。一旦外界条件欠佳,在摄像机不能正常捕捉到目标信息时,激光雷达将不能精确地确定目标的信息。因此,上述现有技术提供的方法没有从根本上杜绝外界条件欠佳对系统造成的致命影响。



技术实现要素:

本发明提供一种目标检测与跟踪方法、相关设备和计算机可读存储介质,以在外界条件不佳时,无人驾驶车辆能够对其周围目标进行高精度的实时检测与跟踪。

第一方面,本发明提供了一种目标检测与跟踪方法,应用于包括激光雷达、毫米波雷达、车载服务器和终端构成的系统,所述方法包括:

在配置完成所述系统的软件和硬件参数后,所述激光雷达通过扫描环境以获取所述环境中至少一个目标的点云数据,所述点云数据包括构成所述目标的各个点的三维坐标;

所述毫米波雷达获取所述目标的位置信息、速度和加速度信息;

所述车载服务器对所述点云数据进行预处理,以获取所述点云数据中的有效点云数据;

所述车载服务器通过深度学习模型处理所述有效点云数据,以获取有效目标的位置信息;

所述车载服务器融合所述有效目标的位置信息以及所述目标的位置信息、速度和加速度信息,获取所述有效目标的最终跟踪结果;

所述终端接收所述有效目标的最终跟踪结果后显示。

第二方面,本发明提供了目标检测与跟踪方法,所述方法包括:

对来自激光雷达的点云数据进行预处理,以获取所述点云数据中的有效点云数据,所述点云数据包括构成目标的各个点的三维坐标;

通过深度学习模型处理所述有效点云数据,以获取有效目标的位置信息;

融合所述有效目标的位置信息以及来自毫米波雷达获取的目标的位置信息、速度和加速度信息,获取所述有效目标的最终跟踪结果;

向终端发布所述有效目标的最终跟踪结果。

第三方面,本发明提供了一种目标检测与跟踪装置,包括:

预处理模块,用于对来自激光雷达的点云数据进行预处理,以获取所述点云数据中的有效点云数据,所述点云数据包括构成目标的各个点的三维坐标;

检测跟踪模块,用于通过深度学习模型处理所述有效点云数据,以获取有效目标的位置信息;

融合模块,用于融合所述有效目标的位置信息以及来自毫米波雷达获取的目标的位置信息、速度和加速度信息,获取所述有效目标的最终跟踪结果;

信息发布模块,用于向终端发布所述有效目标的最终跟踪结果。

第四方面,本发明提供了一种目标实时检测与跟踪系统,所述系统包括:

激光雷达,用于在配置完成所述系统的软件和硬件参数后,通过扫描环境以获取所述环境中至少一个目标的点云数据,所述点云数据包括构成所述目标的各个点的三维坐标;

毫米波雷达,用于获取所述目标的位置信息、速度和加速度信息;

车载服务器,用于对所述点云数据进行预处理,以获取所述点云数据中的有效点云数据,通过深度学习模型处理所述有效点云数据,以获取有效目标的位置信息,融合所述有效目标的位置信息以及所述目标的位置信息、速度和加速度信息,获取所述有效目标的最终跟踪结果;

终端,用于接收所述有效目标的最终跟踪结果后显示。

第五方面,本发明提供了一种车载服务器,所述车载服务器包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下述技术方案的方法的步骤:

对来自激光雷达的点云数据进行预处理,以获取所述点云数据中的有效点云数据,所述点云数据包括构成目标的各个点的三维坐标;

通过深度学习模型处理所述有效点云数据,以获取有效目标的位置信息;

融合所述有效目标目标的位置信息以及来自毫米波雷达获取的目标的位置信息、速度和加速度信息,获取所述有效目标的最终跟踪结果;

向终端发布所述有效目标的最终跟踪结果。

第六方面,本发明提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如下述技术方案的方法的步骤:

对来自激光雷达的点云数据进行预处理,以获取所述点云数据中的有效点云数据,所述点云数据包括构成目标的各个点的三维坐标;

通过深度学习模型处理所述有效点云数据,以获取有效目标的位置信息;

融合所述有效目标的位置信息以及来自毫米波雷达获取的目标的位置信息、速度和加速度信息,获取所述有效目标的最终跟踪结果;

向终端发布所述有效目标的最终跟踪结果。

从上述技术方案可知,不同于现有技术在外界条件欠佳时摄像机不能正常捕捉到目标信息导致激光雷达将不能精确地确定目标的信息,本发明的技术方案一方面,激光雷达在获取目标的点云数据时受外界环境影响较小;另一方面,毫米波雷达是直接通过硬件方式获取目标的速度和加速度信息,因而获取的信息较为精准,两种雷达为目标的位置、速度和加速信息的精准获取提供了保障;第三方面,车载服务器通过对点云数据进行预处理获取的有效点云数据,提高了整个过程对无人驾驶目标的检测与跟踪的实时性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的目标检测与跟踪方法的流程图;

图2是本发明另一实施例提供的目标检测与跟踪方法的流程图;

图3是本发明实施例提供的目标检测与跟踪方法的应用场景示意图;

图4是本发明实施例提供的车载服务器对激光雷达获取的点云数据进行预处理以获取点云数据中的有效点云数据的流程图;

图5是现有技术对点云数据进行体素网格化的处理示意图;

图6是本发明实施例提供的对点云数据进行体素柱式网格化的处理示意图;

图7是本发明实施例提供的车载服务器通过深度学习模型处理点云数据中的有效点云数据以获取有效目标的位置信息的流程图;

图8是本发明实施例提供的使用深度学习模型对柱式体素数据进行特征扩维、压缩和检测等处理的示意图;

图9是本发明实施例提供的目标检测与跟踪装置的结构示意图;

图10是本发明实施例提供的目标检测与跟踪系统的结构示意图;

图11是本发明实施例提供的车载服务器的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本说明书中,诸如第一和第二这样的形容词仅可以用于将一个元素或动作与另一元素或动作进行区分,而不必要求或暗示任何实际的这种关系或顺序。在环境允许的情况下,参照元素或部件或步骤(等)不应解释为局限于仅元素、部件、或步骤中的一个,而可以是元素、部件、或步骤中的一个或多个等。

在本发明的说明书中,为了便于描述,附图中所示的各个部分的尺寸并不是按照实际的比例关系绘制的。

本发明提出了一种目标检测与跟踪方法,如附图1所示,其执行主体可以是包括激光雷达、毫米波雷达、车载服务器和终端所构成系统的车载服务器,该车载服务器装有机器人操作系统(robotoperatingsystem,ros),其与激光雷达、毫米波雷达和终端进行通信,通信的数据被封装成ros系统支持的数据类型。附图1示例的方法主要包括步骤s101至s104,详述如下:

步骤s101:对来自激光雷达的点云数据进行预处理,以获取点云数据中的有效点云数据,其中,点云数据包括构成目标的各个点的坐标。

在本发明实施例中,目标可以指车辆、行人或者无人驾驶车辆行驶道路中的其他物体等等。具体地,对来自激光雷达的点云数据进行预处理,以获取点云数据中的有效点云数据可以是:剔除激光雷达预定扫描范围外的点云数据,只保留预定扫描范围内的点云数据;对预定扫描范围内的点云数据降采样;对降采样后的点云数据进行体素柱式网格化处理以得到柱式体素数据,将得到的柱式体素数据作为点云数据中的有效点云数据。

步骤s102:通过深度学习模型处理经步骤s101得到的有效点云数据,以获取有效目标的位置信息。

此处,有效点云数据包括经体素网格化并通过降采样后得到的柱式体素数据,通过深度学习模型处理经步骤s101得到的有效点云数据,以获取有效目标的位置信息可以是:将柱式体素数据输入第一深度学习模型进行特征提取和扩维后再输入第二深度学习模型进行特征编码和压缩;将编码和压缩后的柱式体素数据拼接为有效点云数据的全局特征图;将有效点云数据的全局特征图输入第三深度学习模型进行检测,以获取目标的中心坐标;对目标进行跟踪,保留跟踪有效的目标的中心坐标作为有效目标的位置信息。

上述实施例中,对目标进行跟踪,保留跟踪有效的目标的中心坐标作为有效目标的位置信息可以是:为每一个跟踪有效的目标维护一个信息列表;若跟踪有效的目标跟踪失效,则删除跟踪失效的目标对应的信息列表,其中,信息列表包括跟踪有效的目标的中心坐标。

步骤s103:融合有效目标的位置信息以及来自毫米波雷达获取的目标的位置信息、速度和加速度信息,获取有效目标的最终跟踪结果。

具体地,融合有效目标的位置信息以及来自毫米波雷达获取的目标的速度和加速度信息,获取有效目标的最终跟踪结果可以是:根据有效目标的位置信息计算有效目标的速度和加速度;通过时间同步,采用毫米波雷达获取的有效目标的位置信息、速度和加速度矫正车载服务器计算所得的有效目标的速度和加速度;对包含所述有效目标的位置信息以及矫正后的有效目标的速度和加速度的数据进行可视化后形成有效目标的最终跟踪结果。

步骤s104:向终端发布有效目标的最终跟踪结果。

此处的终端可以是个人电脑等带有显示器的计算设备,终端通过订阅的方式接收车载服务器发布的有效目标的最终跟踪结果,在终端对有效目标的最终跟踪结果进行可视化显示。

从上述附图1示例的目标检测与跟踪方法可知,一方面,来自激光雷达的目标的点云数据受外界不佳环境影响较小;另一方面,毫米波雷达是直接通过硬件方式获取目标的速度和加速度信息,因而其获取的信息较为精准,两种雷达为目标的位置、速度和加速信息的精准获取提供了保障;第三方面,通过对点云数据进行预处理获取的有效点云数据,提高了整个过程对无人驾驶目标的检测与跟踪的实时性。

请参阅附图2,是本发明另一实施例提供的目标检测与跟踪方法流程示意图,其应用于包括激光雷达、毫米波雷达、车载服务器和终端所构成的系统,如附图3所示,是该系统的应用场景示意图,其中,激光雷达和毫米波雷达作为无人驾驶车辆的主要传感设备,可以安装于无人驾驶车辆之上。具体而言,附图3示例的应用场景中,激光雷达可以是64线velodyne激光雷达,毫米波雷达可以是delphiesr毫米波雷达,车载服务器可以是无人车车载服务器,而终端则是可视化显示终端,例如,带有显示器的个人电脑,等等。附图2示例方法包括步骤s201至步骤s206,详细说明如下:

步骤s201:在配置完成系统的软件和硬件参数后,激光雷达通过扫描环境以获取环境中至少一个目标的点云数据,其中,点云数据包括构成目标的各个点的坐标。

在本发明实施例中,系统的软件参数主要是指车载服务器中各种软件的参数,其配置包括确定坐标转换的模式、深度学习模型的类型、最大跟踪目标数量以及各个软件模块与毫米波雷达的融合算法的参数选择,等等,而硬件的参数主要是指激光雷达与毫米波雷达的各种参数,包括包括激光雷达的测量距离、辐射角度、控制命令和启动脚本等以及毫米波雷达的目标检测的最大值和所检测目标的最大存活时间等。在配置完成系统的软件和硬件参数后,可以检查系统各部分的工作状态是否正常,包括激光雷达是否安装正常、毫米波雷达是否正常通电以及激光雷达、毫米波雷达是否能够与车载服务器的ros正常进行物理通讯,等等。上述坐标转换的模式包括高精地图与lidar坐标的转换、毫米波雷达与lidar的互相转换等,gnss、里程计等都会有相关的转换算法。

激光雷达是以发射激光束探测目标的位置、速度等特征量的雷达系统,一般由激光发射机、光学接收机、转台和信息处理系统等组成,其工作原理是向目标发射探测信号(即激光束),然后将接收到的从目标反射回来的信号(即目标回波)与发射信号进行比较,作适当处理后即可获得目标的有关信息,例如,目标的距离、方位、高度和速度等信息;激光雷达具有受天气、光照等自然条件影响较小的优势。在本发明实施例中,通过硬件参数的配置,激光雷达检测范围为前后100m,测量精度为±2cm,垂直视场角为26.8°,水平视场角为360°。经过上述配置,激光雷达可通过扫描周遭环境,以获取环境中至少一个目标的点云数据,其中,点云数据包括构成目标的各个点的三维坐标,而目标包括车辆、行人或者无人驾驶车辆行驶道路上的其他物体等等。

至于点云数据,主要是在激光雷达工作过程中,将其检测与跟踪的目标视为个几何上的“点”构成。由于一个目标通常包括成千上万个这样的点,因此,激光雷达在扫描这些目标时,可以将采集到的这些目标所有的“点”形象地称之为“点云”(可以将“点云”中的每个“点”称为“云点”),点云数据就是点云中每个云点包含的数据,例如,为了对目标定位,在本发明实施例中,每一个点云数据至少包含该点的坐标,例如,三维坐标。

步骤s202:毫米波雷达获取目标的位置信息、速度和加速度信息。

毫米波雷达是工作在毫米波波段(millimeterwave)探测的雷达,与红外、激光、电视等光学导引头相比,其毫米波导引头穿透雾、烟、灰尘的能力强,具有全天候、全天时、能够同时分辨识别多个体积很小的目标的特点。与现有技术通过软件算法取得目标的速度和加速信息相比,在本发明实施例中,毫米波雷达获取目标的速度和加速度信息是通过硬件方式获取,因此,其获取的目标的速度和加速度信息具有精度高、受干扰小和鲁棒性较强等优点,并且,其与激光雷达一起对目标进行检测与跟踪,可以起到互相取长补短的作用。

需要说明的是,上述实施例中,无论是激光雷达还是毫米波雷达,都可以根据距离来确定环境中的目标,具体而言,就是计算点云数据中各云点至激光雷达或毫米波雷达原点的距离;按照多个预设距离阈值范围形成多个点云区域;将位于同一点云区域且云点之间距离小于预设间距的多个云点确定为一个目标。

步骤s203:车载服务器对点云数据进行预处理,以获取点云数据中的有效点云数据。

虽然激光雷达扫描范围是360°,但并非360°范围内的车辆、行人或其他障碍物等都对无人驾驶车辆互相构成安全隐患,因此,若对激光雷达所扫描360°范围内的所有目标对应的点云数据都做处理,则会给车载服务器带来巨大的资源消耗,并且,大量、尤其是大量无必要的数据处理必然带来系统延迟,对实时性造成较大的影响,而较高的实时性是无人驾驶领域重要的性能指标。基于以上因素,在本发明实施例中,在后续对激光雷达获取的点云数据处理之前,车载服务器可对这些点云数据进行预处理,以获取点云数据中的有效点云数据。具体而言,车载服务器对激光雷达获取的点云数据进行预处理,以获取点云数据中的有效点云数据可通过如下步骤s401至步骤s403实现,如附图4所示,说明如下:

步骤s401:车载服务器剔除激光雷达预定扫描范围外的点云数据,只保留预定扫描范围内的点云数据。

如前所述,并非激光雷达360°扫描范围的点云数据都有必要处理。在本发明实施例中,可以剔除激光雷达预定扫描范围外的点云数据,只保留预定扫描范围内的点云数据。例如,实践表明,在无人驾驶车辆的正前方左右60°即以正前方为中心线,在中心线左右各偏角60°,在这个120°的扇形区域构成的预定扫描范围之外的点云数据可以予以剔除,只保留这个120°的扇形区域内获取的点云数据做后续处理。

步骤s402:车载服务器对预定扫描范围内的点云数据进行降采样。

如前所述,构成一个目标的点通常以数万到数十万计,即使预定扫描范围内的点云数据,其数量仍然异常庞大。若对每个点云数据处理,不仅系统不堪重负,也会影响系统处理数据的实时性。因此,在本发明实施例中,车载服务器对预定扫描范围内的点云数据进行降采样。通常可以按照点云数据的稀疏与密集程度来优化降采样。例如,同样是降采样,但是由于无人驾驶车辆正前方距离无人驾驶车辆较近的目标或目标的部位,其点云通常而言要密集一些,因此,可以对这些目标或这些目标的部位进行降采样时频率较大,而对点云稀疏的目标或该目标的部位进行降采样时频率较小。

步骤s403:车载服务器对降采样后的数据进行体素柱式网格化处理,以得到柱式体素数据,将柱式体素数据作为点云数据中的有效点云数据。

在对点云数据进行体素网格化(voxelgridding)处理时,通常是采用网格(grid)将点云数据分割为一个个尺寸较小、形如立方体的体素(voxel),其示意图如附图5所示。然而,在本发明实施例中,主要是要检测与跟踪到目标存在且比较靠近无人驾驶车辆中间部位,进一步地,目标在z轴方向上的数据对系统处理而言不具有决定意义,由于点云的这种稀疏特性,因此,若通过附图5示例的网格化处理点云的方式,即,将点云数据切割成一个个尺寸较小、形如立方体的体素(voxel),则其中的大部分体素所包含的点云数据基本为0,换言之,附图5示例的网格化处理点云的方式,网格化出来的体素多数是无效的、空的体素或者网格化出来的体素包含大量无效的云点。如此,一方面,这样网格化将会耗费较大的计算资源,另一方面,后续对大量无效的、空的体素或无效的云点处理,也会耗费大量的计算资源,影响系统处理的实时性。

鉴于上述事实,在本发明实施例中,对附图5示例的网格化处理点云的方式进行改进,即,采用柱式网格,对降采样后的点云进行体素柱式网格化处理,以得到形如柱子的柱式体素,如附图6所示;相应地,柱式体素所包含的点云对应的数据即柱式体素数据,该柱式体素数据作为点云数据中的有效点云数据。假设附图5取得的体素尺寸是0.2*0.2*0.2,则附图6取得的体素尺寸可以是0.2*0.2*0.4、0.2*0.2*0.6或0.2*0.2*0.8,等等。至于得到柱式体素的具体方法可以是在传统体素网格化的基础上,调整网格在z轴方向的参数,例如将网格的z轴方向即网格的高度增加,从而使得形如立方体的体素在z轴方向上“拉长”,变成柱式体素。

需要说明的是,尽管经过了附图6示例的柱式网格化处理,后续在对柱式体素数据处理时,也并非是对柱式体素内包含的所有数据都处理,仍然是对其中的数据进行采样。可以根据柱式体素的尺寸大小,采样柱式体素内部分点的数据,例如,在本发明实施例中,若柱式体素尺寸是0.2*0.2*0.4,可以采样其中的35个点的数据。

步骤s204:车载服务器通过深度学习模型处理点云数据中的有效点云数据,以获取有效目标的位置信息。

在本发明实施例中,步骤s204中提及的点云数据中的有效点云数据即经步骤s203即经降采样并通过体素柱式网格化处理后得到的柱式体素数据。作为本发明一个实施例,车载服务器通过深度学习模型处理点云数据中的有效点云数据,以获取有效目标的位置信息可通过如附图7示例步骤s701至步骤s704实现,说明如下:

步骤s701:将柱式体素数据输入第一深度学习模型进行特征提取和扩维后再输入第二深度学习模型进行特征编码和压缩。

一般而言,为了能够达到某种识别精度,我们希望深度学习模型能够学习到更多的信息,一种方法就是对原始的特征数据进行扩维,因为特征的扩维,意味着信息的增加;而对模型学习到的结果再进行编码压缩,如此能够确保模型学习的对象所包含的信息是充足而没有损耗的。因此,在本发明实施例中,可以先将柱式体素数据输入第一深度学习模型进行特征的提取和扩维,扩维后的柱式体素数据输入第二深度学习模型进行特征的编码和压缩。由于第一深度学习模型是进行特征扩维,而第二深度学习模型是进行特征压缩,因此,第二深度学习模型包含的处理过程是第一深度学习模型包含的处理过程的逆过程。

步骤s702:将编码和压缩后的柱式体素数据拼接为有效点云数据的全局特征图。

在本发明实施例中,特征图或特征映射图(featuremap)可以理解为柱式体素的俯视图即将柱式体素逐层影射或投影到二维平面(xoy平面)。当所有有效点云数据即柱式体素数据逐层投影到二维平面,然后将这些二维平面上的投影图拼接(concat)则得到有效点云数据的全局特征图。

步骤s703:将有效点云数据的全局特征图输入第三深度学习模型进行检测,以获取目标的中心坐标。

由于第三深度学习模型只需要检测到目标的位置信息,因此,前述步骤对有效点云数据的压缩不仅不影响第三深度学习模型对目标的检测结果,而且还能加速整个检测的前向速度。由于全局特征图属于二维图,因此,第三深度学习模型对目标的检测属于二维平面的检测。

需要说明的是,正是由于第三深度学习模型检测的是二维图,因此,在本发明实施例中,在第三深度学习模型检测得到目标的二维坐标后,还需要将其转换为三维坐标,因此,最后获取的目标的中心坐标是指其中心的三维坐标,具体是先将目标转换为3d包围盒(boundingbox),然后,再检测出这个3d包围盒中心的三维坐标即为目标的中心坐标,中心坐标的计算可以是直接对目标的中心位置或接近中心位置的点取其三维坐标值,也可以是计算构成该目标的所有云点的三维坐标的平均值,将该平均值作为目标的中心坐标。

上述实施例的步骤s701至步骤s703,其处理过程的示意图可以如附图8所示。附图8中的第一深度学习模型和第二深度学习模型可以是pointnet或pointnet++(如前所述,虽然第一深度学习模型和第二深度学习模型包含相逆的处理过程,但可以是同一类型的处理网络),第三深度学习模型可以是yolov3(yolo网络的第三版本)。

步骤s704:对目标进行跟踪,保留跟踪有效的目标的中心坐标作为有效目标的位置信息。

由于车辆、行人等目标具有移动的属性,对于一些无效的目标,例如,距离无人驾驶车辆比较远、偏或互相不构成安全威胁的目标就无继续跟踪的必要。因此,在本发明实施例中,在对目标进行跟踪时,只保留跟踪有效的目标的中心坐标作为有效目标的位置信息。具体而言,对目标进行跟踪,保留跟踪有效的目标的中心坐标作为有效目标的位置信息可通过如下步骤s7041和步骤s7042实现:

步骤s7041:为每一个跟踪有效的目标维护一个信息列表,其中,信息列表包括跟踪有效的目标的中心坐标。

一种实现方式是为每个正在跟踪且有效的目标建立一个无迹卡尔曼滤波器(unscentedkalmanfilter,ukf)跟踪器的实例,多个ukf跟踪器构成一个ukf跟踪器队列,每个ukf跟踪器的实例至少包含跟踪有效的目标的中心坐标,若目标为车辆,则还包含车辆的速度信息、包围盒的尺寸大小、车辆在坐标系中的偏航角、俯视角和横滚角等信息。

步骤s7042:若跟踪有效的目标跟踪失效,则删除跟踪失效的目标对应的信息列表。

需要说明的是,前述ukf跟踪器队列初始化时是一个空的队列。随着跟踪的持续进行,ukf跟踪器队列会动态变化。若跟踪有效的目标跟踪失效,则删除ukf跟踪器队列中跟踪失效的目标对应的ukf跟踪器,跟踪失效的目标的信息列表随之删除,反之,若某个跟踪的目标从失效变为有效,则将跟踪有效的目标对应的ukf跟踪器添加至ukf跟踪器队列。至于怎样判断跟踪的目标是否失效,一种方法是为每个ukf跟踪器对应跟踪目标设置一个存活标识(flag),当当前时刻该跟踪目标的跟踪结果与上一个时刻的跟踪结果相差超过某个预设阈值(该阈值通常较大)时,则该跟踪目标的存活标识失效,从而判断该跟踪目标的跟踪失败即成为失效的跟踪目标;另一种方法是记录每个ukf跟踪器对应跟踪目标的存活时间,当某个跟踪目标的存活时间大于在硬件参数配置时配置的所检测目标的最大存活时间时,则判断该跟踪目标的跟踪失败即成为失效的跟踪目标,等等。

步骤s205:车载服务器融合有效目标的位置信息以及毫米波雷达获取的目标的位置信息、速度和加速度信息,获取有效目标的最终跟踪结果。

作为本发明一个实施例,车载服务器融合有效目标的位置信息以及毫米波雷达获取的目标的位置信息、速度和加速度信息,获取有效目标的最终跟踪结果可通过如下步骤s2051至步骤s2053实现:

步骤s2051:车载服务器根据有效目标的位置信息计算有效目标的速度和加速度。

在本发明实施例中,车载服务器根据前述实施例步骤获取的有效目标的位置信息,测出任意两个位置信息之间的距离,根据这个距离信息和经历的时间信息,可以计算出有效目标的速度和加速度。

步骤s2052:车载服务器通过时间同步,采用毫米波雷达获取的有效目标的位置信息、速度和加速度矫正车载服务器计算所得的有效目标的速度和加速度。

如前所述,由于毫米波雷达是通过硬件方式获取车辆等有效目标的速度和加速度等数据,因此,毫米波雷达获取的有效目标的速度和加速度相对于车载服务器通过软件算法计算所得的该有效目标的速度和加速度而言要精确。具体实现时,可先将毫米波雷达获取的有效目标的坐标与激光雷达获取的有效目标的坐标先转换为同一格式的坐标(可以按照前述在配置系统的软件参数时所确定的坐标转换的模式来进行转换),然后通过两个有效目标的中心坐标的相似度计算来判断毫米波雷达获取的速度和加速度所针对的有效目标与激光雷达跟踪的有效目标是否是同一目标,若是,再通过信息的时间戳(timestamp)来同步这些有效目标的速度和加速度信息。若两个有效目标的速度和加速度信息其时间戳一致,则将毫米波雷达获取的有效目标的速度和加速度矫正车载服务器计算所得的有效目标的速度和加速度,完成毫米波雷达获取的速度和加速度与车载服务器计算所得该有效目标的速度和加速度的融合。

步骤s2053:车载服务器对包含有效目标的位置信息以及矫正后的有效目标的速度和加速度的数据进行可视化后形成有效目标的最终跟踪结果。

之所以要对车载服务器对包含有效目标的位置信息以及矫正后的有效目标的速度和加速度的数据进行可视化,是考虑到要对无人驾驶车辆行车环境进行安全评估,一个应用场景便是无人驾驶车辆避障、变道时对于无人驾驶车辆路况进行评估,得出能否变道的反馈信息,并将反馈结果提交给无人驾驶车辆路径规划模块,因此,需要将有效目标的位置信息以及速度和加速度等数据进行可视化。至于可视化的方法,可以是车载服务器的可视化模块根据车载服务器的跟踪模块发布的上述有效目标的位置信息以及速度和加速度等数据,利用ros进行可视化组件的开发,通过机器人操作系统可视化工具(therosvisualizationtool,rviz)调用可视化组件,对有效目标的最终跟踪结果形成可视化的结果。

步骤s206:终端接收有效目标的最终跟踪结果后显示。

在本发明实施例中,有效目标的最终跟踪结果是经过rviz调用可视化组件后,对有效目标的最终跟踪结果进行可视化后形成的结果,个人电脑等终端的显示器对这个结果进行显示。

从上述附图2示例的方法可知,不同于现有技术在外界条件欠佳时摄像机不能正常捕捉到目标信息导致激光雷达将不能精确地确定目标的信息,本发明的技术方案一方面,激光雷达在获取目标的点云数据时受外界环境影响较小;另一方面,毫米波雷达是直接通过硬件方式获取目标的速度和加速度信息,因而获取的信息较为精准,两种雷达为目标的位置、速度和加速信息的精准获取提供了保障;第三方面,车载服务器通过对点云数据进行预处理获取的有效点云数据,提高了整个过程对无人驾驶目标的检测与跟踪的实时性。

请参阅附图9,是本发明实施例提供的一种目标检测与跟踪装置,该目标检测与跟踪装置可以是车载服务器或者其中的部分功能,包括预处理模块901、检测跟踪模块902、融合模块903和信息发布模块904,详述如下:

预处理模块901,用于对来自激光雷达的点云数据进行预处理,以获取点云数据中的有效点云数据,其中,点云数据包括构成目标的各个点的三维坐标;

检测跟踪模块902,用于通过深度学习模型处理点云数据中的有效点云数据,以获取有效目标的位置信息;

融合模块903,用于融合有效目标的位置信息以及来自毫米波雷达获取的目标的位置信息、速度和加速度信息,获取有效目标的最终跟踪结果;

信息发布模块904,用于向终端发布有效目标的最终跟踪结果。

可选地,附图9示例的预处理模块901用于剔除激光雷达预定扫描范围外的点云数据,只保留预定扫描范围内的点云数据;对预定扫描范围内的点云数据进行降采样;对降采样后的点云数据进行体素柱式网格化处理以得到柱式体素数据,将柱式体素数据作为点云数据中的有效点云数据。

可选地,附图9示例的装置中,有效点云数据包括经降采样并通过体素柱式网格化处理后得到的柱式体素数据,检测跟踪模块902用于将柱式体素数据输入第一深度学习模型进行特征提取和扩维后再输入第二深度学习模型进行特征编码和压缩;将编码和压缩后的柱式体素数据拼接为有效点云数据的全局特征图;将有效点云数据的全局特征图输入第三深度学习模型进行检测,以获取目标的中心坐标;对目标进行跟踪,保留跟踪有效的目标的中心坐标作为有效目标的位置信息。

可选地,上述对目标进行跟踪,保留跟踪有效的目标的中心坐标作为有效目标的位置信息包括:为每一个跟踪有效的目标维护一个信息列表,其中,信息列表包括跟踪有效的目标的中心坐标;若跟踪有效的目标跟踪失效,则删除跟踪失效的目标对应的信息列表。

可选地,附图9示例的融合模块903用于根据有效目标的位置信息计算有效目标的速度和加速度;通过时间同步,采用毫米波雷达获取的有效目标的位置信息、速度和加速度矫正车载服务器计算所得的有效目标的速度和加速度;对包含有效目标的位置信息以及矫正后的有效目标的速度和加速度的数据进行可视化后形成有效目标的最终跟踪结果。

从以上技术方案的描述中可以得知,一方面,来自激光雷达的目标的点云数据受外界不佳环境影响较小;另一方面,毫米波雷达是直接通过硬件方式获取目标的速度和加速度信息,因而其获取的信息较为精准,两种雷达为目标的位置、速度和加速信息的精准获取提供了保障;第三方面,通过对点云数据进行预处理获取的有效点云数据,提高了整个过程对无人驾驶目标的检测与跟踪的实时性。

请参阅附图10,是本发明实施例提供的一种目标检测与跟踪系统,包括激光雷达1001、毫米波雷达1002、车载服务器1003和终端1004,详述如下:

激光雷达1001,用于在配置完成系统的软件和硬件参数后,通过扫描环境以获取环境中至少一个目标的点云数据,其中,点云数据包括构成目标的各个点的坐标;

毫米波雷达1002,用于获取目标的位置信息、速度和加速度信息;

车载服务器1003,用于对点云数据进行预处理,以获取点云数据中的有效点云数据,通过深度学习模型处理有效点云数据,以获取有效目标的位置信息,融合有效目标的位置信息以及毫米波雷达获取的目标的位置信息、速度和加速度信息,获取有效目标的最终跟踪结果;

终端1004,用于接收有效目标的最终跟踪结果后显示。

可选地,车载服务器1003用于对点云数据进行预处理,以获取点云数据中的有效点云数据包括:剔除激光雷达预定扫描范围外的点云数据,只保留预定扫描范围内的点云数据;对预定扫描范围内的点云数据进行降采样;对降采样后的点云数据进行体素柱式网格化处理以得到柱式体素数据,将柱式体素数据作为点云数据中的有效点云数据;

可选地,有效点云数据包括经降采样并通过体素柱式网格化处理后得到的柱式体素数据,车载服务器1003用于通过深度学习模型处理有效点云数据,以获取有效目标的位置信息,包括:将柱式体素数据输入第一深度学习模型进行特征提取和扩维后再输入第二深度学习模型进行特征编码和压缩;将编码和压缩后的柱式体素数据拼接为有效点云数据的全局特征图;将有效点云数据的全局特征图输入第三深度学习模型进行检测,以获取目标的中心坐标;对目标进行跟踪,保留跟踪有效的目标的中心坐标作为有效目标的位置信息。

可选地,对目标进行跟踪,保留跟踪有效的目标的中心坐标作为有效目标的位置信息包括:为每一个跟踪有效的目标维护一个信息列表,其中,信息列表包括跟踪有效的目标的中心坐标;若跟踪有效的目标跟踪失效,则删除跟踪失效的目标对应的信息列表。

可选地,车载服务器1003用于融合有效目标的位置信息以及毫米波雷达获取的目标的位置信息、速度和加速度信息,获取有效目标的最终跟踪结果包括:车载服务器1003根据有效目标的位置信息计算有效目标的速度和加速度;通过时间同步,采用毫米波雷达获取的有效目标的位置信息、速度和加速度矫正车载服务器1003计算所得的有效目标的速度和加速度;对包含有效目标的位置信息以及矫正后的有效目标的速度和加速度的数据进行可视化后形成有效目标的最终跟踪结果。

图11是本发明一实施例提供的车载服务器的结构示意图。如图11所示,该实施例的车载服务器11主要包括:处理器110、存储器111以及存储在存储器111中并可在处理器110上运行的计算机程序112,例如目标检测与跟踪的程序。处理器110执行计算机程序112时实现上述附图1示例的目标检测与跟踪方法中的步骤,例如附图1所示的步骤s101至s104。或者,处理器110执行计算机程序112时实现上述附图9及其附属装置实施例中各模块/单元的功能,例如图9所示预处理模块901、检测跟踪模块902、融合模块903和信息发布模块904的功能。

示例性地,目标检测与跟踪的计算机程序112主要包括:对来自激光雷达的点云数据进行预处理,以获取点云数据中的有效点云数据,其中,点云数据包括构成目标的各个点的坐标;通过深度学习模型处理得到的有效点云数据,以获取有效目标的位置信息;融合有效目标的位置信息以及来自毫米波雷达获取的位置信息、目标的速度和加速度信息,获取有效目标的最终跟踪结果;向终端发布有效目标的最终跟踪结果。计算机程序112可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器111中,并由处理器110执行,以完成本发明。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序112在车载服务器11中的执行过程。例如,计算机程序112可以被分割成预处理模块901、检测跟踪模块902、融合模块903和信息发布模块904(虚拟装置中的模块)的功能,各模块具体功能如下:预处理模块901,用于对来自激光雷达的点云数据进行预处理,以获取点云数据中的有效点云数据,其中,点云数据包括构成目标的各个点的坐标;检测跟踪模块902,用于通过深度学习模型处理点云数据中的有效点云数据,以获取有效目标的位置信息;融合模块903,用于融合有效目标的位置信息以及来自毫米波雷达获取的目标的位置信息、速度和加速度信息,获取有效目标的最终跟踪结果;信息发布模块904,用于向终端发布有效目标的最终跟踪结果。

车载服务器11可包括但不仅限于处理器110、存储器111。本领域技术人员可以理解,图11仅仅是车载服务器11的示例,并不构成对车载服务器11的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算设备还可以包括输入输出设备、网络接入设备、总线等。

所称处理器110可以是中央处理单元(centralprocessjngunjt,cpu),还可以是其他通用处理器、数字信号处理器(djgjtalsjgnalprocessor,dsp)、专用集成电路(appljcatjonspecjfjcjntegratedcjrcujt,asjc)、现成可编程门阵列(fjeld-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

存储器111可以是车载服务器11的内部存储单元,例如车载服务器11的硬盘或内存。存储器111也可以是车载服务器11的外部存储设备,例如车载服务器11上配备的插接式硬盘,智能存储卡(smartmedjacard,smc),安全数字(securedjgjtal,sd)卡,闪存卡(flashcard)等。进一步地,存储器111还可以既包括车载服务器11的内部存储单元也包括外部存储设备。存储器111用于存储计算机程序以及车载服务器所需的其他程序和数据。存储器111还可以用于暂时地存储已经输出或者将要输出的数据。

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

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

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

在本发明所提供的实施例中,应该理解到,所揭露的装置/车载服务器和方法,可以通过其它的方式实现。例如,以上所描述的装置/车载服务器实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

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

集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个非临时性计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,目标检测与跟踪的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤,即,对来自激光雷达的点云数据进行预处理,以获取点云数据中的有效点云数据,其中,点云数据包括构成目标的各个点的坐标;通过深度学习模型处理得到的有效点云数据,以获取有效目标的位置信息;融合有效目标的位置信息以及来自毫米波雷达获取的目标的位置信息、速度和加速度信息,获取有效目标的最终跟踪结果;向终端发布有效目标的最终跟踪结果。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。非临时性计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读内存(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,非临时性计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,非临时性计算机可读介质不包括电载波信号和电信信号。以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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