发明内容
基于此,有必要针对上述技术问题,提供一种图像标注方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种图像标注方法。所述方法包括:
获取标注数据集,所述标注数据集包括预设帧数的点云数据;
将预设帧数的所述点云数据输入至检测框生成模型;
通过所述检测框生成模型对每一帧所述点云数据进行特征处理,生成所述点云数据中目标标注对象的特征增强序列,并对所述特征增强序列进行属性回归处理,得到每一帧点云数据中所述目标标注对象的目标检测框;
对所述预设帧数的所述目标检测框进行拟合估计,得到与图像数据帧数相同的目标检测框,并将所述目标检测框投影至与每一帧所述点云数据对应的所述图像数据中,确定目标检测标注结果。
在其中一个实施例中,所述通过所述检测框生成模型对每一帧所述点云数据进行特征处理,生成所述点云数据中目标标注对象的特征增强序列,包括:
通过所述检测框生成模型中的卷积神经网络,对每一帧所述点云数据进行特征提取,得到连续帧所述点云数据中目标标注对象对应的时序特征序列;
对每一所述目标标注对象的时序特征序列进行特征增强,得到目标标注对象连续帧点云数据对应的特征增强序列。
在其中一个实施例中,所述对所述特征增强序列进行属性回归处理,得到每一帧点云数据中所述目标标注对象的目标检测框,包括:
通过所述检测框生成模型中的检测头模块,对所述目标标注对象的所述特征增强序列进行回归预测,生成每一帧点云数据中目标标注对象的目标检测框。
在其中一个实施例中,所述通过所述检测框生成模型中的卷积神经网络,对每一帧所述点云数据进行特征提取,每一帧所述点云数据中目标标注对象对应的时序特征序列,包括:
通过卷积神经网络中的动态体素化算法,对每一帧点云数据进行离散化和特征提取处理,得到每一帧点云数据的体素化矩阵;
根据双边线性插值算法,在每一帧的所述体素化矩阵中确定目标标注对象对应的标注关键点,并基于帧与帧间的时序性关系,生成所述目标标注对象的时序特征序列;
所述对每一所述目标标注对象的时序特征序列进行特征增强,得到目标标注对象连续帧点云数据对应的特征增强序列,包括:
根据预设的多头注意力机制模块,对每一所述目标标注对象的时序特征序列进行特征增强,得到所述目标标注对象对应的特征增强序列。
在其中一个实施例中,所述对所述预设帧数的所述目标检测框进行拟合估计,得到与图像数据帧数相同的目标检测框,包括:
根据扩展卡尔曼滤波器,对所述目标标注对象预设帧数的目标检测框进行运动估计拟合,并通过插值算法确定插值时间戳对应的目标检测框;
将所述插值时间戳对应的目标检测框添加至所述预设帧数的目标检测框,得到与所述图像数据帧数相同的目标检测框。
在其中一个实施例中,所述根据扩展卡尔曼滤波器,对所述目标标注对象预设帧数的目标检测框进行运动估计拟合,并通过插值算法确定插值时间戳对应的目标检测框,包括:
根据扩展卡尔曼滤波器,对所述目标标注对象预设帧数的目标检测框数据集进行运动轨迹拟合计算,确定连续帧点云数据对应的所述目标检测框数据集对应的运动轨迹曲线;
对所述运动轨迹曲线进行插值处理,确定插值时间戳下对应的目标检测框。
第二方面,本申请还提供了一种图像标注装置。所述装置包括:
获取模块,用于获取标注数据集,所述标注数据集包括预设帧数的点云数据;
输入模块,用于将预设帧数的所述点云数据输入至检测框生成模型;
处理输出模块,用于通过所述检测框生成模型对每一帧所述点云数据进行特征处理,生成所述点云数据中目标标注对象的特征增强序列,对所述特征增强序列进行属性回归,得到所述目标标注对象对应每一帧点云数据的目标检测框;
确定模块,根据扩展卡尔曼滤波器对所述目标检测框进行拟合估计,得到与图像数据帧数相同的目标检测框,并将所述目标检测框投影至对应的每一帧所述图像数据中,确定目标检测标注结果。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取标注数据集,所述标注数据集包括预设帧数的点云数据;
将预设帧数的所述点云数据输入至检测框生成模型;
通过所述检测框生成模型对每一帧所述点云数据进行特征处理,生成所述点云数据中目标标注对象的特征增强序列,并对所述特征增强序列进行属性回归处理,得到每一帧点云数据中所述目标标注对象的目标检测框;
对所述预设帧数的所述目标检测框进行拟合估计,得到与图像数据帧数相同的目标检测框,并将所述目标检测框投影至与每一帧所述点云数据对应的所述图像数据中,确定目标检测标注结果。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取标注数据集,所述标注数据集包括预设帧数的点云数据;
将预设帧数的所述点云数据输入至检测框生成模型;
通过所述检测框生成模型对每一帧所述点云数据进行特征处理,生成所述点云数据中目标标注对象的特征增强序列,并对所述特征增强序列进行属性回归处理,得到每一帧点云数据中所述目标标注对象的目标检测框;
对所述预设帧数的所述目标检测框进行拟合估计,得到与图像数据帧数相同的目标检测框,并将所述目标检测框投影至与每一帧所述点云数据对应的所述图像数据中,确定目标检测标注结果。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取标注数据集,所述标注数据集包括预设帧数的点云数据;
将预设帧数的所述点云数据输入至检测框生成模型;
通过所述检测框生成模型对每一帧所述点云数据进行特征处理,生成所述点云数据中目标标注对象的特征增强序列,并对所述特征增强序列进行属性回归处理,得到每一帧点云数据中所述目标标注对象的目标检测框;
对所述预设帧数的所述目标检测框进行拟合估计,得到与图像数据帧数相同的目标检测框,并将所述目标检测框投影至与每一帧所述点云数据对应的所述图像数据中,确定目标检测标注结果。
上述图像标注方法、装置、计算机设备、存储介质和计算机程序产品,获取标注数据集,所述标注数据集包括预设帧数的点云数据;所述点云数据以参考图像数据为基准进行预先标定和时间同步;所述点云数据中包含目标标注对象的特征信息;将所述预设帧数的点云数据输入至检测框生成模型,通过所述检测框生成模型对每一帧点云数据进行特征信息处理,得到所述点云数据对应的预设帧数的目标检测框;根据扩展卡尔曼滤波器,对所述目标标注对象的预设帧数的目标检测框进行拟合计算,并通过插值算法确定插值时间戳对应的目标检测框,得到与所述参考图像数据帧数相同的目标检测框,将所述目标检测框投影到对应帧的图像数据中,确定所述目标检测标注结果;对所述目标检测标注结果进行调校,得到最终目标检测标注结果数据集。采用本方法,通过检测框生成模型实现图像目标检测框的自动生成,提高了图像标注效率。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种图像标注方法,本实施例以该方法应用于终端进行举例说明,可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
步骤102,获取标注数据集。
其中,标注数据集包括预设帧数的点云数据。
在实施中,计算机设备获取标注数据集,该标注数据集中包含由激光雷达设备采集的点云数据。该点云数据预先以对应的图像数据为参考进行分组标定和时间同步。
在一种实施方式中,通过激光雷达设备与摄像设备同时采集自动驾驶车辆行驶环境中的点云数据和图像数据。根据采集到的点云数据和图像数据的采集角度和时间戳信息,预先对点云数据进行分组标定和时间同步。具体的,激光雷达设备的采集范围为360度采集范围,而摄像设备(或称为相机设备)的采集范围为摄像头前方的扇形区域,因此,针对一个激光雷达设备可以匹配多个摄像设备进行数据采集。例如,本申请实施例中,在自动驾驶车辆上预先设置一个激光雷达设备和6个摄像设备,这6个摄像设备分别对应自动驾驶车辆的左前、前、右前、左后、后和右后这6个方向进行图像数据的采集。因此,将全方位采集的点云数据划分为6组,对应摄像设备的6个采集方向,分组标定每一组点云数据,即得到点云数据与对应角度的摄像设备采集的图像数据间的映射关系。
同时,由于激光雷达设备的采样频率与摄像设备的采样频率是不同的,激光雷达设备的采样频率小于摄像设备的采样频率。因此,在具备同一采集角度的分组标定的点云数据与图像数据中,基于点云数据与图像数据的时间戳信息,每一帧点云数据与图像数据进行时间同步和帧对齐,进而,得到分组标定和时间同步后的点云数据,将分组标定和时间同步后的点云数据作为标注数据集,其中,每一标注数据集中包含100-200连续帧的点云数据。
步骤104,将预设帧数的点云数据输入至检测框生成模型。
在实施中,计算机设备将预设帧数的点云数据输入至预先训练的检测框生成模型。其中,该检测框生成模型为深度神经网络模型。标注数据集中包括连续帧点云数据,则将连续的200帧点云数据输入至深度神经网络模型中。
步骤106,通过检测框生成模型对每一帧点云数据进行特征处理,生成点云数据中目标标注对象的特征增强序列,并对特征增强序列进行属性回归处理,得到每一帧点云数据中目标标注对象的目标检测框。
在实施中,计算机设备通过检测框生成模型中的深度神经网络算法对每一帧点云数据进行特征处理,生成点云数据中目标标注对象的特征增强序列,其中,特征增强序列包含每一帧点云数据中目标标注对象的特征属性信息,然后,计算机设备对特征增强序列进行属性回归处理,得到每一帧点云数据中目标标注对象的目标检测框。该目标检测框包含标注目标标注对象的多个标注关键点以及多个标注关键点间的连线(检测框边框)。
其中,检测框生成模型包括单帧点云检测器、特征存储池、多视角对齐模块和检测头模块四个组成部分,单帧点云检测器以连续帧点云数据作为输入,对每一帧点云数据进行特征处理,得到每一帧点云数据中目标标注对象的特征。特征存储池,用于存储每一帧点云数据中目标标注对象的特征,生成连续帧点云数据对应的目标标注对象的时序特征序列。多视角对齐模块(Cross-Attention Network),用于分析目标标注对象在连续帧点云数据中的相对位置变化,基于连续帧中点云数据包含的全部特征属性,对目标标注对象在任一帧点云数据中的特征进行增强处理,得到目标标注对象的特征增强序列。最后,检测头模块对目标标注对象的特征增强序列进行属性回归处理,得到每一帧点云数据中目标标注对象的目标检测框。
步骤108,对预设帧数的目标检测框进行拟合估计,得到与图像数据帧数相同的目标检测框,并将目标检测框投影至与每一帧点云数据对应的图像数据中,确定目标检测标注结果。
在实施中,由于摄像设备的采集频率大于激光雷达设备的采集频率,因此,在相同的采样时间内,点云数据的帧数要小于图像数据的帧数,在与图像数据进行对应的过程中便会存在缺失点云数据对应的某帧图像数据,因此,针对标注数据集中的点云数据的得到的目标检测框也不能完全对应每一帧图像数据,故计算机设备对标注数据集中预设数目的目标检测框进行运动估计拟合的运算,并插值补充目标时间戳(也称为缺失时间戳)下对应的目标检测框,从而,得到与图像数据帧数相同的目标检测框。进而,基于与图像数据帧数相同的目标检测框,结合时间戳的对应关系,将每一帧目标检测框对应投影到时间同步的图像数据中,确定该图像数据的目标检测标注结果。如图2所示,图2为将生成的3d目标检测框投影到图像数据中,得到标注了图像数据中目标标注对象的目标检测标注结果。
上述图像投影过程为:在得到3d(dimensional)目标检测框之后,将目标检测框对应的图像坐标系转换为对应的像素坐标系,从而实现对点云数据的目标检测框的投影。具体的线投影关系如下所示:
其中,X、Y和Z表示目标检测框对应的图像坐标系下的坐标数据,u和v对应为像素坐标系下的坐标数据,X、Y和Z。由于受到相机(摄像设备)的视角视锥的区域范围限制,并不是所有的坐标点(X,Y,Z)都可以投影到图像上,因此,在进行目标检测框投影之前,预先对每一帧目标检测框中的标注关键点进行筛选,其中的,筛选条件包括Z值为正数,且(X,Y,Z)要在摄像设备限定的视锥范围内。
可选的,将每一帧目标检测框投影至对应帧的图像数据中,实现对图像数据中目标标注对象的标注之后,对目标检测标注结果进行人工调校,通过标注工具对目标检测标注结果中目标标注对象与目标检测框的相对位置进行适应性调整,以进一步提高图像数据标注准确性。
可选的,在对目标检测标注结果进行人工调校之前,对每一帧目标检测框包含的各个标注关键点的连线边框进一步离散化,实现目标检测框的边框线上包含多个离散关键点,以使得到的图像数据中包含目标标注对象的点线式目标检测标注结果,进一步地,当目标检测框的边框上存在多个离散关键点时,在进行人工调校时,便于以边框线上的点作为调校参考,进行位置偏移。
可选的,将连续帧图像数据的目标检测标注结果进行打包处理,得到包含图像数据以及对应的目标检测框的数据包,计算机设备将该数据包发送至数据请求端,以使数据请求端可以基于该数据包中的数据,实现进一步的目标检测功能,例如,基于该数据包中的数据训练目标检测模型,进而,基于该训练好的目标检测模型实现对图像数据中目标对象的自动检测标注。另外,目标检测标注结果生成的数据包还可以用于实现目标对象追踪等,本申请实施例不做限定。
上述图像标注方法中,计算机设备获取标注数据集。然后,将预设帧数的点云数据输入至检测框生成模型,通过检测框生成模型对每一帧点云数据进行特征处理,生成点云数据中目标标注对象的特征增强序列。计算机设备对特征增强序列进行属性回归处理,得到每一帧点云数据中目标标注对象的目标检测框。然后,计算机设备对预设帧数的目标检测框进行拟合估计,得到与图像数据帧数相同的目标检测框,并将目标检测框投影至与每一帧点云数据对应的图像数据中,确定目标检测标注结果。采用本方法,通过预先训练的检测框生成模型,基于检测框生成模型中的多种深度神经网络算法,对点云数据进行特征处理,自动化生成点云数据中目标标注对象的目标检测框,并将目标检测框投影至对应的图像数据上,实现图像数据的准确标注,提高了图像标注效率。
在一个实施例中,如图3所示,步骤106的具体处理方法包括以下步骤:
步骤302,通过检测框生成模型中的卷积神经网络,对每一帧点云数据进行特征提取,得到连续帧点云数据中目标标注对象对应的时序特征序列。
其中,每一帧点云数据包含N个点,这N个点代表的采集范围为水平覆盖范围80米(半径),竖直方向6米的范围,每个点云数据中的数据点均携带有属性信息,该属性信息包括:空间坐标(xyz),反射率(intensity)和时间戳信息(timestamp)。
在实施中,检测框生成模型包括单帧点云检测器,计算机设备根据单帧点云检测器中的3d卷积神经网络,对每一帧点云数据携带的属性信息进行处理和特征提取,并针对点云数据中包含的全部的目标标注对象,分别确定每一目标标注对象在连续帧点云数据中对应的时序特征序列。
步骤304,对每一目标标注对象的时序特征序列进行特征增强,得到目标标注对象连续帧点云数据对应的特征增强序列。
在实施中,计算机设备解析时序特征序列中包含的目标标注对象的每一帧检测框特征属性随着时间产生的特征变化,并以时序特征序列中每一帧作为目标帧,分别以时序特征序列中其他帧包含的特征信息增强目标帧点云数据包含的目标标注对象的特征信息,从而实现对目标标注对象每一帧特征进行特征增强,然后,将目标标注对象特征增强后的每一帧数据对应的特征信息放到同一坐标系下,得到目标标注对象连续帧点云数据对应的特征增强序列。
具体的,如图4所示,将连续帧点云数据对应的目标标注对象的特征矩阵(即上述提取到的时序特征序列中包含的每一帧目标标注对象的特征信息,FS,其中s取值为{-n,…,-2,-1,1,2,…,n})以及待特征增强的目标帧(对应时间戳时刻t)的点云数据的特征矩阵(目标帧特征信息Ft),经过全连接层以及多视角对齐模块(处理顺序为图4中箭头方向)进行运算处理,最终输出由时序特征序列得到的针对目标标注对象的特征增强后的特征增强序列。
其中,图4中的Wv Wk Wq为三个全连接层,Fv Fk Fq为输入的特征矩阵(提取到的特征信息)各自通过全连接层之后的结果。MatMul表示矩阵相乘,SoftMax为归一化映射,Attention Matrix表示注意力矩阵。
如图5所示,图5中从左至右显示为汽车类型的目标标注对象,在连续帧点云数据中得到的特征信息,基于连续帧中多帧点云数据对目标帧点云数据进行的特征增强,可以得到每一帧点云数据对应的特征增强序列。
在一个实施例中,步骤106的具体处理过程包括如下步骤:
通过检测框生成模型中的检测头模块,对目标标注对象的特征增强序列进行回归预测,生成每一帧点云数据中目标标注对象的目标检测框。
在实施中,检测头模块用于对3d卷积神经网络输出的特征增强序列进行属性回归处理,即对每一目标标注对象对应的特征增强序列中每一帧点云数据进行回归预测,生成每一帧点云数据中目标标注对象的目标检测框。
在一个实施例中,如图6所示,步骤302的具体处理过程包括如下步骤:
步骤602,通过卷积神经网络中的动态体素化算法,对每一帧点云数据进行离散化和特征提取处理,得到每一帧点云数据的体素化矩阵。
在实施中,计算机设备通过3d卷积神经网络中的动态体素化算法,对每一帧点云数据进行离散化,通过卷积神经网络中的全连接层对点云数据中多维度特征信息进行提取,并通过第一俯视图模块进行视角体素化,然后,在基于3d卷积神经网络中的全连接层和池化层后,计算机设备输出每一帧点云数据中深度(第三维度)特征的体素化矩阵。
具体的,由于点云数据中的每个点均携带空间属性信息,因此,单帧点云检测器中的3d卷积神经网络对点云数据进行体素化,将点云数据在x-y平面投影到L*W*H三维网格中,由此划分出L*W*H个立方体,每一立方体的体积可以为0.1*0.1*0.1。其中,点云数据中包含的每个数据点均携带有4个维度的属性信息(x,y,z,i),其中,(x,y,z)代表三维坐标,i代表反射率。将点云数据进行离散化处理,使得划分出的每个立方体中均包含多个点云数据的点。然后,将其中的每个点的点云数据的第三维度属性信息(H高度维度)扩展到多个维度,并通过3d卷积神经网络中的backbone主干网络将第一维度和第二维度上的属性信息进行降维处理,缩小为一个映射关系矩阵。进而,计算机设备得到每一帧点云数据对应的体素化矩阵。
步骤604,根据双边线性插值算法,在每一帧的体素化矩阵中确定目标标注对象对应的标注关键点,并基于帧与帧间的时序性关系,生成目标标注对象的时序特征序列。
在实施中,计算机设备根据特征存储池中包含的双边线性插值算法,在每一帧点云数据对应的体素化矩阵中,提取出目标标注对象对应的标注关键点。如图7所示,图7为点云数据目标检测框的俯视图,其中目标标注对象的标注关键点可以包括目标标注对象的长、宽和高三个维度的顶点以及目标标注对象的中心点,基于目标标注对象的全部关键点即可以确定出该目标标注对象的(候选)目标检测框。
具体的,如图8所示,针对每一帧点云数据的体素矩阵,在目标标注对象的内部进行体素化,得到空间网格中的多个立方体,在多个立方体中平均选取预设数目个关键点,确定每个关键点的位置坐标,将关键点的位置坐标再反向映射到体素化矩阵中,通过双边线性插值处理,对每一立方体内包含的全部点的特征信息进行欠采样,提取每一立方体中包含的目标标注对象的特征,得到目标标注对象对应的关键点和第三维度(即高度特征H)特征,并将抽取到的标注关键点和第三维度特征信息存储在特征存储池中。图8中共有两个目标标注对象,每个目标标注对象的关键点有6个,都对应提取出一个特征向量,则6个关键点就对应6*C(C为维度总数目)的特征矩阵,然后,将每一目标标注对象的特征矩阵进行平均池化,转换为1*C的矩阵(即时序特征序列)。将连续帧中全部的目标对象的特征矩阵作为多视角对齐模块的输入。
可选的,若一帧点云数据中包含N个目标标注对象,则最终会有N*C个时序特征序列(特征矩阵)作为多视角对齐模块的输入,本申请对于每一帧点云数据中包含的目标标注对象的数目不做限定。
可选的,本实施例中,自动驾驶车辆在行驶过程中可能出现的目标障碍物类型可以但不限于有自行车、其他汽车、行人,这三种类型的目标障碍物即为点云数据中可能出现的目标标注对象,对应每一种类型的目标标注对象关键点数目不同,例如,自行车对应的关键点数目为16个,汽车的关键点数目为49个,行人的关键点数目为9个。
则步骤304的具体处理过程包括:
步骤606,根据预设的多头注意力机制模块,对每一目标标注对象的时序特征序列进行特征增强,得到目标标注对象对应的特征增强序列。
在实施中,计算机设备针对目标标注对象的类型不同,创建不同的多视角对齐模块,例如,目标标注对象有三种类型,预先创建三种类型的多视角视觉模块,通过三种不同类型的多视角视觉模块的遍历处理,确定目标标注对象的类型以及对目标标注对象的时序特征序列进行特征增强。具体的,将特征存储池中存储的每一目标标注对象的标注关键点和第三维度特征(即目标标注对象的时序特征序列)输入至对应的多视角对齐模块,然后,根据多视角对齐模块中的多头注意力机制模块(Cross-view Attention Module),对每一目标标注对象的时序特征序列进行特征增强,得到目标标注对象对应的特征增强序列。
本实施例中,通过检测框生成模型中包含的多种深度学习算法,对点云数据中包含的目标标注对象的特征信息进行特征提取,并基于提取得到的每一帧点云数据对应的特征,进行特征增强,得到生成特征增强序列,由于该特征增强序列中包含目标标注对象的多尺度特征信息,从而基于该特征增强序列自动化生成目标标注对象的检测框。
在一个实施例中,如图9所示,步骤106的具体处理过程包括:
步骤902,根据扩展卡尔曼滤波器,对目标标注对象预设帧数的目标检测框进行运动估计拟合,并通过插值算法确定插值时间戳对应的目标检测框。
在实施中,计算机设备根据扩展卡尔曼滤波器中稀疏线性代数的方法,对目标标注对象预设帧数的目标检测框进行运动估计拟合,并通过插值算法来预测相对于图像数据帧中缺失的目标检测框,即确定目标插值时间戳对应的目标检测框。该目标插值时间戳为图像数据集中未与点云数据建立帧与帧对应的图像帧的所处时间戳。
步骤904,将插值时间戳对应的目标检测框添加至预设帧数的目标检测框,得到与图像数据帧数相同的目标检测框。
在实施中,计算机设备将得到的插值时间戳下的目标检测框添加至原始预设帧数的目标检测框数据集中,即得到与图像数据帧数相同的目标检测框数据集。具体的,计算机设备根据每一帧目标检测框的时间戳信息,将插值得到的缺失时间戳(也即插值时间戳)下的目标检测框补全至原始目标检测框数据集中,得到与图像数据帧数相同的目标检测框,以用于对每一帧图像数据进行目标标注对象的标注。
在本实施例中,通过扩展卡尔曼滤波器,对原始预设帧数的目标检测框进行运动估计拟合,并在各原始目标检测框间进行插值处理,对应补全相对于图像数据帧数而存在的缺失目标检测框,提高目标检测框的平滑性,以及实现目标检测框对每一帧图像数据进行图像投影和标注的功能
在一个实施例中,如图10所示,步骤902的具体处理过程包括如下步骤:
步骤1002,根据扩展卡尔曼滤波器,对目标标注对象预设帧数的目标检测框数据集进行运动轨迹拟合计算,确定连续帧点云数据对应的目标检测框数据集对应的运动轨迹曲线。
在实施中,由于每一帧点云数据对应的目标检测框中包含目标标注对象的标注关键点,针对目标标注对象的每一标注关键点,计算机设备根据扩展卡尔曼滤波器中的最小二乘运动估计拟合方法,确定目标标注对象在(原始预设帧数)连续帧的点云数据中该标注关键点随时间变化产生的运动轨迹,进而得到目标检测框随连续帧点云数据对应的时间变化的运动轨迹曲线。
步骤1004,对运动轨迹曲线进行插值处理,确定插值时间戳下对应的目标检测框。
在实施中,计算机设备基于得到的运动轨迹曲线,进行插值处理,基于原始点云数据中相邻帧点云数据对应的目标检测框的各标注关键点进行插值处理,确定在插值时间戳下对应的目标检测框。具体的,如图11所示,根据两两相邻帧的目标检测框中每一标注关键点,确定相邻帧间插值时刻的标注关键点,从而得到插值时刻对应的目标检测框。
在本实施例中,通过扩展卡尔曼滤波器,对原始预设帧数的目标检测框进行运动估计拟合,并在各原始目标检测框间进行插值处理,对应补全相对于图像数据帧数而存在的缺失目标检测框,提高目标检测框的平滑性。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的图像标注方法的图像标注装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个图像标注装置实施例中的具体限定可以参见上文中对于图像标注方法的限定,在此不再赘述。
在一个实施例中,如图12所示,提供了一种图像标注装置1200,包括:获取模块1210、输入模块1220、处理输出模块1230和确定模块1240,其中:
获取模块1210,用于获取标注数据集,标注数据集包括预设帧数的点云数据;
输入模块1220,用于将预设帧数的点云数据输入至检测框生成模型;
处理输出模块1230,用于通过检测框生成模型对每一帧点云数据进行特征处理,生成点云数据中目标标注对象的特征增强序列,对特征增强序列进行属性回归,得到目标标注对象对应每一帧点云数据的目标检测框;
确定模块1240,根据扩展卡尔曼滤波器对目标检测框进行拟合估计,得到与图像数据帧数相同的目标检测框,并将目标检测框投影至对应的每一帧图像数据中,确定目标检测标注结果。
采用上述图像标注装置1200,通过检测框生成模型实现图像目标检测框的自动生成,提高了图像标注效率。
在一个实施例中,处理输出模块1230具体用于通过检测框生成模型中的卷积神经网络,对每一帧点云数据进行特征提取,得到连续帧点云数据中目标标注对象对应的时序特征序列;
对每一目标标注对象的时序特征序列进行特征增强,得到目标标注对象连续帧点云数据对应的特征增强序列。
在一个实施例中,处理输出模块1230具体用于通过检测框生成模型中的检测头模块,对目标标注对象的特征增强序列进行回归预测,生成每一帧点云数据中目标标注对象的目标检测框。
在一个实施例中,处理输出模块1230具体用于通过卷积神经网络中的动态体素化算法,对每一帧点云数据进行离散化和特征提取处理,得到每一帧点云数据的体素化矩阵;
根据双边线性插值算法,在每一帧的体素化矩阵中确定目标标注对象对应的标注关键点,并基于帧与帧间的时序性关系,生成目标标注对象的时序特征序列;
根据预设的多头注意力机制模块,对每一目标标注对象的时序特征序列进行特征增强,得到目标标注对象对应的特征增强序列。
在一个实施例中,确定模块1240,具体用于根据扩展卡尔曼滤波器,对目标标注对象预设帧数的目标检测框进行运动估计拟合,并通过插值算法确定插值时间戳对应的目标检测框;
将插值时间戳对应的目标检测框添加至预设帧数的目标检测框,得到与图像数据帧数相同的目标检测框。
在一个实施例中,确定模块1240,具体用于根据扩展卡尔曼滤波器,对目标标注对象预设帧数的目标检测框数据集进行运动轨迹拟合计算,确定连续帧点云数据对应的目标检测框数据集对应的运动轨迹曲线;
对运动轨迹曲线进行插值处理,确定插值时间戳下对应的目标检测框。
上述图像标注装置1200中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图13所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种图像标注方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取标注数据集,标注数据集包括预设帧数的点云数据;
将预设帧数的点云数据输入至检测框生成模型;
通过检测框生成模型对每一帧点云数据进行特征处理,生成点云数据中目标标注对象的特征增强序列,并对特征增强序列进行属性回归处理,得到每一帧点云数据中目标标注对象的目标检测框;
对预设帧数的目标检测框进行拟合估计,得到与图像数据帧数相同的目标检测框,并将目标检测框投影至与每一帧点云数据对应的图像数据中,确定目标检测标注结果。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
通过检测框生成模型中的卷积神经网络,对每一帧点云数据进行特征提取,得到连续帧点云数据中目标标注对象对应的时序特征序列;
对每一目标标注对象的时序特征序列进行特征增强,得到目标标注对象连续帧点云数据对应的特征增强序列。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
通过检测框生成模型中的检测头模块,对目标标注对象的特征增强序列进行回归预测,生成每一帧点云数据中目标标注对象的目标检测框。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
通过卷积神经网络中的动态体素化算法,对每一帧点云数据进行离散化和特征提取处理,得到每一帧点云数据的体素化矩阵;
根据双边线性插值算法,在每一帧的体素化矩阵中确定目标标注对象对应的标注关键点,并基于帧与帧间的时序性关系,生成目标标注对象的时序特征序列;
根据预设的多头注意力机制模块,对每一目标标注对象的时序特征序列进行特征增强,得到目标标注对象对应的特征增强序列。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据扩展卡尔曼滤波器,对目标标注对象预设帧数的目标检测框进行运动估计拟合,并通过插值算法确定插值时间戳对应的目标检测框;
将插值时间戳对应的目标检测框添加至预设帧数的目标检测框,得到与图像数据帧数相同的目标检测框。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据扩展卡尔曼滤波器,对目标标注对象预设帧数的目标检测框数据集进行运动轨迹拟合计算,确定连续帧点云数据对应的目标检测框数据集对应的运动轨迹曲线;
对运动轨迹曲线进行插值处理,确定插值时间戳下对应的目标检测框。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。