掌桥专利:专业的专利平台
掌桥专利
首页

一种神经网络的训练方法以及相关设备

文献发布时间:2023-06-19 11:42:32


一种神经网络的训练方法以及相关设备

技术领域

本申请涉及人工智能领域,尤其涉及一种神经网络的训练方法以及相关设备。

背景技术

人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。利用人工智能来获取图像中物体的轨迹是人工智能常见的一个应用方式。

目前,业界常用的获取物体的轨迹的方法为,利用神经网络对通过雷达采集到的每个时刻的环境数据执行物体检测操作以得到一组检测结果,一组检测结果指示与一个时刻的环境数据对应的一个三维(3-dimension,3D)检测框的位置(也即指示检测框中物体的位置),根据与多个不同时刻的环境数据对应的多个组检测结果做关联匹配,以得到至少一个物体在不同时刻的运行轨迹。

但由于通过雷达采集到的是与环境对应的点云数据,点云数据中的各个点的分布无序,且缺少物体表面的纹理信息,导致最终得到的物体轨迹的精度不够。

发明内容

本申请实施例提供了一种神经网络的训练方法以及相关设备,用于同时利用与环境对应的点云数据和图像来确定3D检测框与历史3D检测框之间的匹配关系,由于每个3D检测框所对应的图像特征中携带了丰富的表观特征,利用更丰富的信息来确定物体的轨迹,有利于提高最终得到的物体轨迹的精度。

为解决上述技术问题,本申请实施例提供以下技术方案:

第一方面,本申请实施例提供一种环境数据的处理方法,可利用人工智能领域的技术对环境中的物体进行检测定位以及轨迹追踪。方法包括:执行设备获取与第一时刻的环境对应的第一点云数据,并获取与第一时刻的环境对应的C个第一图像,C个第一图像中不同的第一图像所对应的采集角度不同,C为大于或等于1的整数。执行设备根据第一点云数据,生成与第一时刻的环境对应的至少一个3D检测框的位置信息,一个3D检测框的位置信息指示第一时刻的环境中一个物体的位置,该3D检测框的位置信息可以包括3D检测框的中心点的三维空间坐标,还包括该3D检测框的长、宽和高,还包括该3D检测框的朝向角。执行设备根据C个第一图像,获取与每个3D检测框对应的第一图像特征。执行设备获取与第二点云数据对应的至少一个历史3D检测框的位置信息,并获取与每个历史3D检测框对应的第二图像特征,第二点云数据与第二时刻的环境对应,第二时刻为第一时刻的上一时刻,一个历史3D检测框的位置信息指示一个物体在第二时刻的环境中的位置,第二图像特征为基于与第二时刻的环境对应的第二图像得到的。执行设备根据至少一个3D检测框的位置信息、第一图像特征、至少一个历史3D检测框的位置信息和第二图像特征,确定至少一个目标匹配关系,一个目标匹配关系指示一个第一3D检测框和一个第一历史3D检测框之间的匹配关系,第一3D检测框指的是至少一个3D检测框中已经成功匹配的3D检测框,第一历史3D检测框指的是至少一个历史3D检测框中已经成功匹配的历史3D检测框。进一步地,若一个第一3D检测框与一个第一历史3D检测框匹配,则执行设备确定该一个第一3D检测框和该一个第一历史3D检测框匹配归属于同一物体的一个轨迹。若至少一个3D检测框中存在一个第二3D检测框,该第二3D检测框与所有历史3D检测框均不匹配,则该一个第二3D检测框作为新的物体轨迹的起点。若至少一个历史3D检测框存在一个第二历史3D检测框,该一个第二历史3D检测框与所有3D检测框均不匹配,则该一个第二历史3D检测框作为一个物体轨迹的终点。

本实现方式中,不仅根据与当前时刻(也即第一时刻)的环境对应的第一点云数据,生成与当前时刻对应的至少一个3D检测框的位置信息,还根据与当前时刻环境对应的图像,获取到与每个3D检测框对应的第一图像特征,并根据每个3D检测框的位置信息、第一图像特征、与上一时刻(也即第二时刻)的环境对应的历史3D检测框的位置信息和每个历史3D检测框所对应的第二图像特征,确定至少一个3D检测框和至少一个历史3D检测框之间的匹配关系,也即同时利用与环境对应的点云数据和图像来确定不同时刻的环境中物体的轨迹,由于每个3D检测框所对应的图像特征中携带了丰富的表观特征,包括与3D检测框对应的纹理信息、色彩信息或其他类型的表观特征等,利用更丰富的信息来确定物体的轨迹,有利于提高最终得到的物体轨迹的精度。

在第一方面的一种可能实现方式中,第一点云数据中包括多个第一点的三维空间坐标,方法还包括:执行设备中预先配置有三维坐标系和C个图像坐标系中每个图像坐标系之间的转换关系(也即配置有C个转换关系),根据每个第一点的三维空间坐标和该C个转换关系,将每个第一点投影至每个第一图像所对应的图像坐标系,以从C个第一图像中获取与多个第一点对应的多个像素点;需要说明的是,部分第一点在C个第一图像中可以均不存在与之对应的像素点,部分第一点在C个第一图像中可以存在一个或多个与之对应的像素点,两个不同的第一点可以对应C个第一图像中相同的像素点。执行设备根据多个第一点和多个像素点之间的对应关系以及每个第一图像的特征信息,获取与多个第一点对应的多个第三图像特征;第一图像的特征信息可以为通过特征提取网络对第一图像进行处理后得到的,也可以为原始的第一图像中携带的信息。执行设备根据第一点云数据,生成与第一时刻的环境对应的至少一个三维3D检测框的位置信息,包括:执行设备根据与多个第一点对应的多个第三图像特征和第一点云数据,生成与第一时刻的环境对应的至少一个3D检测框的位置信息。

本实现方式中,根据第一点的三维空间坐标,将第一点投影至第一图像对应的图像坐标系中,以获取到与多个第一点对应的第三图像特征,进而基于多个第三图像特征和第一点云数据,执行物体检测操作,以得到与第一时刻的环境对应的3D检测框的位置信息,也即在进行物体检测时就同时参考了与第一时刻的环境对应的点云数据和图像数据,以提高对第一时刻的环境中物体进行物体检测过程的精准度,也即有利于得到更准确的3D检测框。

在第一方面的一种可能实现方式中,执行设备根据与多个第一点对应的多个第三图像特征和第一点云数据,生成与第一时刻的环境对应的至少一个3D检测框的位置信息,包括:执行设备通过特征提取网络对第一点云数据进行特征提取,以得到第一特征信息,通过特征提取网络对与所有第一点对应的多个第三图像特征进行特征提取,以得到第二特征信息;执行设备将第二特征信息与第一特征信息进行融合,以得到更新后的第一特征信息,通过特征处理网络对更新后的第一特征信息进行特征处理,也即根据更新后的第一特征信息,通过特征处理网络执行物体检测操作,以生成与第一时刻的环境对应的至少一个3D检测框的位置信息。

本实现方式中,将多个第三图像特征和第一点云数据分别进行特征提取后,再将分别提取到的第一特征信息和第二特征信息进行融合,进而对更新后的第一特征信息进行特征处理,以生成3D检测框的位置信息,由于在对第三图像特征和第一点云数据进行特征提取的过程,分别对第三图像特征和第一点云数据进行充分的信息挖掘,相比于直接将原始的第一点云数据与第三图像特征进行融合,有利于实现第三图像特征和第一点云数据的充分融合,以进一步提高整个物体检测过程的精度,以提高得到的3D检测框的准确度。

在第一方面的一种可能实现方式中,方法还包括:执行设备通过特征提取网络对第二特征信息再次进行特征提取,以得到与多个第一点对应的第四图像特征;由于多个第三图像特征中每个第三图像特征均存在与之对应的第一点,则对多个第三图像特征进行两次特征提取后得到的第四图像特征也与多个第一点对应。执行设备根据第一图像,获取与每个3D检测框对应的第一图像特征,包括:执行设备根据每个3D检测框的位置信息,从第四图像特征中获取与每个3D检测框对应的第一图像特征。

本实现方式中,在分别得到第一特征信息和第二特征信息之后,还可以在根据第一特征信息生成3D检测框的位置信息的同时,通过特征提取网络对第二特征信息再次进行特征提取,以得到第四图像特征,并基于3D检测框的位置信息从第四图像特征中获取每个3D检测框所对应的第一图像特征;再次对第二特征信息进行特征提取,能够得到精度更高的第四图像特征,且由于前述特征提取操作可以与生成3D检测框的位置信息并列执行,有利于提高第一图像特征的获取过程的效率。

在第一方面的一种可能实现方式中,针对多个3D检测框中的任意一个3D检测框(为方便描述,后续称为“第三3D检测框”),执行设备根据每个3D检测框的位置信息,从第四图像特征中获取与每个3D检测框对应的第一图像特征,包括:执行设备可以获取第三3D检测框的中心点的位置信息,并从第四图像特征中获取与第三3D检测框的中心点对应的图像特征,将与第三3D检测框的中心点对应的图像特征确定为与第三3D检测框对应的第一图像特征。或者,执行设备可以获取位于第三3D检测框内的所有第一点的位置信息,并获取位于第三3D检测框内的所有第一点对应的多个第二像素点,从第四图像特征中获取与所有第二像素点对应的图像特征,将与所有第二像素点对应的图像特征确定为与第三3D检测框对应的第一图像特征。

在第一方面的一种可能实现方式中,执行设备根据至少一个3D检测框的位置信息、第一图像特征、至少一个历史3D检测框的位置信息和第二图像特征,确定至少一个目标匹配关系,包括:执行设备根据每个3D检测框的位置信息和每个历史3D检测框的位置信息,生成P个目标匹配信息;根据P个目标匹配信息、与第一3D检测框对应的第一图像特征和与第一历史3D检测框对应的第二图像特征,生成第一相似度信息,第一相似度信息指示第一3D检测框和第一历史3D检测框之间的相似度;第一相似度信息包括与P个目标匹配信息对应的P个第一相似度,一个第一相似度用于指示一个第一3D检测框和一个第一历史3D检测框之间的相似度。用于计算该第一相似度信息的函数包括但不限于余弦距离、马氏距离、欧式距离或其他用于计算相似度的函数等。执行设备根据第一相似度信息,对P个目标匹配信息进行筛选,以得到Q个目标匹配信息,Q为小于或等于P的整数。

本实现方式中,在部分场景中,同一物体在不同时刻的位置变化较大,仅利用3D检测框的位置信息进行匹配,可能会得到错误的匹配关系,也即可能会得到错误的目标匹配信息,利用3D检测框的图像特征对得到的P个目标匹配信息进行二次筛选,有利于保证得到的Q个目标匹配信息的准确率。

在第一方面的一种可能实现方式中,执行设备根据每个3D检测框的位置信息和每个历史3D检测框的位置信息,生成P个目标匹配信息,包括:执行设备可以计算每个3D检测框与每个历史3D检测框之间的位置距离,以生成第二距离信息,该第二距离信息指示每个3D检测框与每个历史3D检测框之间的第二位置距离。执行设备根据第二距离信息,采用目标算法对至少一个3D检测框和至少一个历史3D检测框进行匹配,以生成P个目标匹配信息。或者,执行设备可以生成与每个历史3D检测框一一对应的3D预测检测框的位置信息,也即基于与第二时刻的环境对应的历史3D检测框的位置信息,预测与第一时刻的环境对应的3D预测检测框的位置信息。计算每个3D检测框与每个3D预测检测框之间的距离,以生成第三距离信息,第三距离信息指示每个3D检测框与每个3D预测检测框之间的位置距离。执行设备根据第三距离信息,采用目标算法对至少一个3D检测框和至少一个3D预测检测框进行匹配,由于3D预测检测框和历史3D检测框之间是一一对应的关系,也即能够生成P个目标匹配信息。

在第一方面的一种可能实现方式中,执行设备根据至少一个3D检测框的位置信息、第一图像特征、至少一个历史3D检测框的位置信息和第二图像特征,确定至少一个目标匹配关系,包括:执行设备根据与每个3D检测框对应的第一图像特征和与每个历史3D检测框对应的第二图像特征,计算得到第三相似度信息,第三相似度信息用于指示任意一个3D检测框和任意一个历史3D检测框之间的相似度;执行设备根据第三相似度信息,采用目标算法对至少一个3D检测框和至少一个历史3D检测框进行匹配,以生成S个目标匹配信息。生成S个目标匹配信息。执行设备根据S个目标匹配信息、与第一3D检测框对应的位置信息和与第一历史3D检测框对应的位置信息,生成第一距离信息,第一距离信息中包括与S个目标匹配信息一一对应的S个第一距离值,一个第一距离值指示任意一个第一3D检测框和任意一个第一历史3D检测框之间的距离。执行设备根据第一距离信息,对S个目标匹配信息进行筛选,以得到R个目标匹配信息,R为小于或等于S的整数。

本实现方式中,由于在部分场景中,可能会存在不同的物体有着相同的外观,则仅利用物体的图像特征进行匹配,就可能会导致出现错误的目标匹配信息,利用物体的位置信息进行二次筛选后,有利于提高最终得到的目标匹配信息的正确率。

在第一方面的一种可能实现方式中,执行设备根据至少一个3D检测框的位置信息、第一图像特征、至少一个历史3D检测框的位置信息和第二图像特征,确定至少一个目标匹配关系,包括:执行设备根据每个3D检测框的位置信息和每个历史3D检测框的位置信息,生成P个目标匹配信息;根据与第二3D检测框对应的第一图像特征和与第二历史3D检测框对应的第二图像特征,生成X个目标匹配信息。其中,第二3D检测框为至少一个3D检测框中除第一3D检测框之外的3D检测框,也即第二3D检测框为尚未匹配成功的3D检测框;第二历史3D检测框为至少一个历史3D检测框中除第一历史3D检测框之外的历史3D检测框;第二历史3D检测框为尚未匹配成功的历史3D检测框。

本实现方式中,在部分场景中,同一物体在不同时刻的位置变化较大,仅利用3D检测框的位置信息进行匹配,可能会导致无法将位于第一时刻的环境中的目标物体与位于第二时刻的环境中的目标物体成功匹配,而是将位于第一时刻的环境中的目标物体作为新的物体轨迹的起点,从而导致得到的P个目标匹配信息整体表现不够好,利用3D检测框的图像特征对剩余的3D检测框和剩余的历史3D检测框进行二次匹配,可有利于避免前述情况的发生,有利于提高整个匹配过程的性能。

在第一方面的一种可能实现方式中,执行设备根据至少一个3D检测框的位置信息、第一图像特征、至少一个历史3D检测框的位置信息和第二图像特征,确定至少一个目标匹配关系,包括:执行设备根据与每个3D检测框对应的第一图像特征和与每个历史3D检测框对应的第二图像特征,生成S个目标匹配信息;执行设备根据与第二3D检测框对应的位置信息和与第二历史3D检测框对应的位置信息,生成Y个目标匹配信息,第二3D检测框为至少一个3D检测框中除第一3D检测框之外的3D检测框,第二历史3D检测框为至少一个历史3D检测框中除第一历史3D检测框之外的历史3D检测框。

本实现方式中,由于在部分场景中,可能存在采集到的图像不够清晰,或者环境中的物体存在遮挡等情况,若仅利用物体的图像特征进行匹配,可能会导致相同的物体无法被配对,利用与物体对应的位置信息进行二次匹配,有利于降低上述遗漏情况的发生,以提高最终得到的多个目标匹配信息的性能。

在第一方面的一种可能实现方式中,执行设备根据至少一个3D检测框的位置信息、第一图像特征、至少一个历史3D检测框的位置信息和第二图像特征,确定至少一个目标匹配关系,包括:执行设备根据每个3D检测框的位置信息和每个历史3D检测框的位置信息,生成P个目标匹配信息,根据P个目标匹配信息、与第一3D检测框对应的第一图像特征和与第一历史3D检测框对应的第二图像特征,生成第一相似度信息,根据第一相似度信息,对P个目标匹配信息进行筛选,以得到Q个目标匹配信息。执行设备还根据与第二3D检测框对应的第一图像特征和与第二历史3D检测框对应的第二图像特征,生成x个目标匹配信息。

在第一方面的一种可能实现方式中,执行设备根据至少一个3D检测框的位置信息、第一图像特征、至少一个历史3D检测框的位置信息和第二图像特征,确定至少一个目标匹配关系,包括:执行设备根据与每个3D检测框对应的第一图像特征和与每个历史3D检测框对应的第二图像特征,生成S个目标匹配信息。执行设备根据S个目标匹配信息、与第一3D检测框对应的位置信息和与第一历史3D检测框对应的位置信息,生成第一距离信息,第一距离信息指示第一3D检测框和第一历史3D检测框之间的距离;根据第一距离信息,对S个目标匹配信息进行筛选,以得到R个目标匹配信息。执行设备根据与第二3D检测框对应的位置信息和与第二历史3D检测框对应的位置信息,生成y个目标匹配信息。

第二方面,本申请实施例提供了一种神经网络的训练方法,可利用人工智能领域的技术对环境中的物体进行检测定位以及轨迹追踪。方法包括:训练设备获取与目标时刻的环境对应的目标点云数据,并获取与目标时刻的环境对应的目标图像;根据目标点云数据,通过目标神经网络生成与目标时刻的环境对应的至少一个目标三维3D检测框的预测位置信息,一个目标3D检测框的位置信息指示目标时刻的环境中一个物体的位置;根据目标图像,通过目标神经网络获取与每个目标3D检测框对应的预测图像特征;根据目标损失函数,对目标神经网络进行训练,直至满足预设条件,得到训练后的目标神经网络,目标损失函数用于指示与目标时刻的环境对应的至少一个目标3D检测框的期望位置信息和预测位置信息之间的相似度,目标损失函数还用于指示每个目标3D检测框对应的期望图像特征和预测图像特征之间的相似度。其中,训练后的目标神经网络用于生成与第一时刻的环境对应的至少一个3D检测框的位置信息,生成与每个3D检测框对应的第一图像特征,训练后的目标神经网络还用于生成与第二时刻的环境对应的至少一个历史3D检测框的位置信息,生成与每个历史3D检测框对应的第二图像特征,第二时刻为第一时刻的上一时刻,至少一个3D检测框的位置信息、第一图像特征、至少一个历史3D检测框的位置信息和第二图像特征用于确定至少一个3D检测框和至少一个历史3D检测框之间的匹配关系。

在第二方面的一种可能实现方式中,目标点云数据中包括多个第二点的三维空间坐标,方法还包括:训练设备根据每个第二点的三维空间坐标,将每个第二点投影至与目标图像对应的图像坐标系,以获取与多个第二点对应的多个像素点,像素点位于目标图像中;根据目标图像的特征信息,获取与第二点对应的第三图像特征。训练设备根据目标点云数据,生成与目标时刻的环境对应的至少一个目标3D检测框的位置信息,包括:训练设备根据与多个第二点对应的多个第三图像特征和目标点云数据,生成与目标时刻的环境对应的至少一个目标3D检测框的位置信息。

本申请实施例的第二方面提供的训练装置还可以执行第一方面的各个可能实现方式中执行设备执行的步骤,对于本申请实施例第二方面以及第二方面的各种可能实现方式的具体实现步骤,以及每种可能实现方式所带来的有益效果,均可以参考第一方面中各种可能的实现方式中的描述,此处不再一一赘述。

第三方面,本申请实施例提供了一种环境数据的处理装置,可利用人工智能领域的技术对环境中的物体进行检测定位以及轨迹追踪。装置包括:获取模块,用于获取与第一时刻的环境对应的第一点云数据,并获取与第一时刻的环境对应的第一图像;生成模块,用于根据第一点云数据,生成与第一时刻的环境对应的至少一个三维3D检测框的位置信息,一个3D检测框的位置信息指示第一时刻的环境中一个物体的位置;获取模块,还用于根据第一图像,获取与每个3D检测框对应的第一图像特征;获取模块,还用于获取与第二点云数据对应的至少一个历史3D检测框的位置信息,并获取与每个历史3D检测框对应的第二图像特征,第二点云数据与第二时刻的环境对应,第二时刻为第一时刻的上一时刻,一个历史3D检测框的位置信息指示一个物体在第二时刻的环境中的位置,第二图像特征为基于与第二时刻的环境对应的第二图像得到的;匹配模块,用于根据至少一个3D检测框的位置信息、第一图像特征、至少一个历史3D检测框的位置信息和第二图像特征,确定至少一个目标匹配关系,一个目标匹配关系指示一个第一3D检测框和一个第一历史3D检测框之间的匹配关系,第一3D检测框包括于至少一个3D检测框,第一历史3D检测框包括于至少一个历史3D检测框。

本申请实施例的第三方面提供的环境数据的处理装置还可以执行第一方面的各个可能实现方式中执行设备执行的步骤,对于本申请实施例第三方面以及第三方面的各种可能实现方式的具体实现步骤,以及每种可能实现方式所带来的有益效果,均可以参考第一方面中各种可能的实现方式中的描述,此处不再一一赘述。

第四方面,本申请实施例提供了一种神经网络的训练装置,可利用人工智能领域的技术对环境中的物体进行检测定位以及轨迹追踪。装置包括:获取模块,用于获取与目标时刻的环境对应的目标点云数据,并获取与目标时刻的环境对应的目标图像;生成模块,用于根据目标点云数据,通过目标神经网络生成与目标时刻的环境对应的至少一个目标三维3D检测框的预测位置信息,一个目标3D检测框的位置信息指示目标时刻的环境中一个物体的位置;获取模块,还用于根据目标图像,通过目标神经网络获取与每个目标3D检测框对应的预测图像特征;训练模块,用于根据目标损失函数,对目标神经网络进行训练,直至满足预设条件,得到训练后的目标神经网络,目标损失函数用于指示与目标时刻的环境对应的至少一个目标3D检测框的期望位置信息和预测位置信息之间的相似度,目标损失函数还用于指示每个目标3D检测框对应的期望图像特征和预测图像特征之间的相似度;其中,训练后的目标神经网络用于生成与第一时刻的环境对应的至少一个3D检测框的位置信息,生成与每个3D检测框对应的第一图像特征,训练后的目标神经网络还用于生成与第二时刻的环境对应的至少一个历史3D检测框的位置信息,生成与每个历史3D检测框对应的第二图像特征,第二时刻为第一时刻的上一时刻,至少一个3D检测框的位置信息、第一图像特征、至少一个历史3D检测框的位置信息和第二图像特征用于确定至少一个3D检测框和至少一个历史3D检测框之间的匹配关系。

本申请实施例的第四方面提供的神经网络的训练装置还可以执行第二方面的各个可能实现方式中训练设备执行的步骤,对于本申请实施例第四方面以及第四方面的各种可能实现方式的具体实现步骤,以及每种可能实现方式所带来的有益效果,均可以参考第二方面中各种可能的实现方式中的描述,此处不再一一赘述。

第五方面,本申请实施例提供了一种执行设备,可以包括处理器,处理器和存储器耦合,存储器存储有程序指令,当存储器存储的程序指令被处理器执行时实现上述第一方面所述的环境数据的处理方法。

第六方面,本申请实施例提供了一种训练设备,可以包括处理器,处理器和存储器耦合,存储器存储有程序指令,当存储器存储的程序指令被处理器执行时实现上述第二方面所述的神经网络的训练方法。

第七方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述程序在计算机上运行时,使得计算机执行上述第一方面所述的环境数据的处理方法,或者,使得计算机执行上述第二方面所述的神经网络的训练方法。

第八方面,本申请实施例提供了一种电路系统,所述电路系统包括处理电路,所述处理电路配置为执行所述的环境数据的处理方法,或者,所述处理电路配置为执行上述第二方面所述的神经网络的训练方法。

第九方面,本申请实施例提供了一种计算机程序,当其在计算机上运行时,使得计算机执行上述第一方面所述的环境数据的处理方法,或者,使得计算机执行上述第二方面所述的神经网络的训练方法。

第十方面,本申请实施例提供了一种芯片系统,该芯片系统包括处理器,用于实现上述各个方面中所涉及的功能,例如,发送或处理上述方法中所涉及的数据和/或信息。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存服务器或通信设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。

附图说明

图1为本申请实施例提供的人工智能主体框架的一种结构示意图;

图2为本申请实施例提供的环境数据的处理系统的一种系统架构图;

图3为本申请实施例提供的环境数据的处理方法的一种流程示意图;

图4为本申请实施例提供的环境数据的处理方法中生成3D检测框的位置信息的一种流程图示意图;

图5为本申请实施例提供的环境数据的处理方法中获取与每个3D检测框对应的第一图像特征的一种流程图示意图;

图6为本申请实施例提供的环境数据的处理方法中生成目标匹配信息的一种流程图示意图;

图7为本申请实施例提供的环境数据的处理方法中生成目标匹配信息的另一种流程图示意图;

图8为本申请实施例提供的神经网络的训练方法的一种流程示意图;

图9为本申请实施例提供的环境数据的处理装置的一种结构示意图;

图10为本申请实施例提供的环境数据的处理装置的另一种结构示意图;

图11为本申请实施例提供的神经网络的训练装置的一种结构示意图;

图12为本申请实施例提供的执行设备的一种结构示意图;

图13为本申请实施例提供的执行设备的另一种结构示意图;

图14为本申请实施例提供的训练设备的一种结构示意图;

图15为本申请实施例提供的芯片的一种结构示意图。

具体实施方式

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。

下面结合附图,对本申请的实施例进行描述。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。

首先对人工智能系统总体工作流程进行描述,请参见图1,图1示出的为人工智能主体框架的一种结构示意图,下面从“智能信息链”(水平轴)和“IT价值链”(垂直轴)两个维度对上述人工智能主题框架进行阐述。其中,“智能信息链”反映从数据的获取到处理的一列过程。举例来说,可以是智能信息感知、智能信息表示与形成、智能推理、智能决策、智能执行与输出的一般过程。在这个过程中,数据经历了“数据—信息—知识—智慧”的凝练过程。“IT价值链”从人智能的底层基础设施、信息(提供和处理技术实现)到系统的产业生态过程,反映人工智能为信息技术产业带来的价值。

(1)基础设施

基础设施为人工智能系统提供计算能力支持,实现与外部世界的沟通,并通过基础平台实现支撑。通过传感器与外部沟通;计算能力由智能芯片提供,该智能芯片具体可以采用中央处理器(central processing unit,CPU)、嵌入式神经网络处理器(neural-network processing unit,NPU)、图形处理器(graphics processing unit,GPU)、专用集成电路(application specific integrated circuit,ASIC)或现场可编程门阵列(fieldprogrammable gate array,FPGA)等硬件加速芯片;基础平台包括分布式计算框架及网络等相关的平台保障和支持,可以包括云存储和计算、互联互通网络等。举例来说,传感器和外部沟通获取数据,这些数据提供给基础平台提供的分布式计算系统中的智能芯片进行计算。

(2)数据

基础设施的上一层的数据用于表示人工智能领域的数据来源。数据涉及到图形、图像、语音、文本,还涉及到传统设备的物联网数据,包括已有系统的业务数据以及力、位移、液位、温度、湿度等感知数据。

(3)数据处理

数据处理通常包括数据训练,机器学习,深度学习,搜索,推理,决策等方式。

其中,机器学习和深度学习可以对数据进行符号化和形式化的智能信息建模、抽取、预处理、训练等。

推理是指在计算机或智能系统中,模拟人类的智能推理方式,依据推理控制策略,利用形式化的信息进行机器思维和求解问题的过程,典型的功能是搜索与匹配。

决策是指智能信息经过推理后进行决策的过程,通常提供分类、排序、预测等功能。

(4)通用能力

对数据经过上面提到的数据处理后,进一步基于数据处理的结果可以形成一些通用的能力,比如可以是算法或者一个通用系统,例如,翻译,文本的分析,计算机视觉的处理,语音识别,图像的识别等等。

(5)智能产品及行业应用

智能产品及行业应用指人工智能系统在各领域的产品和应用,是对人工智能整体解决方案的封装,将智能信息决策产品化、实现落地应用,其应用领域主要包括:智能终端、智能制造、智能交通、智能家居、智能医疗、智能安防、自动驾驶、平安城市等。

本申请可以应用于上述各个应用领域中对环境中的物体进行检测定位并进行轨迹跟踪的应用场景中。具体的,作为示例,例如在自动驾驶领域中,自车需要对周围环境中的物体进行检测定位并进行轨迹跟踪,以对自车做出合理的路径规划;作为另一示例,例如在智能安防领域中,监控系统需要对所监测环境中的物体(包括人)进行检测定位并进行轨迹跟踪;作为另一示例,例如在智能终端领域中,当利用智能终端获取到与运动比赛对应的环境数据时,可以对比赛环境中的物体进行检测定位并进行轨迹追踪等等,此处不对本申请实施例的应用场景进行穷举。

在对本申请实施例提供的环境数据的处理方法进行详细介绍之前,先结合图2对本申请实施例提供的环境数据的处理系统进行介绍。请先参阅图2,图2为本申请实施例提供的环境数据的处理系统的一种系统架构图,在图2中,环境数据的处理系统200包括执行设备210、训练设备220、数据库230和数据存储系统240,执行设备210中包括计算模块211。

其中,数据库230中存储有训练数据集合,训练设备220生成目标模型/规则201,并利用数据库230中的训练数据集合对目标模型/规则201进行训练,得到成熟的目标模型/规则201。进一步地,目标模型/规则201具体可以采用神经网络或非神经网络类型的模型来实现,本申请实施例中仅以目标模型/规则201采用神经网络来实现为例。

训练设备220得到的成熟的目标模型/规则201可以应用不同的系统或设备中,例如自动驾驶车辆、监控系统、台式电脑、笔记本电脑等等。其中,执行设备210可以调用数据存储系统240中的数据、代码等,也可以将数据、指令等存入数据存储系统240中。数据存储系统240可以置于执行设备210中,也可以为数据存储系统240相对执行设备210是外部存储器。

执行设备210可以通过计算模块211中的目标模型/规则201对获取到的不同时刻的环境数据进处理,以得到与不同时刻的环境数据对应的至少一个物体轨迹。其中,前述不同时刻的环境数据包括第一时刻的环境数据和第二时刻的环境数据,第二时刻为第一时刻的上一时刻,每个时刻的环境数据包括与每个时刻的环境对应的点云数据以及与每个时刻的环境对应的图像。

具体的,计算模块211可以通过目标模型/规则201根据与第一时刻的环境对应的第一点云数据,生成与第一时刻的环境对应的至少一个三维3D检测框的位置信息,一个3D检测框的位置信息指示第一时刻的环境中一个物体的位置;计算模块211还可以通过目标模型/规则201根据与第一时刻的环境对应的第一图像,获取与每个3D检测框对应的第一图像特征;执行设备210获取与第二点云数据对应的至少一个历史3D检测框的位置信息,并获取与每个历史3D检测框对应的第二图像特征,第二点云数据与第二时刻的环境对应,第二时刻为第一时刻的上一时刻,一个历史3D检测框的位置信息指示一个物体在第二时刻的环境中的位置,第二图像特征为基于与第二时刻的环境对应的第二图像得到的;执行设备210根据至少一个3D检测框的位置信息、第一图像特征、至少一个历史3D检测框的位置信息和第二图像特征,确定至少一个3D检测框和至少一个历史3D检测框之间的匹配关系,进而基于该至少一个3D检测框和至少一个历史3D检测框之间的匹配关系,确定物体在第一时刻和第二时刻之间的运动轨迹,也即同时利用与环境对应的点云数据和图像来确定不同时刻的环境中物体的轨迹,由于每个3D检测框所对应的图像特征中携带了丰富的表观特征(appearance feature),包括与3D检测框对应的纹理信息、色彩信息或其他类型的表观特征等,利用更丰富的信息来确定物体的轨迹,有利于提高最终得到的物体轨迹的精度。

本申请的一些实施例中,请参阅图2,“用户”可以直接与执行设备210交互,也即执行设备210可以直接将目标模型/规则201输出的预测图像展示给“用户”,值得注意的,图2仅是本发明实施例提供的环境数据的处理系统的一种架构示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制。例如,在本申请的另一些实施例中,执行设备210和客户设备也可以为分别独立的设备,执行设备210配置有输入/输出(in/out,I/O)接口,执行设备210通过I/O接口与客户设备进行数据交互。

结合上述描述可知,下面开始对本申请实施例提供的环境数据的处理方法的训练阶段和推理阶段的具体实现流程进行描述。

一、推理阶段

本申请实施例中,推理阶段描述的是执行设备210如何利用目标模型/规则201对环境数据进行处理的过程,具体的,请参阅图3,图3为本申请实施例提供的环境数据的处理方法的一种流程示意图,本申请实施例提供的环境数据的处理方法可以包括:

301、执行设备获取与第一时刻的环境对应的第一点云数据,并获取与第一时刻的环境对应的第一图像。

本申请实施例中,执行设备获取与第一时刻的环境对应的第一点云数据(pointcloud data),并获取与第一时刻的环境对应的C个第一图像。其中,本申请实施例是用于对多个时刻的环境中的物体进行检测定位,并进行轨迹追踪,第一时刻可以为前述多个时刻中除第一个时刻之外的任一个时刻;C为大于或等于1的整数。

具体的,在一种情况下,执行设备上可以配置有激光雷达、毫米波雷达、相机等传感器,执行设备可以直接采集该第一点云数据和第一图像。在另一种情况中,执行设备接收其他电子设备发送的第一点云数据和第一图像。

其中,第一点云数据包括与第一时刻的环境对应的N个第一点中每个第一点的三维空间坐标;C个第一图像中不同的第一图像所对应的采集角度不同。作为示例,例如执行设备为自动驾驶车辆,该自车在车辆的不同方向上配置有多个不同的相机,通过多个不同的相机同时采集与自车周围环境对应的第一图像,从而可以通过多个不同的相机同时采集到C个第一图像,不同的第一图像所对应的采集角度,应理解,上述举例仅为方便理解本方案,不用于限定本方案。

为进一步理解第一点云数据和第一图像的数据形态,作为示例,例如执行设备通过激光雷达以一定扫描速率采集周围的环境数据,以采集到与第一时刻的环境对应的第一点云数据,第一点云数据具体可以表现为{p

执行设备中配置有六个相机,六个相机通过不同的采集角度来获取与第一时刻的环境对应的第一图像,则与第一时刻的环境对应的六个图像为{I

302、执行设备根据第一点的三维空间坐标,将第一点投影至与第一图像对应的图像坐标系,以获取与多个第一点对应的多个像素点。

本申请实施例中,执行设备在得到与第一时刻的环境对应的第一点云数据后,也即得到了第一点云数据中包括的每个第一点的三维空间坐标,该第一点的三维空间坐标是基于三维空间坐标系得到的。

执行设备中预先配置有三维坐标系和C个图像坐标系中每个图像坐标系之间的转换关系(也即配置有C个转换关系)。针对N个第一点中的任意一个第一点(为便于描述,后续称为“目标点”),执行设备根据该目标点的三维空间坐标和前述C个转换关系,将该目标点投影至每个第一图像对应的图像坐标系中,以得到与该目标点对应的C个图像坐标,C个图像坐标与C个第一图像一一对应。为进一步理解本方案,如下公开了将一个目标点转换至一个第一图像所对应的图像坐标系中的公式的一个示例:

l

其中,l

针对C个图像坐标中的任意一个图像坐标(为方便描述,后续称为“目标图像坐标”),执行设备从C个第一图像中获取与目标图像坐标对应的目标第一图像,判断该目标图像坐标是否位于目标第一图像内。若目标图像坐标位于目标第一图像内,则将目标第一图像中位于目标图像坐标上的像素点确定为与第一点对应的一个像素点;若目标图像坐标不存在于目标第一图像内,则确定目标第一图像内不存在与该第一点对应的像素点。执行设备对C个图像坐标中每个图像坐标均执行前述操作,以从C个第一图像中获取到与一个第一点对应的一个或多个像素点。

执行设备对N个第一点中的每个第一点均执行上述操作,以确定N个第一点与C个第一图像中的多个像素点之间的对应关系。需要说明的是,部分第一点在C个第一图像中可以均不存在与之对应的像素点,部分第一点在C个第一图像中可以存在一个或多个与之对应的像素点,两个不同的第一点可以对应C个第一图像中相同的像素点,具体N个第一点和多个像素点之间的对应关系应结合实际情况确定,此处不做限定。

303、执行设备根据第一图像的特征信息,获取与第一点对应的第三图像特征。

本申请实施例中,执行设备根据第一图像的特征信息,获取与第一点对应的第三图像特征;其中,第一图像的特征信息可以为通过特征提取网络对第一图像进行处理后得到的,也可以为原始的第一图像中携带的信息。第三图像特征具体可以表现为向量。

在一种实现方式中,执行设备可以通过第一特征提取网络对C个第一图像中的每个第一图像进行特征提取,以得到C个第一图像中每个第一图像的特征信息,进而从C个第一图像的特征信息中获取与第一点对应的第三图像特征。其中,一个第一图像的特征信息具体可以表现为与多个特征提取通道一一对应的多个特征图。

具体的,针对多个第一点中的任一个第一点(简称为“目标点”),执行设备获取步骤302中生成的多个第一点和多个像素点之间的对应关系,若C个第一图像中存在与目标点对应的像素点,则执行设备确定与目标点对应的一个或多个第一像素点,从C个第一图像的特征信息中获取每个第一像素点的图像特征,根据每个第一像素点的图像特征,生成与目标点对应的第三图像特征。若C个第一图像中不存在与目标点对应的像素点,则执行设备可以确定与目标点对应的图像特征为包括多个0的特征向量;或者,执行设备可以直接获取下一个第一点。

更具体的,若一个目标点对应有至少两个第一像素点,则执行设备在获取到所有第一像素点的图像特征后,可以从多个第一像素点的图像特征中任意选取一个第一像素点的图像特征,作为与目标点对应的第三图像特征;或者,执行设备可以将各个第一像素点的图像特征进行加权求和,以生成与目标点对应的第三图像特征等,执行设备基于多个第一像素点的图像特征,还可以基于其他方式得到与目标点对应的第三图像特征,此处不做穷举。

若一个目标点对应有一个第一像素点,则执行设备可以直接将从C个第一图像的特征信息中获取到的该一个第一像素点的图像特征作为与目标点对应的第三图像特征。

执行设备对第一点云数据中包括的所有第一点均执行上述操作,以得到与多个第一点对应的第三图像特征,需要说明的是,由于可能部分第一点不存在与之对应的像素点,则在前述情况下,执行设备只能获取到与部分第一点对应的第三图像特征。

在另一种实现方式中,第一图像的特征信息指的是原始的第一图像中携带的特征信息,作为示例,例如第一图像中每个像素点所对应的像素值可以视为原始的第一图像中携带的特征信息。执行设备获取与第一点对应的第三图像特征的具体实现方式可参阅上一实现方式中的描述,区别在于,上一实现方式中,每个像素点的图像特征为通过第一特征提取网络对第二像素进行特征提取后得到的,本实现方式中,每个像素点的图像特征为直接从原始的第一图像中获取的。

304、执行设备通过特征提取网络对第一点云数据进行特征提取,以得到第一特征信息。

本申请实施例中,执行设备将第一点云数据输入第二特征提取网络中,以通过第二特征提取网络对第一点云数据进行特征提取,以得到第一特征信息。其中,第二特征提取网络为用于对3D数据进行处理的神经网络。需要说明的是,第一点云数据为三维的数据,第一特征信息为二维的数据。

305、执行设备通过特征提取网络对与第一点对应的第三图像特征进行特征提取,以得到第二特征信息。

本申请的一些实施例中,执行设备在通过步骤303得到与所有第一点对应的多个第三图像特征后,可以将与所有第一点对应的多个第三图像特征输入第三特征提取网络中,以通过第三特征提取网络对多个第三图像特征进行特征提取,以得到第二特征信息。

其中,第三特征提取网络为用于对3D数据进行处理的神经网络,第三特征提取网络与第二特征提取网络可以为相同的神经网络,也可以为不同的神经网络。需要说明的是,与所有第一点对应的多个第三图像特征为三维的数据,第二特征信息为二维的数据。

本申请实施例不限定步骤304和步骤305之间的执行顺序,可以先执行步骤304,再执行步骤305;也可以先执行步骤305,再执行步骤304;还可以同时执行步骤304和步骤

306、执行设备将第二特征信息与第一特征信息进行融合,以得到更新后的第一特征信息。

本申请的一些实施例中,执行设备在得到第一特征信息和第二特征信息之后,可以将第二特征信息与第一特征信息进行融合,以得到更新后的第一特征信息。

具体的,在一种实现方式中,执行设备对第一特征信息和第二特征信息执行拼接(connect)操作得到第一拼接结果,通过至少一个卷积层对第一拼接结果进行卷积以得到卷积结果,再对卷积结果和第一特征信息执行拼接操作以得到第二特征信息。

在另一种实现方式中,执行设备可以将第二特征信息与第一特征信息进行加权求和,以实现第二特征信息与第一特征信息之间的融合,以得到更新后的第一特征信息。在另一种实现方式中,执行设备可以直接将第二特征信息与第一特征信息进行拼接,以实现第二特征信息与第一特征信息之间的融合,得到更新后的第一特征信息等等,执行设备可以采用多种方式,以实现第二特征信息与第一特征信息之间的融合,此处不做穷举。

本申请实施例中,步骤305和306为可选步骤,若执行步骤305和306,则本申请实施例不限定步骤305和步骤304之间的执行顺序,可以先执行步骤304,再执行步骤305;也可以先执行步骤305,再执行步骤304;还可以同时执行步骤304和步骤305。

307、执行设备根据第一点云数据,生成与第一时刻的环境对应的至少一个3D检测框的位置信息。

本申请实施例中,执行设备在得到第一特征信息之后,可以根据第一特征信息,通过特征处理网络生成与第一时刻的环境对应的至少一个3D检测框的位置信息。

具体的,在一种实现方式中,执行设备可以根据与多个第一点对应的多个第三图像特征和第一点云数据,生成与第一时刻的环境对应的至少一个3D检测框的位置信息。本申请实施例中,根据第一点的三维空间坐标,将第一点投影至第一图像对应的图像坐标系中,以获取到与多个第一点对应的第三图像特征,进而基于多个第三图像特征和第一点云数据,执行物体检测操作,以得到与第一时刻的环境对应的3D检测框的位置信息,也即在进行物体检测时就同时参考了与第一时刻的环境对应的点云数据和图像数据,以提高对第一时刻的环境中物体进行物体检测过程的精准度,也即有利于得到更准确的3D检测框。

更具体的,步骤305和306为可选步骤,在一种实现方式中,若执行步骤305和306,则步骤307可以包括:执行设备通过特征处理网络对更新后的第一特征信息进行特征处理,也即基于更新后的第一特征信息,通过特征处理网络执行物体检测操作,以生成至少一个检测结果。一个检测结果指示与第一时刻的环境对应的一个3D检测框的位置信息;进一步地,该3D检测框的位置信息可以包括该3D检测框的中心点的三维空间坐标,还包括该3D检测框的长、宽和高,还包括该3D检测框的朝向角。

为了更直观地理解本方案,请参阅图4,图4为本申请实施例提供的环境数据的处理方法中生成3D检测框的位置信息的一种流程图示意图。如图4所示,第一点云数据中包括多个第一点的三维空间坐标,执行设备将每个第一点投影至第一图像的图像坐标系中,以得到与多个第一点对应的多个像素点。执行设备通过第一特征提取网络对C个第一图像进行特征提取,以得到C个第一图像中每个第一图像的特征信息,从C个第一图像的特征信息中获取与多个第一点对应的第三图像特征。

执行设备通过第二特征提取网络对第一点云数据进行特征提取,以得到第一特征信息;通过第三特征提取网络对与所有第一点对应的多个第三图像特征进行特征提取,以得到第二特征信;执行设备将第二特征信息与第一特征信息进行融合,以得到更新后的第一特征信息。执行设备通过特征处理网络对更新后的第一特征信息进行特征处理,以生成与第一时刻的环境对应的至少一个3D检测框的位置信息,应理解,图4中的示例仅为方便理解本方案,不用于限定本方案。

本申请实施例中,将多个第三图像特征和第一点云数据分别进行特征提取后,再将分别提取到的第一特征信息和第二特征信息进行融合,进而对更新后的第一特征信息进行特征处理,以生成3D检测框的位置信息,由于在对第三图像特征和第一点云数据进行特征提取的过程,分别对第三图像特征和第一点云数据进行充分的信息挖掘,相比于直接将原始的第一点云数据与第三图像特征进行融合,有利于实现第三图像特征和第一点云数据的充分融合,以进一步提高整个物体检测过程的精度,以提高得到的3D检测框的准确度。

在另一种实现方式中,若不执行步骤305和306,则在一种情况中,执行设备将与所有第一点对应的多个第三图像特征和第一特征信息进行融合,以得到第三特征信息,步骤307可以包括:执行设备通过特征处理网络对第三特征信息进行特征处理,也即基于第三特征信息,通过特征处理网络执行物体检测操作,以生成至少一个检测结果。

在另一种情况中,执行设备将与所有第一点对应的多个第三图像特征和第一点云数据进行融合,以得到更新后的第一点云数据,上述步骤304可以包括:执行设备对更新后的第一点云数据进行特征提取,以得到第四特征信息。则步骤307可以包括:执行设备通过特征处理网络对第四特征信息进行特征处理,以生成至少一个检测结果。

在另一种实现方式中,执行设备可以直接将第一特征信息输入到特征处理网络中,以通过特征处理网络进行物体检测,以生成至少一个检测结果,一个检测结果指示与第一时刻的环境对应的至少一个3D检测框的位置信息。

308、执行设备通过特征提取网络对第二特征信息进行特征提取,以得到第四图像特征。

本申请的一些实施例中,执行设备在得到第二特征信息之后,还会利用第四特征提取网络,对第二特征信息再次进行特征提取,以得到与多个第一点对应的第四图像特征。其中,第四特征提取网络具体可以包括用于处理2维数据的卷积神经网络,第四特征提取网络中还可以包括回归神经网络。由于多个第三图像特征中每个第三图像特征均存在与之对应的第一点,则对多个第三图像特征进行两次特征提取后得到的第四图像特征也与多个第一点对应。

需要说明的是,步骤308为可选步骤,若执行步骤308,则本申请实施例不限定步骤306和307与步骤308之间的执行顺序,可以先执行步骤306和307,再执行步骤308;也可以先执行步骤308,再执行步骤306和307;还可以同时执行步骤306和307与步骤308。

309、执行设备根据每个3D检测框的位置信息,获取与每个3D检测框对应的第一图像特征。

本申请实施例中,执行设备在得到每个3D检测框的位置信息后,还会获取与每个3D检测框对应的第一图像特征。具体的,若执行步骤308,则步骤309可以包括:执行设备根据每个3D检测框的位置信息,从与多个第一点对应的第四图像特征中获取与每个3D检测框对应的第一图像特征。

更具体的,针对多个3D检测框中的任意一个3D检测框(为方便描述,后续称为“第三3D检测框”),在一种实现方式中,执行设备可以获取第三3D检测框的中心点的位置信息,并从第四图像特征中获取与第三3D检测框的中心点对应的图像特征,将与第三3D检测框的中心点对应的图像特征确定为与第三3D检测框对应的第一图像特征。

在另一种实现方式中,执行设备可以获取位于第三3D检测框内的所有第一点的位置信息,并根据通过步骤302得到的多个第一点和多个像素点之间的对应关系,获取与位于第三3D检测框内的所有第一点对应的多个第二像素点,从第四图像特征中获取与所有第二像素点对应的图像特征,将与所有第二像素点对应的图像特征确定为与第三3D检测框对应的第一图像特征。

执行设备对多个3D检测框中每个3D检测框均执行上述步骤,以获取到与每个3D检测框对应的第一图像特征。

为更直观地理解本方案,请参阅图5,图5为本申请实施例提供的环境数据的处理方法中获取与每个3D检测框对应的第一图像特征的一种流程图示意图。图5需要结合上述图4进行理解,如图5所示,执行设备在得到第一特征信息和第二特征信息之后,一方面,执行设备将第二特征信息与第一特征信息进行融合,以得到更新后的第一特征信息,并通过特征提取网络对更新后的第一特征信息进行特征处理,以得到与第一时刻的环境对应的至少一个3D检测框的位置信息;在另一方面,执行设备通过第四特征提取网络对第二特征信息进行特征提取,以得到与第一点对应的第四图像特征。执行设备再根据每个3D检测框的位置信息,从第四图像特征中获取每个3D检测框所对应的第一图像特征,应理解,图5中的示例仅为方便理解本方案,不用于限定本方案。

本申请实施例中,在分别得到第一特征信息和第二特征信息之后,还可以在根据第一特征信息生成3D检测框的位置信息的同时,通过特征提取网络对第二特征信息再次进行特征提取,以得到第四图像特征,并基于3D检测框的位置信息从第四图像特征中获取每个3D检测框所对应的第一图像特征;再次对第二特征信息进行特征提取,能够得到精度更高的第四图像特征,且由于前述特征提取操作可以与生成3D检测框的位置信息并列执行,有利于提高第一图像特征的获取过程的效率。

则在一种实现方式中,若未执行步骤308,步骤305执行,则步骤309可以包括:执行设备根据每个3D检测框的位置信息,从与多个第一点对应的第二特征信息中获取与每个3D检测框对应的第一图像特征。具体实现方式与上一实现方式类似,区别在于将上一实现方式中的第四图像特征,替换为本实现方式中的第二特征信息。

在另一种实现方式中,若步骤308和步骤305均未执行,则步骤309可以包括:执行设备根据每个3D检测框的位置信息,从与多个第一点对应的多个第三图像特征中获取与每个3D检测框对应的第一图像特征。

在另一种实现方式中,若未执行步骤308,步骤305执行,则步骤309还可以包括:执行设备根据每个3D检测框的位置信息,从与多个第一点对应的第二特征信息中获取与每个3D检测框对应的第五图像特征,对每个3D检测框所对应的第五图像特征再次进行特征提取,以生成与每个3D检测框对应的第一图像特征。

310、执行设备获取与第二点云数据对应的至少一个历史3D检测框的位置信息,并获取与每个历史3D检测框对应的第二图像特征。

本申请实施例中,为了对各个时刻的环境中的物体进行轨迹追踪,执行设备还需要获取与第二点云数据对应的至少一个历史3D检测框的位置信息,并获取与每个历史3D检测框对应的第二图像特征。

其中,第二点云数据与第二时刻的环境对应,第二时刻为第一时刻的上一时刻。历史3D检测框的位置信息的含义与上述步骤中3D检测框的位置信息的含义类似,一个历史3D检测框的位置信息指示一个物体在第二时刻的环境中的位置。与每个历史3D检测框对应的第二图像特征为基于与第二时刻的环境对应的第二图像得到的;每个历史3D检测框所对应的第二图像特征的含义,与上述步骤中每个3D检测框所对应的第一图像特征类似,可参照上述描述进行理解。

具体的,执行设备在执行步骤301之前,还会获取到与第二时刻的环境对应的第二点云数据,以及与第二时刻的环境对应的C个第二图像后,通过执行上述步骤302至309中描述的具体实现方式,以生成与第二时刻的环境对应的至少一个历史3D检测框的位置信息,并获取到与每个历史3D检测框对应的第二图像特征,具体实现步骤可参阅上述描述,此处不再赘述。

311、执行设备根据至少一个3D检测框的位置信息、第一图像特征、至少一个历史3D检测框的位置信息和第二图像特征,确定至少一个3D检测框和至少一个历史3D检测框之间的匹配关系。

本申请实施例中,执行设备在得到至少一个3D检测框的位置信息、每个3D检测框所对应的第一图像特征、至少一个历史3D检测框的位置信息和每个历史3D检测框所对应的第二图像特征之后,需要确定至少一个3D检测框和至少一个历史3D检测框之间的匹配关系,以确定多个时刻的环境中的至少一个物体的轨迹。

进一步地,若至少一个3D检测框中的一个第一3D检测框与至少一个历史3D检测框中的一个第一历史3D检测框匹配,则执行设备确定该一个第一3D检测框和该一个第一历史3D检测框匹配归属于同一物体的一个轨迹。若至少一个3D检测框中存在一个第二3D检测框,该第二3D检测框与至少一个历史3D检测框中所有历史3D检测框均不匹配,则该一个第二3D检测框作为新的物体轨迹的起点。若至少一个历史3D检测框存在一个第二历史3D检测框,该一个第二历史3D检测框与所有3D检测框均不匹配,则前述一个第二历史3D检测框作为一个物体轨迹的终点。

具体的,在一种实现方式中,执行设备可以根据至少一个3D检测框的位置信息和至少一个历史3D检测框的位置信息确定至少一个目标匹配信息,进而利用每个3D检测框所对应的第一图像特征和每个历史3D检测框所对应的第二图像特征,对3D检测框和历史3D检测框之间的匹配关系进行调整。

在另一种实现方式中,执行设备可以根据每个3D检测框所对应的第一图像特征和每个历史3D检测框所对应的第二图像特征确定至少一个目标匹配信息,进而利用至少一个3D检测框的位置信息和至少一个历史3D检测框的位置信息,对3D检测框和历史3D检测框之间的匹配关系进行调整。由于前述两种实现方式的实现流程不同,以下分别进行描述。

(一)、利用位置信息进行匹配,利用图像特征进行辅助调整

本申请实施例中,在执行设备利用位置信息生成至少一个目标匹配信息,再利用图像特征进行辅助调整的情况下,还会分为如下三种情况,以下分别进行描述。

(1)、根据位置信息进行匹配,并根据图像特征进行筛选

具体的,在一种实现方式中,步骤311可以包括:执行设备根据每个3D检测框的位置信息和每个历史3D检测框的位置信息,生成P个目标匹配信息;其中,一个目标匹配信息用于指示一个第一3D检测框和一个第一历史3D检测框之间的对应关系,第一3D检测框包括于至少一个3D检测框,第一历史3D检测框包括于至少一个历史3D检测框,第一3D检测框指的是已经成功匹配的3D检测框,第一历史3D检测框指的是已经成功匹配的历史3D检测框。

更具体的,在一种情况中,执行设备可以计算每个3D检测框与每个历史3D检测框之间的位置距离,以生成第二距离信息,该第二距离信息指示每个3D检测框与每个历史3D检测框之间的第二位置距离。执行设备根据第二距离信息,采用目标算法对至少一个3D检测框和至少一个历史3D检测框进行匹配,以生成P个目标匹配信息。

其中,一个3D检测框与一个历史3D检测框之间的位置距离指的可以为检测框的中心点之间的位置距离,用于计算检测框的中心点之间的位置距离的函数包括但不限于欧式距离、马氏距离或其他距离计算函数等;或者,一个3D检测框与一个历史3D检测框之间的位置距离可以为一个3D检测框与一个历史3D检测框之间的交并比(IoU)距离。目标算法包括但不限于匈牙利算法、贪婪算法或其他算法等。

在另一种情况中,执行设备可以生成与每个历史3D检测框一一对应的3D预测检测框的位置信息,也即基于与第二时刻的环境对应的历史3D检测框的位置信息,预测与第一时刻的环境对应的3D预测检测框的位置信息。计算每个3D检测框与每个3D预测检测框之间的距离,以生成第三距离信息,第三距离信息指示每个3D检测框与每个3D预测检测框之间的位置距离。执行设备根据第三距离信息,采用目标算法对至少一个3D检测框和至少一个3D预测检测框进行匹配,由于3D预测检测框和历史3D检测框之间是一一对应的关系,也即能够生成P个目标匹配信息。

执行设备在得到P个目标匹配信息之后,根据与P个第一3D检测框对应的P个第一图像特征和与P个第一历史3D检测框对应的P个第二图像特征,生成第一相似度信息,其中,第一相似度信息包括与P个目标匹配信息对应的P个第一相似度,一个第一相似度用于指示一个第一3D检测框和一个第一历史3D检测框之间的相似度。用于计算该第一相似度信息的函数包括但不限于余弦距离、马氏距离、欧式距离或其他用于计算相似度的函数等。

执行设备根据第一相似度信息中包括的P个第一相似度,对P个目标匹配信息进行筛选,以得到Q个目标匹配信息,Q为小于或等于P的整数。

具体的,在一种实现方式中,针对P个第一相似度中的任一个第一相似度(为方便描述,后续简称“目标相似度”),执行设备判断目标相似度是否大于或等于第一相似度阈值,若大于或等于第一相似度阈值,则确定保留与目标相似度对应的一个目标匹配信息,若小于第一相似度阈值,则确定删除与目标相似度对应的一个目标匹配信息。执行设备对P个第一相似度中的每个第一相似度均执行前述操作,以完成对P个目标匹配信息的筛选操作。

在另一种实现方式中,执行设备可以按照数值从大到小的顺序,对P个第一相似度进行排序,并获取与前Q个第一相似度对应的Q个目标匹配信息,将剩余的P-Q个目标匹配信息删除。执行设备还可以采用其他方式,以根据第一相似度信息从P个目标匹配信息中筛选出Q个目标匹配信息,此处不做穷举。

本申请实施例中,在部分场景中,同一物体在不同时刻的位置变化较大,仅利用3D检测框的位置信息进行匹配,可能会得到错误的匹配关系,也即可能会得到错误的目标匹配信息,利用3D检测框的图像特征对得到的P个目标匹配信息进行二次筛选,有利于保证得到的Q个目标匹配信息的准确率。

(2)、根据位置信息进行匹配,并根据图像特征进行再次匹配

具体的,在另一种现方式中,步骤311可以包括:执行设备根据每个3D检测框的位置信息和每个历史3D检测框的位置信息,生成P个目标匹配信息,一个目标匹配信息用于指示一个第一3D检测框和一个第一历史3D检测框之间的对应关系,第一3D检测框包括于至少一个3D检测框,第一历史3D检测框包括于至少一个历史3D检测框。

执行设备根据与第二3D检测框对应的第一图像特征和与第二历史3D检测框对应的第二图像特征,生成X个目标匹配信息。其中,第二3D检测框为至少一个3D检测框中除第一3D检测框之外的3D检测框,也即第二3D检测框为尚未匹配成功的3D检测框;第二历史3D检测框为至少一个历史3D检测框中除第一历史3D检测框之外的历史3D检测框;第二历史3D检测框为尚未匹配成功的历史3D检测框。

具体的,执行设备根据与第二3D检测框对应的第一图像特征和与第二历史3D检测框对应的第二图像特征,生成第二相似度信息,第二相似度信息指示与每个第二3D检测框对应与每个第二历史3D检测框之间的相似度。用于计算该第二相似度信息的函数包括但不限于余弦距离、马氏距离、欧式距离或其他用于计算相似度的函数等。

执行设备根据第二相似度信息,采用目标算法对至少一个第二3D检测框和至少一个第二历史3D检测框进行匹配,以生成X个目标匹配信息。目标算法包括但不限于匈牙利算法、贪婪算法或其他算法等。

本申请实施例中,在部分场景中,同一物体在不同时刻的位置变化较大,仅利用3D检测框的位置信息进行匹配,可能会导致无法将位于第一时刻的环境中的目标物体与位于第二时刻的环境中的目标物体成功匹配,而是将位于第一时刻的环境中的目标物体作为新的物体轨迹的起点,从而导致得到的P个目标匹配信息整体表现不够好,利用3D检测框的图像特征对剩余的3D检测框和剩余的历史3D检测框进行二次匹配,可有利于避免前述情况的发生,有利于提高整个匹配过程的性能。

(3)、根据位置信息进行匹配,根据图像特征进行筛选,并根据图像特征进行再次匹配

具体的,在一种实现方式中,步骤311可以包括:执行设备根据每个3D检测框的位置信息和每个历史3D检测框的位置信息,生成P个目标匹配信息,根据P个目标匹配信息、与第一3D检测框对应的第一图像特征和与第一历史3D检测框对应的第二图像特征,生成第一相似度信息,根据第一相似度信息,对P个目标匹配信息进行筛选,以得到Q个目标匹配信息。执行设备还根据与第二3D检测框对应的第一图像特征和与第二历史3D检测框对应的第二图像特征,生成x个目标匹配信息,也即供得到Q+x个目标匹配信息。本实现方式中各个步骤的具体实现方式可参阅上两种实现方式中的描述,此处不再赘述。

为更直观地理解本方案,请参阅图6,图6为本申请实施例提供的环境数据的处理方法中生成目标匹配信息的一种流程图示意图。如图6所示,执行设备在得到与第一时刻的环境对应的每个3D检测框的位置信息、每个3D检测框所对应的图像特征、与第二时刻的环境对应的每个历史3D检测框的位置信息以及每个历史3D检测框所对应的图像特征之后。在A1阶段,先根据每个3D检测框的位置信息和每个历史3D检测框的位置信息,对至少一个3D检测框和至少一个历史3D检测框进行配对,以得到P个目标匹配信息,也即得到P个第一3D检测框和P个第一历史3D检测框之间的一一对应关系。

在A2阶段,执行设备根据每个第一3D检测框所对应的图像特征和每个第一历史3D检测框所对应的图像特征,生成第一相似度信息,根据第一相似度信息对P个目标匹配信息进行筛选,以得到Q个目标匹配信息,也即得到Q个第一3D检测框和Q个第一历史3D检测框之间的一一对应关系。

在A3阶段,执行设备将与第一时刻的环境对应的至少第一3D检测框中除前述Q个第一3D检测框之外的3D检测框确定为第二3D检测框,将与第二时刻的环境对应的至少历史3D检测框中除前述Q个第一历史3D检测框之外的历史3D检测框确定为第二3D检测框,根据每个第二3D检测框所对应的第一图像特征和每个第二历史3D检测框所对应的第二图像特征,对至少一个第二3D检测框和至少一个第二历史3D检测框进行再次匹配,以生成x个目标匹配信息,通过A1阶段、A2阶段和A3阶段最终得到Q+x个目标匹配信息,应理解,图6中的示例仅为方便理解本方案,不用于限定本方案。

(二)、利用图像特征进行匹配,利用位置信息进行辅助调整

本申请实施例中,在执行设备利用图像特征生成至少一个目标匹配信息,再利用位置信息进行辅助调整的情况下,还会分为如下三种情况,以下分别进行描述。

(1)、根据图像特征进行匹配,并根据位置信息进行筛选

具体的,在一种实现方式中,步骤311可以包括:执行设备根据与每个3D检测框对应的第一图像特征和与每个历史3D检测框对应的第二图像特征,生成S个目标匹配信息。

具体的,执行设备根据与每个3D检测框对应的第一图像特征和与每个历史3D检测框对应的第二图像特征,计算得到第三相似度信息,第三相似度信息用于指示任意一个3D检测框和任意一个历史3D检测框之间的相似度,第三相似度所采用的计算函数可参阅上述描述,此处不做赘述。第三相似度信息具体可以表现为相似度矩阵,作为示例,例如与第一时刻的环境对应有4个3D检测框,与第二时刻的环境对应有5个历史3D检测框,则第三相似度信息具体可表现为4乘5的矩阵,或者具体可以表现为5乘4的矩阵,该矩阵中的一个值用于指示一个3D检测框和一个历史3D检测框之间的相似度。

执行设备根据第三相似度信息,采用目标算法对至少一个3D检测框和至少一个历史3D检测框进行匹配,以生成S个目标匹配信息。

执行设备在得到S个目标匹配信息(也即确定了S个第一3D检测框和S个第一历史3D检测框)之后,根据与S第一3D检测框对应的位置信息和与S个第一历史3D检测框对应的位置信息,生成第一距离信息,第一距离信息中包括与S个目标匹配信息一一对应的S个第一距离值,一个第一距离值指示任意一个第一3D检测框和任意一个第一历史3D检测框之间的距离。

执行设备根据第一距离信息,对S个目标匹配信息进行筛选,以得到R个目标匹配信息,R为小于或等于S的整数。具体的,在一种实现方式中,针对第一距离信息中的任意一个第一距离值(为方便描述,后续简称为“目标距离值”),若目标距离值大于预设距离阈值,则执行设备删除与目标距离值对应的目标匹配信息;若目标距离值小于或等于预设距离阈值,则执行设备保留与目标距离值对应的目标匹配信息。执行设备对S个第一距离值中任一个第一距离值执行前述操作,以完成对S个目标匹配信息的筛选操作。

在另一种实现方式中,执行设备可以按照从小到大的顺序将S个第一距离值进行排序,并保留与前R个第一距离值对应的R个目标匹配信息,删除与后S-R个第一距离值对应的S-R个目标匹配信息,以筛选出R个目标匹配信息等,此处不对利用第一距离信息进行目标匹配信息筛选的方式进行穷举。

本申请实施例中,由于在部分场景中,可能会存在不同的物体有着相同的外观,则仅利用物体的图像特征进行匹配,就可能会导致出现错误的目标匹配信息,利用物体的位置信息进行二次筛选后,有利于提高最终得到的目标匹配信息的正确率。

(2)、根据图像特征进行匹配,并根据位置信息进行再次匹配

具体的,在一种实现方式中,步骤311可以包括:执行设备根据与每个3D检测框对应的第一图像特征和与每个历史3D检测框对应的第二图像特征,生成S个目标匹配信息。

执行设备根据与第二3D检测框对应的位置信息和与第二历史3D检测框对应的位置信息,生成Y个目标匹配信息。其中,第二3D检测框为至少一个3D检测框中除第一3D检测框之外的3D检测框,第二历史3D检测框为至少一个历史3D检测框中除第一历史3D检测框之外的历史3D检测框。执行设备根据第二3D检测框对应的位置信息和与第二历史3D检测框对应的位置信息,生成Y个目标匹配信息的具体实现方式可参阅“利用位置信息进行匹配,利用图像特征进行辅助调整”中第一种实现方式中的描述,区别在于将上述描述中的3D检测框替换为本实现方式中的第二3D检测框,将上述描述中的历史3D检测框替换为本实现方式中的第二历史3D检测框,此处不做赘述。

本申请实施例中,由于在部分场景中,可能存在采集到的图像不够清晰,或者环境中的物体存在遮挡等情况,若仅利用物体的图像特征进行匹配,可能会导致相同的物体无法被配对,利用与物体对应的位置信息进行二次匹配,有利于降低上述遗漏情况的发生,以提高最终得到的多个目标匹配信息的性能。

(3)、根据图像特征进行匹配,根据位置信息进行筛选,并根据位置信息进行再次匹配

具体的,在一种实现方式中,步骤311可以包括:执行设备根据与每个3D检测框对应的第一图像特征和与每个历史3D检测框对应的第二图像特征,生成S个目标匹配信息。执行设备根据S个目标匹配信息、与第一3D检测框对应的位置信息和与第一历史3D检测框对应的位置信息,生成第一距离信息,第一距离信息指示第一3D检测框和第一历史3D检测框之间的距离;根据第一距离信息,对S个目标匹配信息进行筛选,以得到R个目标匹配信息。执行设备根据与第二3D检测框对应的位置信息和与第二历史3D检测框对应的位置信息,生成y个目标匹配信息,本实现方式中各个步骤的具体实现方式可参阅上两种实现方式中的描述,此处不再赘述。

为更直观地理解本方案,图7为本申请实施例提供的环境数据的处理方法中生成目标匹配信息的一种流程图示意图。如图7所示,执行设备在得到与第一时刻的环境对应的每个3D检测框的位置信息、每个3D检测框所对应的图像特征、与第二时刻的环境对应的每个历史3D检测框的位置信息以及每个历史3D检测框所对应的图像特征之后。在B1阶段,先根据每个3D检测框所对应的图像特征和每个历史3D检测框所对应的图像特征,对至少一个3D检测框和至少一个历史3D检测框进行配对,以得到S个目标匹配信息,也即得到S个第一3D检测框和S个第一历史3D检测框之间的一一对应关系。

在B2阶段,执行设备根据每个第一3D检测框的位置信息和每个第一历史3D检测框的位置信息,生成第一距离信息,根据第一距离信息对S个目标匹配信息进行筛选,以得到R个目标匹配信息,也即得到R个第一3D检测框和R个第一历史3D检测框之间的一一对应关系。

在B3阶段,执行设备将与第一时刻的环境对应的至少第一3D检测框中除前述R个第一3D检测框之外的3D检测框确定为第二3D检测框,将与第二时刻的环境对应的至少历史3D检测框中除前述R个第一历史3D检测框之外的历史3D检测框确定为第二3D检测框,根据每个第二3D检测框的位置信息和每个第二历史3D检测框的位置信息,对至少一个第二3D检测框和至少一个第二历史3D检测框进行再次匹配,生成y个目标匹配信息,通过B1阶段、B2阶段和B3阶段最终得到R+y个目标匹配信息,应理解,图7中的示例仅为方便理解本方案,不用于限定本方案。

本申请实施例中,不仅根据与当前时刻(也即第一时刻)的环境对应的第一点云数据,生成与当前时刻对应的至少一个3D检测框的位置信息,还根据与当前时刻环境对应的图像,获取到与每个3D检测框对应的第一图像特征,并根据每个3D检测框的位置信息、第一图像特征、与上一时刻(也即第二时刻)的环境对应的历史3D检测框的位置信息和每个历史3D检测框所对应的第二图像特征,确定至少一个3D检测框和至少一个历史3D检测框之间的匹配关系,也即同时利用与环境对应的点云数据和图像来确定不同时刻的环境中物体的轨迹,由于每个3D检测框所对应的图像特征中携带了丰富的表观特征,包括与3D检测框对应的纹理信息、色彩信息或其他类型的表观特征等,利用更丰富的信息来确定物体的轨迹,有利于提高最终得到的物体轨迹的精度。

二、训练阶段

本申请实施例中,训练阶段描述的是训练设备220如何利用数据库230中的训练数据集合生成成熟的神经网络的过程,具体的,请参阅图8,图8为本申请实施例提供的神经网络的训练方法的一种流程示意图,本申请实施例提供的神经网络的训练方法可以包括:

801、训练设备获取与目标时刻的环境对应的目标点云数据,并获取与目标时刻的环境对应的目标图像。

本申请实施例中,训练设备在执行每次训练操作之前,需要从目标神经网络的训练数据集中获取与目标时刻的环境对应的目标点云数据,并获取与目标时刻的环境对应的目标图像;其中,目标时刻的环境所对应的目标点云数据,与第一时刻的环境所对应的第一点云数据的含义类似,目标时刻的环境所对应的目标图像,与第一时刻的环境所对应的第一图像的含义类似,此处不做赘述。

802、训练设备根据第二点的三维空间坐标,将第二点投影至与目标图像对应的图像坐标系,以获取与多个第二点对应的多个像素点。

803、训练设备根据目标图像的特征信息,获取与第二点对应的第三图像特征。

804、训练设备通过目标神经网络对目标点云数据进行特征提取,以得到第一特征信息。

805、训练设备通过目标神经网络对与所有第二点对应的多个第三图像特征进行特征提取,以得到第二特征信息。

806、训练设备通过目标神经网络将第二特征信息与第一特征信息进行融合,以得到更新后的第一特征信息。

807、训练设备根据目标点云数据,通过目标神经网络生成与目标时刻的环境对应的至少一个目标3D检测框的预测位置信息。

808、训练设备通过目标神经网络对第二特征信息进行特征提取,以得到与第二点对应的第四图像特征。

809、训练设备根据每个目标3D检测框的位置信息,获取与每个目标3D检测框对应的预测图像特征。

本申请实施例中,训练设备执行步骤802至809的具体实现方式与图3对应实施例中执行设备执行步骤302至309的具体实现方式类似,可参阅理解,区别在于,将图3对应实施例中的与第一时刻的环境所对应的第一点云数据,替换为与目标时刻的环境对应的目标点云数据;将图3对应实施例中的第一时刻的环境所对应的第一图像,替换为目标时刻的环境所对应的目标图像;将图3对应实施例中的3D检测框,替换为目标3D检测框;将图3对应实施例中的3D检测框的位置信息,替换为目标3D检测框的预测位置信息。

810、训练设备根据目标损失函数,对目标神经网络和第二神经网络进行训练。

本申请实施例中,训练设备在得到与目标时刻的环境对应的至少一个目标3D检测框的预测位置信息和每个目标3D检测框所对应的预测图像特征之后,可以根据目标3D检测框的预测位置信息、目标3D检测框的期望位置信息、每个目标3D检测框所对应的预测图像特征以及每个目标3D检测框所对应的期望图像特征,生成目标损失函数的函数值,并利用目标损失函数的函数值反向更新目标神经网络的权重参数,以完成对目标神经网络的一次训练。

其中,每个目标3D检测框的期望位置信息来源于目标神经网络的训练数据集。每个目标3D检测框所对应的期望图像特征可以为来源于目标神经网络的训练数据集,也可以为在对目标神经网络进行训练的过程中生成的。目标损失函数用于指示与目标时刻的环境对应的至少一个目标3D检测框的期望位置信息和预测位置信息之间的相似度,目标损失函数还用于指示每个目标3D检测框对应的期望图像特征和预测图像特征之间的相似度。进一步地,目标损失函数可以采用交叉熵损失函数、KL离散度损失函数或其他类型的损失函数等,此处不做穷举。

训练设备重复执行步骤801至810,以实现对目标神经网络的迭代训练,直至满足预设条件,得到训练后的目标神经网络。其中,训练后的目标神经网络用于生成与第一时刻的环境对应的至少一个3D检测框的位置信息,生成与每个3D检测框对应的第一图像特征,训练后的目标神经网络还用于生成与第二时刻的环境对应的至少一个历史3D检测框的位置信息,生成与每个历史3D检测框对应的第二图像特征,第二时刻为第一时刻的上一时刻,至少一个3D检测框的位置信息、第一图像特征、至少一个历史3D检测框的位置信息和第二图像特征用于确定至少一个3D检测框和至少一个历史3D检测框之间的匹配关系。

本申请实施例中,不仅根据与当前时刻(也即第一时刻)的环境对应的第一点云数据,生成与当前时刻对应的至少一个3D检测框的位置信息,还根据与当前时刻环境对应的图像,获取到与每个3D检测框对应的第一图像特征,并根据每个3D检测框的位置信息、第一图像特征、与上一时刻(也即第二时刻)的环境对应的历史3D检测框的位置信息和每个历史3D检测框所对应的第二图像特征,确定至少一个3D检测框和至少一个历史3D检测框之间的匹配关系,也即同时利用与环境对应的点云数据和图像来确定不同时刻的环境中物体的轨迹,由于每个3D检测框所对应的图像特征中携带了丰富的表观特征,包括与3D检测框对应的纹理信息、色彩信息或其他类型的表观特征等,利用更丰富的信息来确定物体的轨迹,有利于提高最终得到的物体轨迹的精度。

为更直观地理解本申请实施例所带来的有益效果,以下结合表1中的试验数据进行说明,如下表1中以利用位置信息进行匹配,利用图像特征进行辅助调整为例。

表1

其中,AMOTA为对最后得到的目标匹配信息进行综合评价的一个指标,综合考虑了目标匹配信息的正确率、目标匹配信息的遗漏概率和环境中物体轨迹的数量等因素,该指标的数值越大代表最后得到的目标匹配信息的整体质量越好。表1中“既不筛选也不重匹配”这一行代表仅利用3D检测框的位置信息生成目标匹配信息,“仅筛选不重匹配”这一行代表利用3D检测框的位置信息生成目标匹配信息后,利用3D检测框所对应的图像特征进行筛选,“仅重匹配不筛选”这一行代表利用3D检测框的位置信息生成目标匹配信息后,利用3D检测框所对应的图像特征进行重新匹配,“既筛选也重匹配”这一行代表利用3D检测框的位置信息生成目标匹配信息后,利用3D检测框所对应的图像特征进行筛选,并了利用3D检测框所对应的图像特征进行重新匹配。通过上述数据可知,“仅筛选不重匹配”、“仅重匹配不筛选”和“既筛选也重匹配”这三种实现方案得到的目标匹配信息的整体性能均优于“既不筛选也不重匹配”这一实现方案。

在图1至图8所对应的实施例的基础上,为了更好的实施本申请实施例的上述方案,下面还提供用于实施上述方案的相关设备。具体参阅图9,图9为本申请实施例提供的环境数据的处理装置的一种结构示意图,环境数据的处理装置900包括:获取模块901,用于获取与第一时刻的环境对应的第一点云数据,并获取与第一时刻的环境对应的第一图像;生成模块902,用于根据第一点云数据,生成与第一时刻的环境对应的至少一个三维3D检测框的位置信息,一个3D检测框的位置信息指示第一时刻的环境中一个物体的位置;获取模块901,还用于根据第一图像,获取与每个3D检测框对应的第一图像特征;获取模块901,还用于获取与第二点云数据对应的至少一个历史3D检测框的位置信息,并获取与每个历史3D检测框对应的第二图像特征,第二点云数据与第二时刻的环境对应,第二时刻为第一时刻的上一时刻,一个历史3D检测框的位置信息指示一个物体在第二时刻的环境中的位置,第二图像特征为基于与第二时刻的环境对应的第二图像得到的;匹配模块903,用于根据至少一个3D检测框的位置信息、第一图像特征、至少一个历史3D检测框的位置信息和第二图像特征,确定至少一个目标匹配关系,一个目标匹配关系指示一个第一3D检测框和一个第一历史3D检测框之间的匹配关系,第一3D检测框包括于至少一个3D检测框,第一历史3D检测框包括于至少一个历史3D检测框。

在一种可能的设计中,第一点云数据中包括多个第一点的三维空间坐标;获取模块901,还用于根据每个第一点的三维空间坐标,将每个第一点投影至与第一图像对应的图像坐标系,以获取与多个第一点对应的多个像素点,像素点位于第一图像中;获取模块901,还用于根据第一图像的特征信息,获取与第一点对应的第三图像特征;生成模块902,具体用于根据与多个第一点对应的多个第三图像特征和第一点云数据,生成与第一时刻的环境对应的至少一个3D检测框的位置信息。

在一种可能的设计中,请参阅图10,图10为本申请实施例提供的环境数据的处理装置的一种结构示意图,生成模块902,包括:特征提取子模块9021,用于通过特征提取网络对第一点云数据进行特征提取,以得到第一特征信息:特征提取子模块9021,还用于通过特征提取网络对与所有第一点对应的多个第三图像特征进行特征提取,以得到第二特征信息;融合子模块9022,用于将第二特征信息与第一特征信息进行融合,以得到更新后的第一特征信息;特征处理子模块9023,用于通过特征处理网络对更新后的第一特征信息进行特征处理,以生成至少一个3D检测框的位置信息。

在一种可能的设计中,请参阅图10,环境数据的处理装置900还包括:特征提取模块904,用于通过特征提取网络对第二特征信息进行特征提取,以得到第四图像特征;获取模块901,具体用于根据每个3D检测框的位置信息,从第四图像特征中获取与每个3D检测框对应的第一图像特征。

在一种可能的设计中,请参阅图10,匹配模块903,包括:生成子模块9031,用于根据每个3D检测框的位置信息和每个历史3D检测框的位置信息,生成P个目标匹配信息;生成子模块9031,还用于根据P个目标匹配信息、与第一3D检测框对应的第一图像特征和与第一历史3D检测框对应的第二图像特征,生成第一相似度信息,第一相似度信息指示第一3D检测框和第一历史3D检测框之间的相似度;筛选子模块9032,用于根据第一相似度信息,对P个目标匹配信息进行筛选,以得到Q个目标匹配信息,Q为小于或等于P的整数。

在一种可能的设计中,请参阅图10,匹配模块903,包括:生成子模块9031,用于根据与每个3D检测框对应的第一图像特征和与每个历史3D检测框对应的第二图像特征,生成S个目标匹配信息;生成子模块9031,还用于根据S个目标匹配信息、与第一3D检测框对应的位置信息和与第一历史3D检测框对应的位置信息,生成第一距离信息,第一距离信息指示第一3D检测框和第一历史3D检测框之间的距离,筛选子模块9032,用于根据第一距离信息,对S个目标匹配信息进行筛选,以得到R个目标匹配信息,R为小于或等于S的整数。

在一种可能的设计中,请参阅图10,匹配模块903,包括:生成子模块9031,用于根据每个3D检测框的位置信息和每个历史3D检测框的位置信息,生成P个目标匹配信息;生成子模块9031,还用于根据与第二3D检测框对应的第一图像特征和与第二历史3D检测框对应的第二图像特征,生成X个目标匹配信息,第二3D检测框为至少一个3D检测框中除第一3D检测框之外的3D检测框,第二历史3D检测框为至少一个历史3D检测框中除第一历史3D检测框之外的历史3D检测框。

在一种可能的设计中,请参阅图10,匹配模块903,包括:生成子模块9031,用于根据与每个3D检测框对应的第一图像特征和与每个历史3D检测框对应的第二图像特征,生成S个目标匹配信息;生成子模块9031,还用于根据与第二3D检测框对应的位置信息和与第二历史3D检测框对应的位置信息,生成Y个目标匹配信息,第二3D检测框为至少一个3D检测框中除第一3D检测框之外的3D检测框,第二历史3D检测框为至少一个历史3D检测框中除第一历史3D检测框之外的历史3D检测框。

需要说明的是,环境数据的处理装置900中各模块/单元之间的信息交互、执行过程等内容,与本申请中图3至图7对应的各个方法实施例基于同一构思,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。

本申请实施例还提供一种神经网络的训练装置,请参阅图11,图11为本申请实施例提供的神经网络的训练装置的一种结构示意图,神经网络的训练装置1100包括:获取模块1101,用于获取与目标时刻的环境对应的目标点云数据,并获取与目标时刻的环境对应的目标图像;生成模块1102,用于根据目标点云数据,通过目标神经网络生成与目标时刻的环境对应的至少一个目标三维3D检测框的预测位置信息,一个目标3D检测框的位置信息指示目标时刻的环境中一个物体的位置;获取模块1101,还用于根据目标图像,通过目标神经网络获取与每个目标3D检测框对应的预测图像特征;训练模块1103,用于根据目标损失函数,对目标神经网络进行训练,直至满足预设条件,得到训练后的目标神经网络,目标损失函数用于指示与目标时刻的环境对应的至少一个目标3D检测框的期望位置信息和预测位置信息之间的相似度,目标损失函数还用于指示每个目标3D检测框对应的期望图像特征和预测图像特征之间的相似度。其中,训练后的目标神经网络用于生成与第一时刻的环境对应的至少一个3D检测框的位置信息,生成与每个3D检测框对应的第一图像特征,训练后的目标神经网络还用于生成与第二时刻的环境对应的至少一个历史3D检测框的位置信息,生成与每个历史3D检测框对应的第二图像特征,第二时刻为第一时刻的上一时刻,至少一个3D检测框的位置信息、第一图像特征、至少一个历史3D检测框的位置信息和第二图像特征用于确定至少一个3D检测框和至少一个历史3D检测框之间的匹配关系。

在一种可能的设计中,目标点云数据中包括多个第二点的三维空间坐标;获取模块1101,还用于根据每个第二点的三维空间坐标,将每个第二点投影至与目标图像对应的图像坐标系,以获取与多个第二点对应的多个像素点,像素点位于目标图像中;获取模块1101,还用于根据目标图像的特征信息,获取与第二点对应的第三图像特征;生成模块1102,具体用于根据与多个第二点对应的多个第三图像特征和目标点云数据,生成与目标时刻的环境对应的至少一个目标3D检测框的位置信息。

需要说明的是,神经网络的训练装置1100中各模块/单元之间的信息交互、执行过程等内容,与本申请中图8对应的各个方法实施例基于同一构思,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。

接下来介绍本申请实施例提供的一种执行设备,请参阅图12,图12为本申请实施例提供的执行设备的一种结构示意图,执行设备1200具体可以表现为自动驾驶车辆、手机、平板、笔记本电脑、台式电脑、监控数据处理设备等,此处不做限定。其中,执行设备1200上可以部署有图9或图10对应实施例中所描述的环境数据的处理装置900,用于实现图3至图7对应实施例中执行设备的功能。具体的,执行设备1200包括:接收器1201、发射器1202、处理器1203和存储器1204(其中执行设备1200中的处理器1203的数量可以一个或多个,图12中以一个处理器为例),其中,处理器1203可以包括应用处理器12031和通信处理器12032。在本申请的一些实施例中,接收器1201、发射器1202、处理器1203和存储器1204可通过总线或其它方式连接。

存储器1204可以包括只读存储器和随机存取存储器,并向处理器1203提供指令和数据。存储器1204的一部分还可以包括非易失性随机存取存储器(non-volatile randomaccess memory,NVRAM)。存储器1204存储有处理器和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。

处理器1203控制执行设备的操作。具体的应用中,执行设备的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都称为总线系统。

上述本申请实施例揭示的方法可以应用于处理器1203中,或者由处理器1203实现。处理器1203可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1203中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1203可以是通用处理器、数字信号处理器(digital signal processing,DSP)、微处理器或微控制器,还可进一步包括专用集成电路(application specific integratedcircuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。该处理器1203可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1204,处理器1203读取存储器1204中的信息,结合其硬件完成上述方法的步骤。

接收器1201可用于接收输入的数字或字符信息,以及产生与执行设备的相关设置以及功能控制有关的信号输入。发射器1202可用于通过第一接口输出数字或字符信息;发射器1202还可用于通过第一接口向磁盘组发送指令,以修改磁盘组中的数据;发射器1202还可以包括显示屏等显示设备。

本申请实施例中,处理器1203,用于执行图3至图7对应实施例中的执行设备执行的环境数据的处理方法。处理器1203中的应用处理器12031执行上述各个步骤的具体方式,与本申请中图3至图7对应的各个方法实施例基于同一构思,其带来的技术效果与本申请中图3至图7对应的各个方法实施例相同,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。

请参阅图13,图13为本申请实施例提供的执行设备的一种结构示意图,当执行设备1200具体表现为自动驾驶车辆时,执行设备1200配置为完全或部分地自动驾驶模式,例如,执行设备1200可以在处于自动驾驶模式中的同时控制自身,并且可通过人为操作来确定车辆及其周边环境的当前状态,确定周边环境中的至少一个其他车辆的可能行为,并确定其他车辆执行可能行为的可能性相对应的置信水平,基于所确定的信息来控制执行设备1200。在执行设备1200处于自动驾驶模式中时,也可以将执行设备1200置为在没有和人交互的情况下操作。

执行设备1200可包括各种子系统,例如行进系统102、传感器系统104、控制系统106、一个或多个外围设备108以及电源110、计算机系统112和用户接口116。可选地,执行设备1200可包括更多或更少的子系统,并且每个子系统可包括多个部件。另外,执行设备1200的每个子系统和部件可以通过有线或者无线互连。

行进系统102可包括为执行设备1200提供动力运动的组件。在一个实施例中,行进系统102可包括引擎118、能量源119、传动装置120和车轮/轮胎121。

其中,引擎118可以是内燃引擎、电动机、空气压缩引擎或其他类型的引擎组合,例如,汽油发动机和电动机组成的混动引擎,内燃引擎和空气压缩引擎组成的混动引擎。引擎118将能量源119转换成机械能量。能量源119的示例包括汽油、柴油、其他基于石油的燃料、丙烷、其他基于压缩气体的燃料、乙醇、太阳能电池板、电池和其他电力来源。能量源119也可以为执行设备1200的其他系统提供能量。传动装置120可以将来自引擎118的机械动力传送到车轮121。传动装置120可包括变速箱、差速器和驱动轴。在一个实施例中,传动装置120还可以包括其他器件,比如离合器。其中,驱动轴可包括可耦合到一个或多个车轮121的一个或多个轴。

传感器系统104可包括感测关于执行设备1200周边的环境的信息的若干个传感器,用于获取各个时刻的环境所对应的点云数据,以及各个时刻的环境所对应的图像。例如,传感器系统104可包括定位系统122(定位系统可以是全球定位GPS系统,也可以是北斗系统或者其他定位系统)、惯性测量单元(inertial measurement unit,IMU)124、雷达126、激光测距仪128以及相机130。传感器系统104还可包括被监视执行设备1200的内部系统的传感器(例如,车内空气质量监测器、燃油量表、机油温度表等)。来自这些传感器中的一个或多个的传感数据可用于检测对象及其相应特性(位置、形状、方向、速度等)。这种检测和识别是自主执行设备1200的安全操作的关键功能。

其中,定位系统122可用于估计执行设备1200的地理位置。IMU 124用于基于惯性加速度来感知执行设备1200的位置和朝向变化。在一个实施例中,IMU 124可以是加速度计和陀螺仪的组合。雷达126可利用无线电信号来感知执行设备1200的周边环境内的物体,具体可以表现为毫米波雷达或激光雷达。在一些实施例中,除了感知物体以外,雷达126还可用于感知物体的速度和/或前进方向。激光测距仪128可利用激光来感知执行设备1200所位于的环境中的物体。在一些实施例中,激光测距仪128可包括一个或多个激光源、激光扫描器以及一个或多个检测器,以及其他系统组件。相机130可用于捕捉执行设备1200的周边环境的多个图像。相机130可以是静态相机或视频相机。

控制系统106为控制执行设备1200及其组件的操作。控制系统106可包括各种部件,其中包括转向系统132、油门134、制动单元136、计算机视觉系统140、线路控制系统142以及障碍避免系统144。

其中,转向系统132可操作来调整执行设备1200的前进方向。例如在一个实施例中可以为方向盘系统。油门134用于控制引擎118的操作速度并进而控制执行设备1200的速度。制动单元136用于控制执行设备1200减速。制动单元136可使用摩擦力来减慢车轮121。在其他实施例中,制动单元136可将车轮121的动能转换为电流。制动单元136也可采取其他形式来减慢车轮121转速从而控制执行设备1200的速度。计算机视觉系统140可以操作来处理和分析由相机130捕捉的图像以便识别执行设备1200周边环境中的物体和/或特征。所述物体和/或特征可包括交通信号、道路边界和障碍体。计算机视觉系统140可使用物体识别算法、运动中恢复结构(Structure from Motion,SFM)算法、视频跟踪和其他计算机视觉技术。在一些实施例中,计算机视觉系统140可以用于为环境绘制地图、跟踪物体、估计物体的速度等等。线路控制系统142用于确定执行设备1200的行驶路线以及行驶速度。在一些实施例中,线路控制系统142可以包括横向规划模块1421和纵向规划模块1422,横向规划模块1421和纵向规划模块1422分别用于结合来自障碍避免系统144、GPS 122和一个或多个预定地图的数据为执行设备1200确定行驶路线和行驶速度。障碍避免系统144用于识别、评估和避免或者以其他方式越过执行设备1200的环境中的障碍体,前述障碍体具体可以表现为实际障碍体和可能与执行设备1200发生碰撞的虚拟移动体。在一个实例中,控制系统106可以增加或替换地包括除了所示出和描述的那些以外的组件。或者也可以减少一部分上述示出的组件。

执行设备1200通过外围设备108与外部传感器、其他车辆、其他计算机系统或用户之间进行交互。外围设备108可包括无线通信系统146、车载电脑148、麦克风150和/或扬声器152。在一些实施例中,外围设备108为执行设备1200的用户提供与用户接口116交互的手段。例如,车载电脑148可向执行设备1200的用户提供信息。用户接口116还可操作车载电脑148来接收用户的输入。车载电脑148可以通过触摸屏进行操作。在其他情况中,外围设备108可提供用于执行设备1200与位于车内的其它设备通信的手段。例如,麦克风150可从执行设备1200的用户接收音频(例如,语音命令或其他音频输入)。类似地,扬声器152可向执行设备1200的用户输出音频。无线通信系统146可以包括图12中示出的接收器1201和发射器1202。

电源110可向执行设备1200的各种组件提供电力。在一个实施例中,电源110可以为可再充电锂离子或铅酸电池。这种电池的一个或多个电池组可被配置为电源为执行设备1200的各种组件提供电力。在一些实施例中,电源110和能量源119可一起实现,例如一些全电动车中那样。

执行设备1200的部分或所有功能受计算机系统112控制。计算机系统112可包括至少一个处理器1203和存储器1204,对于处理器1203和存储器1204的功能的描述可参阅上述图12中的描述,此处不再赘述。

计算机系统112可基于从各种子系统(例如,行进系统102、传感器系统104和控制系统106)以及从用户接口116接收的输入来控制执行设备1200的功能。例如,计算机系统112可利用来自控制系统106的输入以便控制转向系统132来避免由传感器系统104和障碍避免系统144检测到的障碍体。在一些实施例中,计算机系统112可操作来对执行设备1200及其子系统的许多方面提供控制。

可选地,上述这些组件中的一个或多个可与执行设备1200分开安装或关联。例如,存储器1204可以部分或完全地与执行设备1200分开存在。上述组件可以按有线和/或无线方式来通信地耦合在一起。

可选地,上述组件只是一个示例,实际应用中,上述各个模块中的组件有可能根据实际需要增添或者删除,图13不应理解为对本申请实施例的限制。在道路行进的自动驾驶车辆,如上面的执行设备1200,可以识别其周围环境内的物体以确定对当前速度的调整。所述物体可以是其它车辆、交通控制设备、或者其它类型的物体。在一些示例中,可以独立地考虑每个识别的物体,并且基于物体的各自的特性,诸如它的当前速度、加速度、与车辆的间距等,可以用来确定自动驾驶车辆所要调整的速度。

可选地,执行设备1200或者与执行设备1200相关联的计算设备如图13的计算机系统112、计算机视觉系统140、存储器1204可以基于所识别的物体的特性和周围环境的状态(例如,交通、雨、道路上的冰、等等)来预测所识别的物体的行为。可选地,每一个所识别的物体都依赖于彼此的行为,因此还可以将所识别的所有物体全部一起考虑来预测单个识别的物体的行为。执行设备1200能够基于预测的所识别的物体的行为来调整它的速度。换句话说,执行设备1200能够基于所预测的物体的行为来确定车辆将需要调整到(例如,加速、减速、或者停止)什么稳定状态。在这个过程中,也可以考虑其它因素来确定执行设备1200的速度,诸如,执行设备1200在行驶的道路中的横向位置、道路的曲率、静态和动态物体的接近度等等。除了提供调整自动驾驶车辆的速度的指令之外,计算设备还可以提供修改执行设备1200的转向角的指令,以使得执行设备1200遵循给定的轨迹和/或维持与执行设备1200附近的物体(例如,道路上的相邻车道中的轿车)的安全横向和纵向距离。

上述执行设备1200可以为轿车、卡车、摩托车、公共汽车、船、飞机、直升飞机、割草机、娱乐车、游乐场车辆、施工设备、电车、高尔夫球车、火车、和手推车等,本申请实施例不做特别的限定。

本申请实施例还提供了一种训练设备,请参阅图14,图14是本申请实施例提供的训练设备一种结构示意图,训练设备1400上可以部署有图11对应实施例中所描述的神经网络的训练装置1100,用于实现图8对应实施例中训练设备的功能,具体的,训练设备1400由一个或多个服务器实现,训练设备1400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)1422(例如,一个或一个以上处理器)和存储器1432,一个或一个以上存储应用程序1442或数据1444的存储介质1430(例如一个或一个以上海量存储设备)。其中,存储器1432和存储介质1430可以是短暂存储或持久存储。存储在存储介质1430的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对训练设备中的一系列指令操作。更进一步地,中央处理器1422可以设置为与存储介质1430通信,在训练设备1400上执行存储介质1430中的一系列指令操作。

训练设备1400还可以包括一个或一个以上电源1426,一个或一个以上有线或无线网络接口1450,一个或一个以上输入输出接口1458,和/或,一个或一个以上操作系统1441,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。

本申请实施例中,中央处理器1422,用于执行图8对应实施例中的训练设备执行的环境数据的处理方法。中央处理器1422执行上述各个步骤的具体方式,与本申请中图8对应的各个方法实施例基于同一构思,其带来的技术效果与本申请中图8对应的各个方法实施例相同,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。

本申请实施例中还提供一种计算机程序产品,当其在计算机上运行时,使得计算机执行如前述图3至图7所示实施例描述的方法中执行设备所执行的步骤,或者,使得计算机执行如前述图8所示实施例描述的方法中训练设备所执行的步骤。

本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有用于进行信号处理的程序,当其在计算机上运行时,使得计算机执行如前述图3至图7所示实施例描述的方法中执行设备所执行的步骤,或者,使得计算机执行如前述图8所示实施例描述的方法中训练设备所执行的步骤。

本申请实施例提供的环境数据的处理装置、神经网络的训练装置、执行设备以及训练设备具体可以为芯片,芯片包括:处理单元和通信单元,所述处理单元例如可以是处理器,所述通信单元例如可以是输入/输出接口、管脚或电路等。该处理单元可执行存储单元存储的计算机执行指令,以使芯片执行上述图3至图7所示实施例描述的环境数据的处理方法,或者,以使芯片执行上述图8所示实施例描述的神经网络的训练方法。可选地,所述存储单元为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是所述无线接入设备端内的位于所述芯片外部的存储单元,如只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)等。

具体的,请参阅图15,图15为本申请实施例提供的芯片的一种结构示意图,所述芯片可以表现为神经网络处理器NPU 150,NPU 150作为协处理器挂载到主CPU(Host CPU)上,由Host CPU分配任务。NPU的核心部分为运算电路1503,通过控制器1504控制运算电路1503提取存储器中的矩阵数据并进行乘法运算。

在一些实现中,运算电路1503内部包括多个处理单元(Process Engine,PE)。在一些实现中,运算电路1503是二维脉动阵列。运算电路1503还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路1503是通用的矩阵处理器。

举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C。运算电路从权重存储器1502中取矩阵B相应的数据,并缓存在运算电路中每一个PE上。运算电路从输入存储器1501中取矩阵A数据与矩阵B进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器(accumulator)1508中。

统一存储器1506用于存放输入数据以及输出数据。权重数据直接通过存储单元访问控制器(Direct Memory Access Controller,DMAC)1505,DMAC被搬运到权重存储器1502中。输入数据也通过DMAC被搬运到统一存储器1506中。

BIU为Bus Interface Unit即,总线接口单元1510,用于AXI总线与DMAC和取指存储器(Instruction Fetch Buffer,IFB)1509的交互。

总线接口单元1510(Bus Interface Unit,简称BIU),用于取指存储器1509从外部存储器获取指令,还用于存储单元访问控制器1505从外部存储器获取输入矩阵A或者权重矩阵B的原数据。

DMAC主要用于将外部存储器DDR中的输入数据搬运到统一存储器1506或将权重数据搬运到权重存储器1502中或将输入数据数据搬运到输入存储器1501中。

向量计算单元1507包括多个运算处理单元,在需要的情况下,对运算电路的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。主要用于神经网络中非卷积/全连接层网络计算,如Batch Normalization(批归一化),像素级求和,对特征平面进行上采样等。

在一些实现中,向量计算单元1507能将经处理的输出的向量存储到统一存储器1506。例如,向量计算单元1507可以将线性函数和/或非线性函数应用到运算电路1503的输出,例如对卷积层提取的特征平面进行线性插值,再例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元1507生成归一化的值、像素级求和的值,或二者均有。在一些实现中,处理过的输出的向量能够用作到运算电路1503的激活输入,例如用于在神经网络中的后续层中的使用。

控制器1504连接的取指存储器(instruction fetch buffer)1509,用于存储控制器1504使用的指令;

统一存储器1506,输入存储器1501,权重存储器1502以及取指存储器1509均为On-Chip存储器。外部存储器私有于该NPU硬件架构。

其中,图3至图7中示出的各个特征提取网络以及特征处理网络中各层的运算,以及图8示出的目标神经网络中各层的运算可以由运算电路1503或向量计算单元1507执行。

其中,上述任一处提到的处理器,可以是一个通用中央处理器,微处理器,ASIC,或一个或多个用于控制上述第一方面方法的程序执行的集成电路。

另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、ROM、RAM、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,训练设备,或者网络设备等)执行本申请各个实施例所述的方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。

所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、训练设备或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、训练设备或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的训练设备、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。

相关技术
  • 一种用于边界线提取的神经网络模型训练方法及相关设备
  • 一种神经网络的训练方法以及相关设备
技术分类

06120113021874