一种目标检测方法、装置、电子设备及存储介质与流程

专利2022-06-29  81


本公开涉及图像识别技术领域,具体而言,涉及一种目标检测方法、装置、电子设备及存储介质。



背景技术:

目标检测是计算机视觉重要的基础问题,许多计算机视觉的应用都依赖于目标检测,比如自动驾驶、视频监控和移动娱乐。

在进行目标检测时,主要任务是用检测框标出图像中物体所在位置,该过程可以基于物体关键点的目标检测算法确定物体在图像中的位置,通过确定出图像中所有物体关键点后,将属于相同物体的物体关键点进行匹配,从而得到物体的检测框。

当图像中包含多个外观相似的物体时,因外观相似的物体对应的物体关键点之间的匹配度较高,容易造成错误的检测结果,比如检测结果为同一个检测框中包含了多个物体,因此,目前的目标检测方法的检测精度准确度较低。



技术实现要素:

本公开实施例至少提供一种目标检测方案。

第一方面,本公开实施例提供了一种目标检测方法,包括:

获取待检测图像;

基于所述待检测图像,确定角点在所述待检测图像中的角点位置信息以及各个角点对应的向心偏移张量,所述角点表征所述待检测图像中的目标对象的位置;

基于各个角点在所述待检测图像中的角点位置信息及各个角点对应的心偏移张量,确定所述待检测图像中的目标对象。

本公开提供了一种目标检测方法,在获取到待检测图像后,首先确定角点在待检测图像中的角点位置信息以及各个角点对应的向心偏移张量,因为角点是指图像中的主要特征点,其在待检测图像中的角点位置信息能够表征每个目标对象在待检测图像中的位置,比如角点可以包括左上角点和右下角点,其中左上角点是指对应目标对象上侧轮廓的直线与对应目标对象左侧轮廓的直线的交点,右下角点是指对应目标对象下侧轮廓的直线与对应目标对象右侧轮廓的直线的交点,当左上角点和右下角点属于同一个目标对象的检测框时,左上角点和右下角点分别对应的向心偏移张量指向的位置应该比较接近,因此,本公开实施例提出的目标检测方法,基于各个角点在待检测图像中的角点位置信息及各个角点对应的向心偏移张量,能够确定出属于同一目标对象的角点,进而基于确定出的角点可以检测出该同一目标对象。

在一种可能的实施方式中,所述基于所述待检测图像,确定角点在待检测图像中的角点位置信息以及各个角点对应的向心偏移张量,包括:

对所述待检测图像进行特征提取,得到所述待检测图像对应的初始特征图;

对所述初始特征图进行角点池化处理,得到角点池化后的特征图;

基于所述角点池化后的特征图,确定各个角点在所述待检测图像中的角点位置信息,以及各个角点对应的向心偏移张量。

这里通过对待检测图像进行特征提取,得到初始特征图,并对初始特征图进行角点池化处理,得到能够便于提取角点以及角点对应的向心偏移量的特征图,即角点池化后的特征图。

在一种可能的实施方式中,所述基于所述角点池化后的特征图,确定各个角点在所述待检测图像中的角点位置信息,包括:

基于所述角点池化后的特征图,生成所述待检测图像对应的角点热力图;

基于所述角点热力图,确定所述角点热力图中每个特征点作为角点的概率值,并基于每个特征点作为角点的概率值,从所述特征点中筛选出所述角点;

获取筛选出的各个角点在所述角点热力图中的位置信息、以及各个角点对应的局部偏移信息,所述局部偏移信息用于表示该角点所表征的真实物理点在所述角点热力图中的位置偏移信息;

基于获取到的各个角点在所述角点热力图中的位置信息、各个角点对应的局部偏移信息、以及所述角点热力图和所述待检测图像之间的尺寸比例,确定各个角点在所述待检测图像中的角点位置信息。

本公开实施例提供的一种确定各个角点在待检测图像中的角点位置信息的具体方式,该过程通过引入角点热力图,通过每个特征点作为角点的概率值确定出可以作为角点的特征点,在选择出角点后,通过对角点在角点热力图中的位置信息进行修正后,确定出角点在待检测图像中的角点位置信息,该方式能够得到准确度较高的角点的角点位置信息,从而便于后续基于该角点检测目标对象在待检测图像中的位置。

在一种可能的实施方式中,基于所述角点池化后的特征图,确定各个角点对应的向心偏移张量,包括:

基于所述角点池化后的特征图,确定所述角点池化后的特征图中的每个特征点对应的导向偏移张量,每个特征点对应的导向偏移张量表征由该特征点指向所述待检测图像中的目标对象中心点的偏移张量;

基于每个特征点对应的所述导向偏移张量,确定该特征点的偏移域信息;所述偏移域信息中包含与该特征点关联的多个初始特征点分别指向各自对应的偏移后特征点的偏移张量;

基于所述角点池化后的特征图,以及该角点池化后的特征图中的特征点的偏移域信息,对所述角点池化后的特征图中的特征点的特征数据进行调整,得到调整后的特征图;

基于所述调整后的特征图,确定各个角点对应的向心偏移张量。

本公开实施例提供的确定向心偏移张量的过程,通过考虑目标对象信息,比如引入角点对应的导向偏移张量,以及特征点的偏移域信息,对角点池化后的特征图中的特征点的特征数据进行调整,使得得到的调整后的特征图中的特征点的特征数据能够包含更丰富的目标对象信息,从而能够确定出每个角点对应的更加准确的向心偏移张量,通过准确的向心偏移张量,能够准确得到角点指向的中心点位置信息,从而准确地检测目标对象在待检测图像中的位置。

在一种可能的实施方式中,所述待检测图像对应的角点热力图包括多个通道分别对应的角点热力图,每个所述通道对应一种预设对象类别;所述基于所述角点热力图,确定所述角点热力图中每个特征点作为角点的概率值之后,所述检测方法还包括:

针对所述多个通道中的每个通道,基于该通道对应的角点热力图中每个特征点作为角点的概率值,确定该通道对应的角点热力图中是否存在所述角点;

若存在,则确定所述待检测图像中包含该通道对应的预设对象类别的目标对象。

本公开实施例提出通过将角点池化后的特征图输入角点热力图预测网络,即可以得到包含预设通道个数的角点热力图,通过每个通道对应的角点热力图中是否存在角点,进而能够确定待检测图像中是否存在该通道对应类别的目标对象。

在一种可能的实施方式中,所述基于各个角点在所述待检测图像中的角点位置信息及各个角点对应的向心偏移张量,确定所述待检测图像中的目标对象,包括:

基于各个角点在所述待检测图像中的角点位置信息和各个角点对应的向心偏移张量,确定所述待检测图像中目标对象的检测框。

提出一种对目标检测方法的具体情况,可以基于各个角点在待检测图像中的角点位置信息和各个角点对应的向心偏移张量,确定出每个目标对象的检测框,即得到每个目标对象在待检测图像中的具体位置信息。

在一种可能的实施方式中,所述基于各个角点在所述待检测图像中的角点位置信息和各个角点对应的向心偏移张量,确定成所述待检测图像中目标对象的检测框,包括:

基于各个角点在所述待检测图像中的角点位置信息,筛选能够构成候选检测框的候选角点对;

基于每个候选角点对中每个角点在所述待检测图像中的角点位置信息和该角点对应的向心偏移张量,确定该角点指向的中心点位置信息;

基于每个候选角点对中每个角点在所述待检测图像中的角点位置信息,确定该候选角点对所对应的中心区域信息;

基于每个候选角点对中每个角点指向的中心点位置信息以及该候选角点对所对应的中心区域信息,在所述候选检测框中确定所述目标对象的检测框。

本公开实施例提出的确定目标对象的检测框的方式,通过角点的角点位置信息首先确定能够构成候选检测框的候选角点对,然后再基于该候选角点对中每个角点分别对象的向心偏移张量,来确定候选检测框包围的目标对象是否为同一个目标对象,从而能够较为准确地检测出待检测图像中的所有目标对象的检测框。

在一种可能的实施方式中,针对每个候选角点对,基于该候选角点对中每个角点的角点位置信息,确定该候选角点对所对应的中心区域信息,包括:

基于该候选角点对的每个角点的角点位置信息,确定表征该候选角点对所对应的中心区域框的角点位置信息;

基于所述中心区域框的角点位置信息,确定该候选角点对所对应的中心区域框的坐标范围。

在一种可能的实施方式中,所述基于每个候选角点对中每个角点指向的中心点位置信息以及该候选角点对所对应的中心区域信息,在所述候选检测框中确定所述目标对象的检测框,包括:

基于每个候选角点对中每个角点指向的中心点位置信息,以及该候选角点对所对应的中心区域信息,确定有效候选角点对;

基于所述有效候选角点对中每个角点指向的中心点位置信息、所述有效候选角点对所对应的中心区域信息、以及所述有效候选角点对中每个角点对应的概率值,确定每个有效候选角点对所对应的候选检测框的分值;每个角点对应的概率值用于表示该角点在角点热力图中对应的特征点作为角点的概率值;

基于每个有效候选角点对所对应的候选检测框的分值、以及相邻候选检测框之间的重叠区域大小,在所述候选检测框中确定所述目标对象的检测框。

通过对构成候选检测框的候选角点对进行进一步有效筛选,确定能够筛选出只表征一个目标对象的候选检测框,然后进一步对这些只表征一个目标对象的候选检测框进行软式非极大抑制筛选,从而得到准确的表征目标对象的检测框。

在一种可能的实施方式中,所述确定所述待检测图像中目标对象的检测框之后,所述目标检测方法还包括:

基于所述目标对象的检测框和对所述待检测图像进行特征提取得到的初始特征图,确定所述待检测图像中所述目标对象的实例信息。

提出一种对目标检测方法的具体情况,可以确定目标对象的实例信息,这里的实例是指对图像中的目标对象进行实例分割后,在像素层面给出每个目标对象的像素,实例分割可以精确到物体的边缘,从而得到目标对象在待检测图像中更加准确的位置信息。

在一种可能的实施方式中,所述基于所述目标对象的检测框和对所述待检测图像进行特征提取得到的初始特征图,确定所述待检测图像中所述目标对象的实例信息,包括:

基于所述目标对象的检测框以及所述初始特征图,提取所述初始特征图在所述检测框内的特征点的特征数据;

基于所述初始特征图在所述检测框内的特征点的特征数据,确定所述待检测图像中所述目标对象的实例信息。

在一种可能的实施方式中,所述目标检测方法是由神经网络实现,所述神经网络利用包含了标注目标样本对象的样本图片训练得到。

在一种可能的实施方式中,所述神经网络采用以下步骤训练得到:

获取样本图像;

基于所述样本图像,确定样本角点在样本图像中的角点位置信息及各个样本角点对应的向心偏移张量,所述样本角点表征所述样本图像中的目标样本对象的位置;

基于各个样本角点在所述样本图像中的角点位置信息及各个样本角点对应的向心偏移张量,预测所述样本图像中的目标样本对象;

基于预测的所述样本图像中的目标样本对象和所述样本图像中的标注目标样本对象,对所述神经网络的网络参数值进行调整。

本公开实施例提供的神经网络的训练方法,通过获取样本图像,并基于该样本图像确定样本角点在样本图像中的角点位置信息及各个样本角点分别对应的向心偏移张量,从而进一步基于各个样本角点在样本图像中的角点位置信息和各个样本角点对应的向心偏移张量,在样本图像中检测目标样本对象,因为样本角点是指图像中的主要特征点,比如样本角点可以包括左上样本角点和右下样本角点,其中左上样本角点是指对应目标样本对象上侧轮廓的直线与对应目标样本对象左侧轮廓的直线的交点,右下样本角点是指对应目标样本对象下侧轮廓的直线与对应目标样本对象右侧轮廓的直线的交点,当左上样本角点和右下样本角点属于同一个目标样本对象的检测框时,左上样本角点和右下样本角点分别对应的向心偏移张量指向的位置应该比较接近,因此,本公开实施例提出的神经网络的训练方法,基于表征目标样本对象在样本图像中的位置的角点的角点位置信息,以及每个样本角点对应的向心偏移张量,确定出属于同一目标样本对象的样本角点,进而基于确定出的样本角点可以检测出该同一目标样本对象,然后通过不断地基于样本图像中的标注目标对象,不断调整神经网络参数,从而得到准确度较高的神经网络,基于该准确度较高的神经网络即可以对目标对象进行准确检测。

第二方面,本公开实施例提供了一种目标检测装置,包括:

获取模块,用于获取待检测图像;

确定模块,用于基于所述待检测图像,确定角点在所述待检测图像中的角点位置信息以及各个角点对应的向心偏移张量,所述角点表征所述待检测图像中的目标对象的位置;

检测模块,用于基于各个角点在所述待检测图像中的角点位置信息及各个角点对应的向心偏移张量,确定所述待检测图像中的目标对象。

在一种可能的实施方式中,所述确定模块用于:

对所述待检测图像进行特征提取,得到所述待检测图像对应的初始特征图;

对所述初始特征图进行角点池化处理,得到角点池化后的特征图;

基于所述角点池化后的特征图,确定各个角点在所述待检测图像中的角点位置信息,以及各个角点对应的向心偏移张量。

在一种可能的实施方式中,所述确定模块在用于基于所述角点池化后的特征图,确定各个角点在所述待检测图像中的角点位置信息时,包括:

基于所述角点池化后的特征图,生成所述待检测图像对应的角点热力图;

基于所述角点热力图,确定所述角点热力图中每个特征点作为角点的概率值,并基于每个特征点作为角点的概率值,从所述特征点中筛选出所述角点;

获取筛选出的各个角点在所述角点热力图中的位置信息、以及各个角点对应的局部偏移信息,所述局部偏移信息用于表示该角点所表征的真实物理点在所述角点热力图中的位置偏移信息;

基于获取到的每个角点在所述角点热力图中的位置信息、各个角点对应的局部偏移信息、以及所述角点热力图和所述待检测图像之间的尺寸比例,确定各个角点在所述待检测图像中的角点位置信息。

在一种可能的实施方式中,所述确定模块在用于基于所述角点池化后的特征图,确定各个角点对应的向心偏移张量时,包括:

基于所述角点池化后的特征图,确定所述角点池化后的特征图中的每个特征点对应的导向偏移张量,每个特定点对应导向偏移张量表征由该特征点指向所述待检测图像中的目标对象中心点的偏移张量;

基于每个特征点对应的所述导向偏移张量,确定该特征点的偏移域信息;所述偏移域信息中包含与该特征点关联的多个初始特征点分别指向各自对应的偏移后特征点的偏移张量;

基于所述角点池化后的特征图,以及该角点池化后的特征图中的特征点的偏移域信息,对所述角点池化后的特征图中的特征点的特征数据进行调整,得到调整后的特征图;

基于所述调整后的特征图,确定各个角点对应的向心偏移张量。

在一种可能的实施方式中,所述待检测图像对应的角点热力图包括多个通道分别对应的角点热力图,每个所述通道对应一种预设对象类别;所述确定模块在用于基于所述角点热力图,确定所述角点热力图中每个特征点作为角点的概率值之后,还用于:

针对所述多个通道中的每个通道,基于该通道对应的角点热力图中每个特征点作为角点的概率值,确定该通道对应的角点热力图中是否存在所述角点;

若存在,则确定所述待检测图像中包含该通道对应的预设对象类别的目标对象。

在一种可能的实施方式中,所述检测模块用于:

基于各个角点在所述待检测图像中的角点位置信息和各个角点对应的向心偏移张量,确定所述待检测图像中目标对象的检测框。

在一种可能的实施方式中,所述检测模块在用于基于各个角点在所述待检测图像中的角点位置信息和各个角点对应的向心偏移张量,确定所述待检测图像中目标对象的检测框时,包括:

基于各个角点在所述待检测图像中的角点位置信息,筛选能够构成候选检测框的候选角点对;

基于每个候选角点对中每个角点在所述待检测图像中的角点位置信息和该角点对应的向心偏移张量,确定该角点指向的中心点位置信息;

基于每个候选角点对中每个角点在所述待检测图像的角点位置信息,确定该候选角点对所对应的中心区域信息;

基于每个候选角点对中每个角点指向的中心点位置信息以及该候选角点对所对应的中心区域信息,在所述候选检测框中确定所述目标对象的检测框。

在一种可能的实施方式中,针对每个候选角点对,所述检测模块在用于基于该候选角点对中每个角点的角点位置信息,确定该候选角点对所对应的中心区域信息时,包括:

基于该候选角点对的每个角点的角点位置信息,确定表征该候选角点对所对应的中心区域框的角点位置信息;

基于所述中心区域框的角点位置信息,确定该候选角点对所对应的中心区域框的坐标范围。

在一种可能的实施方式中,所述检测模块在用于基于每个候选角点对中每个角点指向的中心点位置信息以及该候选角点对所对应的中心区域信息,在所述候选检测框中确定所述目标对象的检测框时,包括:

基于每个候选角点对中每个角点指向的中心点位置信息,以及该候选角点对所对应的中心区域信息,确定有效候选角点对;

基于所述有效候选角点对中每个角点指向的中心点位置信息、所述有效候选角点对所对应的中心区域信息、以及所述有效候选角点对中每个角点对应的概率值,确定每个有效候选角点对所对应的候选检测框的分值;每个角点对应的概率值用于表示该角点在角点热力图中对应的特征点作为角点的概率值;

基于每个有效候选角点对所对应的候选检测框的分值、以及相邻候选检测框之间的重叠区域大小,在所述候选检测框中确定所述目标对象的检测框。

在一种可能的实施方式中,所述检测模块还用于:

在确定所述待检测图像中目标对象的检测框之后,基于所述目标对象的检测框和对所述待检测图像进行特征提取得到的初始特征图,确定所述待检测图像中所述目标对象的实例信息。

在一种可能的实施方式中,所述检测模块在用于基于所述目标对象的检测框和对所述待检测图像进行特征提取得到的初始特征图,确定所述待检测图像中所述目标对象的实例信息时,包括:

基于所述目标对象的检测框以及所述初始特征图,提取所述初始特征图在所述检测框内的特征点的特征数据;

基于所述初始特征图在所述检测框内的特征点的特征数据,确定所述待检测图像中所述目标对象的实例信息。

在一种可能的实施方式中,所述目标检测装置还包括神经网络训练模块,所述神经网络训练模块用于:

训练用于进行目标检测的神经网络,所述神经网络利用包含了标注目标样本对象的样本图片训练得到。

在一种可能的实施方式中,所述神经网络训练模块用于按照以下步骤训练所述神经网络:

获取样本图像;

基于所述样本图像,确定样本角点在样本图像中的角点位置信息以及各个样本角点对应的向心偏移张量,所述样本角点表征所述样本图像中的目标样本对象的位置;

基于各个样本角点在所述样本图像中的角点位置信息及各个样本角点对应的向心偏移张量,预测所述样本图像中的目标样本对象;

基于预测的所述样本图像中的目标样本对象和所述样本图像中的标注目标样本对象,对所述神经网络的网络参数值进行调整。

第三方面,本公开实施例提供了一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如第一方面所述的目标检测方法的步骤。

第四方面,本公开实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如第一方面所述的目标检测方法的步骤。

为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了一种针对待检测图像进行检测时得到的结果示意图;

图2示出了本公开实施例所提供的一种目标检测方法的流程流程图;

图3示出了本公开实施例所提供的一种确定角点位置信息以及角点对应的向心偏移张量的流程流程图;

图4示出了本公开实施例所提供的一种确定角点位置信息以及角点对应的向心偏移张量的具体流程流程图;

图5示出了本公开实施例所提供的一种确定角点对应的向心偏移张量的具体流程流程图;

图6示出了本公开实施例所提供的一种特征调整网络针对角点池化后的特征图进行调节的流程示意图;

图7示出了本公开实施例所提供的一种确定目标对象的类别的流程示意图;

图8示出了本公开实施例所提供的一种确定目标对象的检测框的具体流程示意图;

图9示出了本公开实施例所提供的基于每个候选角点对确定目标对象的检测框的具体流程示意图;

图10示出了本公开实施例所提供的一种目标检测方法对应的具体流程示意图;

图11示出了本公开实施例所提供的一种神经网络的训练方法流程示意图;

图12示出了本公开实施例所提供的一种目标检测装置的结构示意图;

图13示出了本公开实施例所提供的一种电子设备的结构示意图。

具体实施方式

为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。

在针对图像进行目标检测时,若该图像中包含多个相似的目标对象,如图1所示,当该图像中存在多个相似的飞机时,若采用基于飞机的关键点对图像中的飞机进行检测时,容易出现图1中检测框(1)和检测框(2)所示的情况,即同一个检测框中包含多个飞机的情况,即检测出现失误,即目前在对图像中的目标对象进行检测时,检测结果的准确度较低,针对此,本公开实施例提供了一种目标检测方法,用于解决该问题。

基于上述研究,本公开提供了一种目标检测方法,在获取到待检测图像后,首先确定角点在待检测图像中的角点位置信息以及各个角点对应的向心偏移张量,因为角点是指图像中的主要特征点,其在待检测图像中的角点位置信息能够表征每个目标对象在待检测图像中的位置,比如角点可以包括左上角点和右下角点,其中左上角点是指对应目标对象上侧轮廓的直线与对应目标对象左侧轮廓的直线的交点,右下角点是指对应目标对象下侧轮廓的直线与对应目标对象右侧轮廓的直线的交点,当左上角点和右下角点属于同一个目标对象的检测框时,左上角点和右下角点分别对应的向心偏移张量指向的位置应该比较接近,因此,本公开实施例提出的目标检测方法,基于各个角点在待检测图像中在待检测图像中的角点位置信息及各个角点对应的向心偏移张量,能够确定出属于同一目标对象的角点,进而基于确定出的角点可以检测出该同一目标对象。

下面将结合本公开中附图,对本公开中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

为便于对本实施例进行理解,首先对本公开实施例所公开的一种目标检测方法进行详细介绍,本公开实施例所提供的目标检测方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备。在一些可能的实现方式中,该目标检测方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。

参见图2所示,为本公开实施例提供的目标检测方法的流程图,所述方法包括步骤s201~s203,具体如下:

s201,获取待检测图像。

这里的待检测图像可以针对特定环境下的待检测图像,比如针对某交通路口的车辆进行检测,可以在该交通路口装置摄像机,通过摄像机采集该交通路口在一定时间段内的视频流,然后对该视频流进行分帧处理,得到待检测图像;或者针对某动物园中的动物进行检测,可以在该动物园内安装摄像机,通过摄像机采集该动物园在一定时间段内的视频流,然后对该视频流进行分帧处理,得到待检测图像。

这里待检测图像中可以包含目标对象,这里的目标对象是指在特定环境下要检测的对象,比如上文提到的某交通路口的车辆以及某动物园中的动物,也可以不包含目标对象,当不包括目标对象时,检测结果即为空,本公开实施针对包含目标对象的待检测图像进行说明。

s202,基于待检测图像,确定角点在待检测图像中的角点位置信息以及各个角点对应的向心偏移张量,其中,角点表征待检测图像中的目标对象的位置。

目标对象在待检测图像中的位置可以通过检测框来表示,本公开实施例通过角点来表征目标对象在待检测图像中的位置,即这里的角点可以为检测框的角点,比如可以通过左上角点和右下角点来表征目标对象在待检测图像中的位置,左上角点即为检测框的左上角点,右下角点即为检测框的右下角点,具体地,左上角点是指对应目标对象上侧轮廓的直线与对应目标对象左侧轮廓的直线的交点,右下角点是指对应目标对象下侧轮廓的直线与对应目标对象右侧轮廓的直线的交点。

当然,并不局限于通过左上角点和右下角点来表征目标对象的位置,还可以通过右上角点和左下角点来表征目标对象的位置,本公开实施例以左上角点和右下角点为例进行说明。

这里的向心偏移张量是指角点向目标对象中心位置的偏移张量,因为待检测图像是二维图像,则这里的向心偏移张量包括向两个方向上的偏移值,若这两个方向分别为x轴方向和y轴方向,则该向心偏移张量包括在x轴方向上的偏移值,以及在y轴方向上的偏移值,通过角点和该角点对应的向心偏移张量,则可以确定该角点指向的中心位置,当左上角点和右下角点位于同一个检测框时,其指向的中心位置应该相同,或者比较接近,故可以基于每个角点对应的向心偏移张量,确定出属于同一目标对象的角点,进而基于确定出的角点可以确定目标对象的检测框。

本公开实施例通过神经网络来确定角点以及角点对应的向心偏移张量,具体将结合下文实施例进行阐述。

s203,基于各个角点在待检测图像中的角点位置信息及各个角点对应的向心偏移张量,确定待检测图像中的目标对象。

其中,各个角点在待检测图像中的角点位置信息是指多个角点中各个角点在待检测图像中的角点位置信息,各个角点对应的向心偏移张量是指该多个角点中各个角点分别对应的向心偏移张量。

这里在待检测图像中检测出目标对象,可以包含检测出目标对象的位置,比如确定待检测图像中目标对象的检测框,也可以确定待检测图像中目标对象的实例信息,或者同时确定待检测图像中目标对象的检测框和实例信息,具体如何确定待检测图像中的目标对象,将在后文进行详细解释。

上述步骤s201~s203提出的目标检测方法,在获取到待检测图像后,首先确定角点在待检测图像中的角点位置信息以及各个角点对应的向心偏移张量,因为角点是指图像中的主要特征点,其在待检测图像中的角点位置信息能够表征每个目标对象在待检测图像中的位置,比如角点可以包括左上角点和右下角点,其中左上角点是指对应目标对象上侧轮廓的直线与对应目标对象左侧轮廓的直线的交点,右下角点是指对应目标对象下侧轮廓的直线与对应目标对象右侧轮廓的直线的交点,当左上角点和右下角点属于同一个目标对象的检测框时,左上角点和右下角点分别对应的向心偏移张量指向的位置应该比较接近,因此,本公开实施例提出的目标检测方法,基于各个角点在待检测图像中的角点位置信息及各个角点对应的向心偏移张量,能够确定出属于同一目标对象的角点,进而基于确定出的角点可以检测出该同一目标对象。

下面将结合具体实施例对上述s201~s203进行详细说明。

针对上述s201,在一种实施方式中,在基于待检测图像,确定角点在待检测图像中的角点位置信息以及各个角点对应的向心偏移张量时,如图3所示,可以包括以下步骤s301~s303:

s301,对待检测图像进行特征提取,得到待检测图像对应的初始特征图;

s301,对初始特征图进行角点池化处理,得到角点池化后的特征图;

s303,基于角点池化后的特征图,确定各个角点在待检测图像中的角点位置信息,以及各个角点对应的向心偏移张量。

这里对待检测图像的尺寸是一定的,比如尺寸为h*w,这里的h和w分别表示待检测图像中长和宽方向上的像素值,然后将该待检测图像输入预先训练的沙漏卷积神经网络进行特征提取,比如进行纹理特征提取、颜色特征提取、边缘特征提取等,即可以得到该待检测图像对应的初始特征图。

当然,因为沙漏卷积神经网络的输入端对接收的图像尺寸是有要求的,即接收设定尺寸的待检测图像,若待检测图像的尺寸不符合该设定尺寸,需要先对待检测图像的尺寸进行调节,然后再将尺寸调节后的待检测图像输入该沙漏卷积神经网络,进行特征提取以及尺寸压缩,即可以得到大小为h*w*c的初始特征图,这里的c表示初始特征图的通道个数,h和w表示每个通道上的初始特征图的尺寸。

初始特征图中包含多个特征点,每个特征点都具有特征数据,这些特征数据能够表示待检测图像的全局信息,为了便于在这些特征点中提取角点,本公开实施例提出对初始特征图进行cornerpooling角点池化处理,得到角点池化后的特征图,角点池化后的特征图相比初始特征图,增强了角点所蕴含的目标对象语义信息,因此基于角点池化后的特征图,能够更准确地确定出在待检测图像中每个角点的角点位置信息,以及每个角点对应的向心偏移张量。

这里通过对待检测图像进行特征提取,得到初始特征图,并对初始特征图进行角点池化处理,得到能够便于提取角点以及角点对应的向心偏移量的特征图,即角点池化后的特征图。

在得到角点池化后的特征图后,进一步可以根据该角点池化后的特征图以及预先训练的神经网络,来确定是否存在角点,在存在角点时,确定各个角点在待检测图像中的角点位置信息,本公开实施例通过左上角点和右下角点来表征目标对象在待检测图像中的位置,即确定每个角点在待检测图像中的角点位置信息的过程,可以是确定左上角点在待检测图像中的角点位置信息,以及右下角点在待检测图像中的角点位置信息的过程,具体地可以通过左上角点检测网络来检测左上角点在待检测图像中的角点位置信息,以及通过右下角点检测网络来检测右下角点在待检测图像中的角点位置信息,因为左上角点的在待检测图像中角点位置信息和右下角点在待检测图像中的角点位置信息的确定方式相似,本公开实施例以确定左上角点在待检测图像中的角点位置信息为例进行详细说明。

在一种实施方式中,左上角点检测网络可以包括左上角点热力图预测网络和左上角点局部偏移预测网络,在基于角点池化后的特征图,确定各个角点在待检测图像中的角点位置信息时,如图4所示,可以包括以下步骤s401~s404:

s401,基于角点池化后的特征图,生成待检测图像对应的角点热力图。

在预测左上角点在待检测图像中的角点位置信息时,这里的角点热力图可以通过左上角点检测网络中的左上角点热力图预测网络得到,将角点池化后的特征图输入左上角点热力图预测网络,即可以得到待检测图像对应的左上角点热力图,该左上角点热力图中包含多个特征点,每个特征点具有该特征点对应的特征数据,基于角点热力图中特征点的特征数据,能够确定该特征点作为左上角点的概率值。

这里得到的左上角点热力图大小为h*w*m,其中h*w表示角点热力图在每个通道上的尺寸,m表示预设通道数量,每个预设通道对应一种预设对象类别,比如m=40,即表示有40种预设对象类别,该左上角点热力图除了能够用于确定待检测图像中的左上角点,还可以用于确定该左上角点在待检测图像中表征的目标对象的类别,具体确定目标对象的类别的过程将在后文进行详细解释。

s402,基于角点热力图,确定角点热力图中每个特征点作为角点的概率值,并基于每个特征点作为角点的概率值,从特征点中筛选出角点。

基于每个特征点作为左上角点的概率值,可以确定该特征点是左上角点的概率,从而将概率值大于设定阈值的特征点作为左上角点。

s403,获取筛选出的各个角点在角点热力图中的位置信息、以及各个角点对应的局部偏移信息。

局部偏移信息用于表示该角点所表征的真实物理点在角点热力图中的位置偏移信息,具体地,每个左上角点对应的局部偏移信息用于表示该左上角点所表征的真实物理点在左上角点热力图中的位置偏移信息。

这里的局部偏移信息可以通过局部偏移张量来表示,该局部偏移张量在左上角点热力图中同样可以表示两个方向上的偏移值,比如这左上角点热力图中的坐标系包括两个方向,分别为x轴方向和y轴方向,则该局部偏移张量包括在x轴方向上的偏移值,以及在y轴方向上的偏移值。

基于左上角点热力图对应的坐标系,可以得到左上角点热力图中每个特征点在该左上角点热力图中的位置信息,考虑到得到的左上角点的位置信息与该左上角点表征的真实物理点的位置信息之间可能存在误差,比如,通过对左上角点热力图进行位置检测得到某个左上角点的位置信息为(xl1,yl1),而该左上角点表征的真实物理点的位置信息与检测到的该左上角点的位置信息该具有一定的偏差,则该局部偏移信息用于表示该偏差。

为了提高目标对象检测的准确度,这里可以通过引入提前训练的左上角点局部偏移预测网络,然后将池化后的特征图输入左上角点预测网络中的左上角点局部偏移预测网络,确定出左上角点热力图中每个特征点对应的局部偏移信息,然后基于该局部偏移信息对特征点在角点热力图中的位置信息进行修正,然后再基于修正后的位置信息,确定左上角点在待检测图像中的角点位置信息。

s404,基于获取到的各个角点在角点热力图中的位置信息、各个角点对应的局部偏移信息、以及角点热力图和待检测图像之间的尺寸比例,确定各个角点在待检测图像中的角点位置信息。

这里,获取到的每个左上角点在左上角点热力图中的位置信息可以包括在左上角点热力图中x轴方向上的坐标值x以及y轴方向上的坐标值y,待检测图像中每个左上角点的角点位置信息可以包括x轴方向上的坐标值x以及y轴方向上的坐标值y。

具体地,可以根据以下公式(1)和公式(2)来确定第i个左上角点在待检测图像中的角点位置信息:

tlx(i)=n*(xl(i) σlx(i));(1);

tly(i)=n*(yl(i) σly(i));(2);

其中,tlx(i)表示第i个左上角点在待检测图像中x轴方向上的坐标值,tly(i)表示第i个左上角点在待检测图像中y轴方向上的坐标值;n表示左上角点热力图和待检测图像之间的尺寸比例;xl(i)表示第i个左上角点在左上角点热力图中x轴方向上的坐标值,yl(i)表示第i个左上角点在角点热力图中y轴方向上的坐标值;σlx(i)表示第i个左上角点所表征的真实物理点在角点热力图中x轴方向上的偏移值,σly(i)表示第i个左上角点所表征的真实物理点在角点热力图中y轴方向上的偏移值。

以上过程为左上角点在待检测图像中的角点位置信息的确定过程,右下角点在待检测图像中的角点位置信息的确定过程同理,即将角点池化后的特征图输入右下角点预测网络中的右下角点热力图预测网络,得到右下角点热力图,进而确定右下角点热力图中每个特征点作为右下角点的概率值,从中筛选出右下角点,同时结合通过右下角点预测网络中的右下角点局部偏移网络确定的右下角点对应的局部偏移信息,确定每个右下角点在待检测图像中的角点位置信息,在此不进行赘述。

同样,可以根据以下公式(3)和公式(4)来确定第j个右下角点在待检测图像中的角点位置信息:

brx(j)=n*(xr(j) σrx(j));(3);

bry(j)=n*(yr(j) σry(j));(4);

其中,brx(j)表示第j个右下角点在待检测图像中x轴方向上的坐标值,bry(j)表示第j个右下角点在待检测图像中y轴方向上的坐标值;n表示右下角点热力图和待检测图像之间的尺寸比例;xr(j)表示第j个右下角点在右下角点热力图中x轴方向上的坐标值,yr(j)表示第j个右下角点在角点热力图中y轴方向上的坐标值;σrx(j)表示第j个右下角点所表征的真实物理点在角点热力图中x轴方向上的偏移值,σry(j)表示第j个右下角点所表征的真实物理点在角点热力图中y轴方向上的偏移值。

以上步骤s401~s404是本公开实施例提供的一种确定各个角点在待检测图像中的角点位置信息的具体方式,该过程通过引入角点热力图,通过每个特征点作为角点的概率值确定出可以作为角点的特征点,在选择出角点后,通过对角点在角点热力图中的位置信息进行修正后,确定出角点在待检测图像中的角点位置信息,该方式能够得到准确度较高的角点的角点位置信息,从而便于后续基于该角点检测目标对象在待检测图像中的位置。

下面介绍确定各个角点对应的向心偏移张量的过程,在角点分为左上角点和右下角点时,同样需要分别确认左上角点对应的向心偏移张量,以及右下角点对应的向心偏移张量,本公开实施例以确定左上角点对应的向心偏移张量为例进行详细说明,右下角点对应的向心偏移张量与左上角点对应的向心偏移张量的确定方式相似,本公开实施例不再进行赘述。

在一种实施方式中,为了得到更加准确的向心偏移张量,在确定向心偏移张量之前,引入特征调整过程对角点池化后的特征图进行调整后,再进行确定向心偏移张量,具体地,在基于角点池化后的特征图,确定各个角点对应的向心偏移张量时,如图5所示,可以包括以下步骤s501~s504:

s501,基于角点池化后的特征图,确定角点池化后的特征图中的每个特征点对应的导向偏移张量。

其中,每个特征点对应的导向偏移张量表征由该特征点指向待检测图像中的目标对象中心点的偏移张量。

考虑到目标对象在待检测图像中的位置与目标对象信息有关,即希望角点池化后特征图的角点的特征数据能够包含更加丰富的目标对象信息,故这里可以考虑每个特征点,尤其是表示角点特征向量能够包含更加丰富的目标对象信息,因此基于每个特征点对应的导向偏移张量,可以对角点池化后的特征图进行特征调整,使得调整后的特征图中,每个特定点尤其是角点能够包含更加丰富的目标对象信息。

具体地,这里可以通过对角点池化后的特征图进行卷积运算,得到角点池化后的特征图中的每个特征点对应的导向偏移张量,该导向偏移张量包括沿x轴方向上的偏移值以及沿y轴方向上的偏移值。

以确定左上角点对应的向心偏移张量为例,这里对角点池化后的特征图进行卷积运算,主要得到特征点作为左上角点对应导向偏移张量。

s502,基于每个特征点对应的导向偏移张量,确定该特征点的偏移域信息。

其中,偏移域信息中包含与该特征点关联的多个初始特征点分别指向各自对应的偏移后特征点的偏移张量。

在得到每个特征点对应的导向偏移张量后,基于每个特征点对应的导向偏移张量进行卷积运算,得到该特征点的偏移域信息。

以确定左上角点对应的向心偏移张量为例,在得到每个特征点作为左上角点时对应的导向偏移张量后,再对每个特征点作为左上角点时对应的导向偏移张量进行卷积运算,从而得到该特征点作为左上角点时的偏移域信息。

s503,基于角点池化后的特征图,以及该角点池化后的特征图中的特征点的偏移域信息,对角点池化后的特征图中的特征点的特征数据进行调整,得到调整后的特征图。

在得到角点池化后的特征图的特征点作为左上角点时的偏移域信息后,即可以将角点池化后的特征图,以及该角点池化后的特征图中的每个特征点作为左上角点时的偏移域信息同时进行可变形卷积运算,得到左上角点对应的调整后的特征图。

具体地,步骤s501至s503的过程可以通过如图6所示的特征调整网络确定:

对角点池化后的特征图进行卷积运算,得到该角点池化后的特征图中每个特征点作为左上角点时对应的导向偏移张量,然后对该导向偏移张量进行卷积运算,得到偏移域信息,针对这里的偏移域信息做如下解释:

在对角点池化后的特征图中的特征点的特征数据进行卷积运算时,比如针对角点池化后的特征图中的特征点a的特征数据进行卷积运算时,当不存在偏移域信息时,若按照3*3卷积对特征点a的特征数据进行卷积运算,则可以通过角点池化后的特征图中包含特征点a在内的9个通过实线框表示的初始特征点的特征数据进行卷积运算得到,当考虑偏移域信息后,希望通过包含更加丰富的目标对象信息的特征点的特征数据对特征点a进行特征调节,比如可以基于每个特征点对应的导向偏移向量来对用于对特征点a进行特征调节的特征点进行偏移,比如偏移后的特征点可以通过如图6中角点池化后的特征图中9个通过虚线框来表示,这样可以通过这9个偏移后的特征点的特征数据进行卷积运算对特征点a的特征数据进行特征调整,其中偏移域信息可以通过图6中的偏移张量进行表示,偏移张量中的每个偏移张量,即为每个初始特征点指向该初始特征点对应的偏移后特征点的偏移张量,表示初始特征点在x轴方向上和y方向上偏移后,得到该初始特征点对应的偏移后特征点。

考虑每个特征点作为左上角点时对应的导向偏移张量,使得特征调整后的特征点中的特征数据包含的目标对象信息更加丰富,从而便于在后期基于调整后的特征图确定每个左上角点对应的向心偏移张量时,能够得到更加准确的向心偏移张量。

同理,考虑每个特征点作为右下角点时相对目标对象的中心点的导向偏移张量,使得特征调整后的特征点包含的目标对象信息更加丰富,从而便于在后期基于调整后的特征图确定每个右下角点对应的向心偏移张量时,能够得到更加准确的向心偏移张量。

s504,基于调整后的特征图,确定各个角点对应的向心偏移张量。

这里对调整后的特征图中的角点对应的特征数据进行卷积运算,确定各个角点对应的向心偏移张量。

具体地,调整后的特征图中可以包含左上角点对应的调整后的特征图以及右下角点对应的调整后的特征图,在基于左上角点对应的调整后的特征图确定每个左上角点对应的向心偏移张量时,可以通过左上角点对应的向心偏移预测网络来确定,在基于右下角点对应的调整后的特征图确定每个右下角点对应的向心偏移张量时,可以通过右下角点对应的向心偏移预测网络来确定。

以上s501~s504的过程,为本公开实施例提供的确定向心偏移张量的过程,通过考虑目标对象信息,比如引入角点对应的导向偏移张量,以及特征点的偏移域信息,对角点池化后的特征图中的特征点的特征数据进行调整,使得得到的调整后的特征图中的特征点的特征数据能够包含更丰富的目标对象信息,从而能够确定出每个角点对应的更加准确的向心偏移张量,通过准确的向心偏移张量,能够准确得到角点指向的中心点位置信息,从而准确地检测目标对象在待检测图像中的位置。

上文提到可以通过角点热力图确定待检测图像中包含的目标对象的类别,这里具体介绍如何根据角点热力图来确定目标对象的类别,从上文得知待检测图像对应的角点热力图包括多个通道分别对应的角点热力图,每个通道对应一种预设对象类别;则在上文提到的基于角点热力图,确定角点热力图中每个特征点作为角点的概率值之后,如图7所示,本公开实施例提供的检测方法还包括以下步骤s701~s702:

s701,针对多个通道中的每个通道,基于该通道对应的角点热力图中每个特征点作为角点的概率值,确定该通道对应的角点热力图中是否存在角点。

s702,若存在,则确定待检测图像中包含该通道对应的预设对象类别的目标对象。

针对待检测图像对应的角点热力图中,每个通道分别对应的角点热力图中各个特征点作为角点的概率值,可以确定该通道的角点热力图中是否存在角点,比如当某个通道的角点特征图中包含多个对应概率值大于设定阈值的特征点,则说明该通道的角点特征图中大概率包含角点,而角点是用于表征目标对象在待检测图像中的位置,这样即可以说明待检测图像中包含该通道对应的预设对象类别的目标对象。

比如,针对某动物园中的动物进行检测,可以设定通道个数为100,即得到的角点热力图为h*w*100,每个通道对应一种预设对象类别,针对某种待检测图像,若得到的该待检测图像对应的角点热力图的100个通道中,只有第1个通道和第2个通道中的角点热力图中包含角点,且第1个通道对应的预设对象类别为01,第2个通道对应的预设对象类别为02,则可以说明待检测图像中包含类别为01和02的目标对象。

本公开实施例提出通过将角点池化后的特征图输入角点热力图预测网络,即可以得到包含预设通道个数的角点热力图,通过每个通道对应的角点热力图中是否存在角点,进而能够确定待检测图像中是否存在该通道对应类别的目标对象。

另外,这里在检测出每个通道上的角点热力图包含的角点后,可以进一步确定角点对应的向心偏移张量,从而确定每个通道对应的目标对象在待检测图像中的位置,从而结合该通道对应的目标对象的类别,确定待检测图像中各个目标对象的类别。

针对上述s203,即在基于各个角点在待检测图像中的角点位置信息及各个角点对应的向心偏移张量,确定待检测图像中的目标对象时,可以包括:

基于各个角点在待检测图像中的角点位置信息和各个角点对应的向心偏移张量,确定待检测图像中目标对象的检测框。

这里在生成待检测图像中目标对象的检测框时,需要至少一个左上角点和右下角点的角点位置信息确定,或者需要至少一个右上角点和左下角点的角点位置信息确定,本公开实施例以通过一个左上角点和一个右下角点来确定检测框为例进行说明。

具体地,在基于各个角点在待检测图像中的角点位置信息和各个角点对应的向心偏移张量,确定待检测图像中目标对象的检测框时,如图8所示,可以包括:

s801,基于各个角点在待检测图像中的角点位置信息,筛选能够构成候选检测框的候选角点对。

以包含左上角点和右下角点的候选角点对为例,在筛选能够构成候选检测框的左上角点和右下角点时,为了提高筛选速度,可以先判断左上角点和右下角点是否属于同一目标对象类别,在确定任一左上角点和右下角点属于同一目标对象类别时,再继续判断该任一左上角点和右下角点在待检测图像中的角点位置信息能否构成同一个候选检测框。

比如,左上角点在待检测图像中应该位于右下角点的左上方,若根据左上角点和右下角点的角点位置信息,比如根据左上角点在待检测图像中的位置坐标,以及右下角点在待检测图像中的位置坐标,无法使得左上角点位于右下角点的左上方,则该左上角点和右下角点无法构成候选角点对。

具体地,可以在待检测图像中建立坐标系,该坐标系包括x轴和y轴,每个角点在该坐标系中的角点位置信息包括在x轴方向上的横坐标值以及在y轴方向上的纵坐标值,然后在该坐标系中,根据各个角点在该坐标系中对应的坐标值,筛选能够构成候选检测框的左上角点和右下角点。

s802,基于每个候选角点对中每个角点在待检测图像中的角点位置信息和该角点对应的向心偏移张量,确定该角点指向的中心点位置信息。

具体地,可以根据以下公式(5)来确定每个候选角点对中左上角点指向的中心点位置信息,根据以下公式(6)来确定每个候选角点对中右下角点指向的中心点位置信息:

其中,表示第i个左上角点指向的中心点位置信息中x轴方向上对应的横坐标值,表示第i个左上角点指向的中心点位置信息中y轴方向上对应的纵坐标值;tlx(i)表示第i个左上角点在待检测图像中的角点位置信息中x轴方向上对应的横坐标值;tly(i)表示左上角点在待检测图像中的角点位置信息中y轴方向上对应的纵坐标值;表示第i个左上角点的向心偏移张量中向x轴方向的偏移值,表示第i个左上角点的向心偏移张量中向y轴方向的偏移值。

其中,表示第j个右下角点指向的中心点位置信息中x轴方向上对应的横坐标值,表示第j个右下角点指向的中心点位置信息中y轴方向上对应的纵坐标值;brx(j)表示第j个右下角点在待检测图像中的角点位置信息中x轴方向上对应的横坐标值;bry(j)表示第j个右下角点在待检测图像中的角点位置信息中y轴方向上对应的纵坐标值;表示第j个右下角点的向心偏移张量中向x轴方向的偏移值,表示第j个右下角点的向心偏移张量中向y轴方向的偏移值。

s803,基于每个候选角点对中每个角点在待检测图像中的角点位置信息,确定该候选角点对所对应的中心区域信息。

这里的中心区域信息可以是预先设定好的,其定义为与目标对象的检测框中心重合的中心区域框的坐标范围,通过该中心区域框的坐标范围能够检测候选检测框是否包含了唯一的目标对象。

比如,若候选角点对中,若左上角点指向的中心点位置信息和右下角点指向的中心点位置信息位于中心区域框的坐标范围内,当该中心区域框的坐标范围较小时,则可以认为左上角点指向的中心点位置信息和右下角点指向的中心点位置信息比较接近,从而确定该候选角点对构成的候选检测框为包含了唯一的目标对象。

具体地,针对每个候选角点对,在基于该候选角点对中每个角点的角点位置信息,确定该候选角点对所对应的中心区域信息时,可以包括:

(1)基于该候选角点对的每个角点的角点位置信息,确定表征该候选角点对所对应的中心区域框的角点位置信息;

(2)基于中心区域框的角点位置信息,确定该候选角点对所对应的中心区域框的坐标范围。

若第m个候选角点对由第i个左上角点和第j个右下角点构成,则可以按照以下公式(7)~公式(10)来确定该第m个候选角点对所对应的中心区域框的角点位置信息:

其中,表示第m个候选角点对所对应的中心区域框的左上角点在待检测图像中x轴方向上的横坐标值;表示第m个候选角点对所对应的中心区域框的左上角点在待检测图像中y轴方向上的横坐标值;表示第m个候选角点对所对应的中心区域框的右下角点在待检测图像中x轴方向上的横坐标值;表示第m个候选角点对所对应的中心区域框的右下角点在待检测图像中y轴方向上的横坐标值;μ表示中心区域框的长宽与候选检测框的长宽的比例,该比例为预先设定好的,且μ∈(0,1)。

在确定出第m个候选角点对所对应的中心区域框的角点位置信息后,可以按照以下公式(11)来确定该中心区域框的坐标范围:

其中,rcentral(m)表示第m个候选角点对所对应的中心区域框的坐标范围,该中心区域框的坐标范围通过x轴方向上的x(m)值,以及y轴方向上的y(m)值来表示,其中x(m)的范围满足y(m)的范围满足

s804,基于每个候选角点对中每个角点指向的中心点位置信息以及该候选角点对所对应的中心区域信息,在候选检测框中确定目标对象的检测框。

每个候选角点对所对应的中心区域信息用于制约该候选角点对中每个角点指向的中心点位置信息之间的接近程度,当某个候选角点对中每个角点指向的中心点位置信息位于该候选角点对所对应的中心区域框内时,则可以说明候选角点对中每个角点指向的中心点比较接近,则可以进一步说明候选角点对构成的候选检测框中包含的目标对象是唯一的目标对象。

本公开实施例提出的确定目标对象的检测框的方式,通过角点的角点位置信息首先确定能够构成候选检测框的候选角点对,然后再基于该候选角点对中每个角点分别对象的向心偏移张量,来确定候选检测框包围的目标对象是否为同一个目标对象,从而能够较为准确地检测出待检测图像中的所有目标对象的检测框。

具体地,在基于每个候选角点对中每个角点指向的中心点位置信息以及该候选角点对所对应的中心区域信息,在候选检测框中确定目标对象的检测框时,如图9所示,可以包括以下步骤s901~s903:

s901,基于每个候选角点对中每个角点指向的中心点位置信息,以及该候选角点对所对应的中心区域信息,确定有效候选角点对。

这里,若某个候选角点对中每个角点指向的中心点位置信息位于该候选角点对所对应的中心区域框内时,则将该候选角点对作为有效候选角点对。

这里可以通过以下公式(12)来判断第i个左上角点和第j个右下角点构成的候选角点对是否为有效候选角点对,即判断第i个左上角点和第j个右下角点构成的候选检测框对应的第m个中心区域框的坐标范围与第i个左上角点和第j个右下角点各自指向的中心点位置信息是否满足以下公式(12):

当第i个左上角点和第j个右下角点构成的候选检测框对应的第m个中心区域框的坐标范围与第i个左上角点和第j个右下角点各自指向的中心点位置信息满足以上公式(12)时,则说明第i个左上角点和第j个右下角点构成的候选角点对为有效候选角点对,然后继续对该有效候选角点执行s902的步骤,否则,若第i个左上角点和第j个右下角点构成的候选角点对为无效候选角点对,继续判断该第i个左上角点和其它右下角点是否能够构成有效候选角点对,直至得到有效候选角点对后,再执行后续步骤。

s902,基于有效候选角点对中每个角点指向的中心点位置信息、有效候选角点对所对应的中心区域信息、以及有效候选角点对中每个角点对应的概率值,确定每个有效候选角点对所对应的候选检测框的分值。

其中,每个角点对应的概率值用于表示该角点在角点热力图中对应的特征点作为角点的概率值。

在对待检测图像进行检测时,可能存在针对同一个目标对象出现多个候选检测框的情况,有些候选检测框表示的目标对象在待检测图像中的位置的准确度可能较低,这里引入每个有效候选角点对所对应的候选检测框的分值,比如可以通过有效候选角点对中每个角点指向的中心点所构成的区域和有效候选角点对所对应的中心区域框之间的面积关系,以及有效候选角点对中每个角点对应的概率值来表示每个有效候选角点对所对应的候选检测框的分值,分值高的候选检测框作为目标对象的检测框的概率较大,通过此对候选检测框进行进一步筛选。

具体地,针对第i个左上角点和第j个右下角点构成的有效候选角点对,可以按照以下公式(13)来确定该有效候选角点对所对应的候选检测框的分值:

其中,s表示第i个左上角点和第j个右下角点构成的有效候选角点对所对应的候选检测框的分值;stl(i)表示第i个左上角点在左上角点热力图中对应的特征点作为左上角点的概率值;sbr(j)表示第j个右下角点在右下角点热力图中对应的特征点作为右下角点的概率值。

s903,基于每个有效候选角点对所对应的候选检测框的分值、以及相邻候选检测框之间的重叠区域大小,在候选检测框中确定目标对象的检测框。

这里重叠区域可以通过重叠区域在待检测图像中的尺寸来确定,下面介绍如何基于每个有效候选角点对所对应的候选检测框的分值、以及相邻候选检测框之间的重叠区域来筛选目标对象的检测框:

这里可以通过软式非极大抑制在多个候选检测框中筛选目标对象的检测框,具体地,针对有超过重叠区域阈值的多个候选检测框,可以将对应分值最高的作为目标对象的检测框,将多个候选检测框中其它的候选检测框删除,这样即可得到待检测图像中目标对象的检测框。

以上步骤s1001~s1003通过对构成候选检测框的候选角点对进行进一步有效筛选,确定能够筛选出只表征一个目标对象的候选检测框,然后进一步对这些只表征一个目标对象的候选检测框进行软式非极大抑制筛选,从而准确地得到表征目标对象的检测框。

在得到待检测图像中目标对象的检测框后,可以进一步确定该检测框内目标对象的实例信息,具体地,可以基于目标对象的检测框和对待检测图像进行特征提取得到的初始特征图,确定待检测图像中所述目标对象的实例信息。

这里的实例信息可以通过掩膜来表示,这里的掩膜是指对图像中的目标对象进行实例分割后,在像素层面给出每个目标对象的像素,因此掩膜可以精确到物体的边缘,从而得到目标对象在待检测图像中更加准确的位置;除此之外,基于掩膜还可以表示目标对象的形貌,从而可以基于该形貌来验证目标对象的类别的确定是否准确,以及基于掩膜表示的目标对象的形貌,对目标对象进行后续动作分析,在本公开实施例中不对此进行阐述。

具体地,在基于目标对象的检测框和对待检测图像进行特征提取得到的初始特征图,确定待检测图像中目标对象的实例信息时,可以包括:

(1)基于目标对象的检测框以及初始特征图,提取初始特征图在检测框内的特征点的特征数据;

(2)基于初始特征图在检测框内的特征点的特征数据,确定待检测图像中目标对象的实例信息。

这里将目标对象的检测框和待检测图像对应的初始特征图输入感兴趣区域提取网络,该感兴趣区域提取网络能够首先提取该初始特征图尺寸匹配的感兴趣区域,然后再通过感兴趣对齐池化处理得到该初始特征图在该检测框内(即感兴趣区域)的特征点的特征数据,然后将该初始特征图在检测框内的特征点的特征数据输入掩膜预测网络,即可以生成目标对象的实例信息,该实例信息可以以掩模的形式表示,然后进一步可以将该目标对象的掩膜扩大至与待检测图像中的目标对象相同的尺寸,即可以得到待检测图像的目标对象的实例信息。

下面结合图10针对本公开实施例提出的目标检测方法进行整体说明:

将待检测图像输入沙漏卷积神经网络,得到该待检测图像对应的初始特征图f,然后再对该待检测图像中的目标对象进行检测时,可以将该初始特征图进行角点池化处理,得到角点池化后的特征图p,进而对该角点池化后的特征图p进行左上角点检测以及特征调整,可以得到该左上角点和该左上角点对应的向心偏移张量,得到左上角点的过程通过左上角点检测网络进行确定,该左上角点检测网络包括左上角点热力图预测网络和左上角点局部偏移预测网络(图10中未示出),得到左上角点对应的向心偏移张量之前首先对角点池化后的特征图p进行特征调整,该过程包括确定左上角点对应的导向偏移张量以及偏移域信息,然后基于可变形卷积运算,对角点池化后的特征图p进行调整,得到调节后的特征图g,进而通过卷积运算,确定左上角点对应的向心偏移张量。

右下角点通过右下角点检测网络来确定,右下角点对应的向心偏移张量通过特征调整以及卷积运算得到,过程同左上角点以及左上角点对应的向心偏移张量的确定过程相似,然后基于左上角点及左上角点对应的向心偏移张量,以及右下角点及右下角点对应的向心偏移张量共同确定目标对象的检测框。

在得到目标对象的检测框后,基于该目标对象的检测框和初始特征图f提取感兴趣区域,进而对该感兴趣区域进行感兴趣区域对齐池化处理,得到感兴趣区域特征(即初始特征图在该检测框内的特征点的特征数据),进而通过掩膜预测网络中的卷积运算,即可以得到目标对象的掩膜,再对该掩膜进行尺寸扩大后,得到与待检测图像同样尺寸的掩膜图像(即目标对象的实例信息)。

通过本公开实施例提出的目标检测方法可以输出目标对象的检测框、目标对象的掩膜以及目标对象的类别,可以根据预先设定好的要求,得到需要的结果,比如仅仅输出目标对象的检测框、或者仅仅输出目标对象的掩膜图像、或者既输出目标对象的检测框,也输出目标对象的掩膜图像且同时输出目标对象的类别,在本公开实施例中不进行限定。

本公开实施里的目标检测方法可以由神经网络视线,神经网络利用包含了标注目标样本对象的样本图片训练得到。

具体地,如图11所示,本公开实施例提出的目标检测方法的神经网络可以采用以下步骤训练得到,包括步骤s1101~s1104:

s1101,获取样本图像。

这里的样本图像可以包括标注目标样本对象的正样本,以及不包含目标样本对象的负样本,且正样本中包含的目标对象可以包括多种类别。

具体地,标注目标样本对象的正样本可以分为通过检测框标注的目标样本对象以及通过掩膜标注的目标样本对象。

s1102,基于样本图像,确定样本角点在样本图像中的角点位置信息及各个样本角点对应的向心偏移张量,样本角点表征样本图像中的目标样本对象的位置。

这里基于样本图像,确定样本角点在样本图像中的角点位置信息,以及各个样本角点分别对应的向心偏移张量的过程,与上文提到的确定角点在待检测图像中的角点位置信息,以及各个角点分别对应的向心偏移张量的方式相似,在此不再赘述。

s1103,基于各个样本角点在样本图像中的角点位置信息及各个样本角点对应的向心偏移张量,预测样本图像中的目标样本对象。

这里在样本图像中预测目标样本对象的过程与上文提到的在待检测图像中确定目标对象的方式相同,在此不再赘述。

s1104,基于预测的样本图像中的目标样本对象和样本图像中的标注目标样本对象,对神经网络的网络参数值进行调整。

这里可以引入损失函数确定目标样本对象预测时对应的损失值,经过多次训练后,通过损失值来对神经网络的网络参数值进行调整,比如使得损失值小于设定阈值时,即可以停止训练,从而得到神经网络的网络参数值。

另外,目标样本对象的检测框,以及目标样本对象的掩膜以及目标样本对象的类别的确定过程,与上文介绍的确定目标对象的检测框、目标对象的掩膜以及目标对象的类别的过程相似,在此不再赘述。

本公开实施例提供的神经网络的训练方法,通过获取样本图像,并基于该样本图像确定样本角点在样本图像中的角点位置信息及各个样本角点分别对应的向心偏移张量,从而进一步基于各个样本角点在样本图像中的角点位置信息和各个样本角点对应的向心偏移张量,在样本图像中检测目标样本对象,因为样本角点是指图像中的主要特征点,比如样本角点可以包括左上样本角点和右下样本角点,其中左上样本角点是指对应目标样本对象上侧轮廓的直线与对应目标样本对象左侧轮廓的直线的交点,右下样本角点是指对应目标样本对象下侧轮廓的直线与对应目标样本对象右侧轮廓的直线的交点,当左上样本角点和右下样本角点属于同一个目标样本对象的检测框时,左上样本角点和右下样本角点分别对应的向心偏移张量指向的位置应该比较接近,因此,本公开实施例提出的神经网络的训练方法,基于表征目标样本对象在待训练样本图像中的位置的角点位置信息,以及每个样本角点对应的向心偏移张量,确定出属于同一目标样本对象的样本角点,进而基于确定出的样本角点可以检测出该同一目标样本对象,然后通过不断地基于样本图像中的标注目标对象,不断调整神经网络参数,从而得到准确度较高的神经网络,基于该准确度较高的神经网络即可以对目标对象进行准确检测。

本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。

基于同一技术构思,本公开实施例中还提供了与目标检测方法对应的目标检测装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述目标检测方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

参照图12所示,为本公开实施例提供的一种目标检测装置1200的示意图,装置包括:获取模块1201、确定模块1202、检测模块1203。

其中,获取模块1201,用于获取待检测图像;

确定模块1202,用于基于待检测图像,确定角点在待检测图像中的角点位置信息以及各个角点对应的向心偏移张量,角点表征待检测图像中的目标对象的位置;

检测模块1203,用于基于各个角点在待检测图像中的角点位置信息及各个角点对应的向心偏移张量,确定待检测图像中中的目标对象。

在一种可能的实施方式中,确定模块1202用于:

对待检测图像进行特征提取,得到待检测图像对应的初始特征图;

对初始特征图进行角点池化处理,得到角点池化后的特征图;

基于角点池化后的特征图,确定各个角点在待检测图像中的角点位置信息,以及各个角点对应的向心偏移张量。

在一种可能的实施方式中,确定模块1202在用于基于角点池化后的特征图,确定各个角点在待检测图像中的角点位置信息时,包括:

基于角点池化后的特征图,生成待检测图像对应的角点热力图;

基于角点热力图,确定角点热力图中每个特征点作为角点的概率值,并基于每个特征点作为角点的概率值,从特征点中筛选出角点;

获取筛选出的各个角点在角点热力图中的位置信息、以及各个角点对应的局部偏移信息,局部偏移信息用于表示该角点所表征的真实物理点在角点热力图中的位置偏移信息;

基于获取到的每个角点在角点热力图中的位置信息、各个角点对应的局部偏移信息、以及角点热力图和待检测图像之间的尺寸比例,确定各个角点在待检测图像中的角点位置信息。

在一种可能的实施方式中,确定模块1202在用于基于角点池化后的特征图,确定各个角点分别对应的向心偏移张量时,包括:

基于角点池化后的特征图,确定角点池化后的特征图中的每个特征点对应的导向偏移张量,每个特定点对应导向偏移张量表征由该特征点指向待检测图像中的目标对象中心点的偏移张量;

基于每个特征点对应的导向偏移张量,确定该特征点的偏移域信息;偏移域信息中包含与该特征点关联的多个初始特征点分别指向各自对应的偏移后特征点的偏移张量;

基于角点池化后的特征图,以及该角点池化后的特征图中的特征点的偏移域信息,对角点池化后的特征图中的特征点的特征数据进行调整,得到调整后的特征图;

基于调整后的特征图,确定各个角点对应的向心偏移张量。

在一种可能的实施方式中,待检测图像对应的角点热力图包括多个通道分别对应的角点热力图,每个通道对应一种预设对象类别;确定模块1202在用于基于角点热力图,确定角点热力图中每个特征点作为角点的概率值之后,还用于:

针对多个通道中的每个通道,基于该通道对应的角点热力图中每个特征点作为角点的概率值,确定该通道对应的角点热力图中是否存在角点;

若存在,则确定待检测图像中包含该通道对应的预设对象类别的目标对象。

在一种可能的实施方式中,检测模块1203用于:

基于各个角点在待检测图像中的角点位置信息和各个角点对应的向心偏移张量,确定待检测图像中目标对象的检测框;

在一种可能的实施方式中,检测模块1203在用于基于各个角点在待检测图像中的角点位置信息和各个角点对应的向心偏移张量,确定待检测图像中目标对象的检测框时,包括:

基于各个角点在待检测图像中的角点位置信息,筛选能够构成候选检测框的候选角点对;

基于每个候选角点对中每个角点在待检测图像中的角点位置信息和该角点对应的向心偏移张量,确定该角点指向的中心点位置信息;

基于每个候选角点对中每个角点在待检测图像中的角点位置信息,确定该候选角点对所对应的中心区域信息;

基于每个候选角点对中每个角点指向的中心点位置信息以及该候选角点对所对应的中心区域信息,在候选检测框中确定目标对象的检测框。

在一种可能的实施方式中,针对每个候选角点对,检测模块1203在用于基于该候选角点对中每个角点的角点位置信息,确定该候选角点对所对应的中心区域信息时,包括:

基于该候选角点对的每个角点的角点位置信息,确定表征该候选角点对所对应的中心区域框的角点位置信息;

基于中心区域框的角点位置信息,确定该候选角点对所对应的中心区域框的坐标范围。

在一种可能的实施方式中,检测模块1203在用于基于每个候选角点对中每个角点指向的中心点位置信息以及该候选角点对所对应的中心区域信息,在候选检测框中确定目标对象的检测框时,包括:

基于每个候选角点对中每个角点指向的中心点位置信息,以及该候选角点对所对应的中心区域信息,确定有效候选角点对;

基于有效候选角点对中每个角点指向的中心点位置信息、有效候选角点对所对应的中心区域信息、以及有效候选角点对中每个角点对应的概率值,确定每个有效候选角点对所对应的候选检测框的分值;每个角点对应的概率值用于表示该角点在角点热力图中对应的特征点作为角点的概率值;

基于每个有效候选角点对所对应的候选检测框的分值、以及相邻候选检测框之间的重叠区域大小,在候选检测框中确定目标对象的检测框。

在一种可能的实施方式中,检测模块1203还用于:

在确定待检测图像中目标对象的检测框之后,基于目标对象的检测框和对待检测图像进行特征提取得到的初始特征图,确定待检测图像中目标对象的实例信息。

在一种可能的实施方式中,检测模块1203在用于基于目标对象的检测框和对待检测图像进行特征提取得到的初始特征图,确定待检测图像中目标对象的实例信息时,包括:

基于目标对象的检测框以及初始特征图,提取初始特征图在检测框内的特征点的特征数据;

基于初始特征图在检测框内的特征点的特征数据,确定待检测图像中目标对象的实例信息。

在一种可能的实施方式中,目标检测装置1200还包括神经网络训练模块1204,神经网络训练模块1204用于:

训练用于进行目标检测的神经网络,神经网络利用包含了标注目标样本对象的样本图片训练得到。

在一种可能的实施方式中,神经网络训练模块1204用于按照以下步骤训练神经网络:

获取样本图像;

基于样本图像,确定样本角点在样本图像中的角点位置信息以及各个样本角点对应的向心偏移张量,样本角点表征样本图像中的目标样本对象的位置;

基于各个样本角点在样本图像中的角点位置信息及各个样本角点对应的向心偏移张量,预测样本图像中的目标样本对象;

基于预测的样本图像中的目标样本对象和样本图像中的标注目标样本对象,对神经网络的网络参数值进行调整。

对应于图2中的目标检测方法,本公开实施例还提供了一种电子设备1300,如图13所示,为本公开实施例提供的电子设备1300结构示意图,包括:

处理器1301、存储器1302、和总线1303;存储器1302用于存储执行指令,包括内存13021和外部存储器13022;这里的内存13021也称内存储器,用于暂时存放处理器1301中的运算数据,以及与硬盘等外部存储器13022交换的数据,处理器1301通过内存13021与外部存储器13022进行数据交换,当电子设备1300运行时,处理器1301与存储器1302之间通过总线1303通信,机器可读指令被处理器1301执行时执行如下处理:

获取待检测图像;

基于待检测图像,确定角点在待检测图像中的角点位置信息以及各个角点对应的向心偏移张量,角点表征待检测图像中的目标对象的位置;

基于各个角点在待检测图像中的角点位置信息及各个角点对应的向心偏移张量,确定待检测图像中的目标对象。

本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中的目标检测方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。

本公开实施例所提供的目标检测方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行上述方法实施例中所述的目标检测方法的步骤,具体可参见上述方法实施例,在此不再赘述。

本公开实施例还提供一种计算机程序,该计算机程序被处理器执行时实现前述实施例的任意一种方法。该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(softwaredevelopmentkit,sdk)等等。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

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

另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。


技术特征:

1.一种目标检测方法,其特征在于,包括:

获取待检测图像;

基于所述待检测图像,确定角点在所述待检测图像中的角点位置信息以及各个角点对应的向心偏移张量,所述角点表征所述待检测图像中的目标对象的位置;

基于各个角点在所述待检测图像中的角点位置信息及各个角点对应的向心偏移张量,确定所述待检测图像中的目标对象。

2.根据权利要求1所述的目标检测方法,其特征在于,所述基于所述待检测图像,确定角点在待检测图像中的角点位置信息以及各个角点对应的向心偏移张量,包括:

对所述待检测图像进行特征提取,得到所述待检测图像对应的初始特征图;

对所述初始特征图进行角点池化处理,得到角点池化后的特征图;

基于所述角点池化后的特征图,确定各个角点在所述待检测图像中的角点位置信息,以及各个角点对应的向心偏移张量。

3.根据权利要求2所述的目标检测方法,其特征在于,所述基于所述角点池化后的特征图,确定各个角点在所述待检测图像中的角点位置信息,包括:

基于所述角点池化后的特征图,生成所述待检测图像对应的角点热力图;

基于所述角点热力图,确定所述角点热力图中每个特征点作为角点的概率值,并基于每个特征点作为角点的概率值,从所述特征点中筛选出所述角点;

获取筛选出的各个角点在所述角点热力图中的位置信息、以及各个角点对应的局部偏移信息,所述局部偏移信息用于表示该角点所表征的真实物理点在所述角点热力图中的位置偏移信息;

基于获取到的各个角点在所述角点热力图中的位置信息、各个角点对应的局部偏移信息、以及所述角点热力图和所述待检测图像之间的尺寸比例,确定各个角点在所述待检测图像中的角点位置信息。

4.根据权利要求2或3所述的目标检测方法,其特征在于,基于所述角点池化后的特征图,确定各个角点对应的向心偏移张量,包括:

基于所述角点池化后的特征图,确定所述角点池化后的特征图中的每个特征点对应的导向偏移张量,每个特征点对应的导向偏移张量表征由该特征点指向所述待检测图像中的目标对象中心点的偏移张量;

基于每个特征点对应的所述导向偏移张量,确定该特征点的偏移域信息;所述偏移域信息中包含与该特征点关联的多个初始特征点分别指向各自对应的偏移后特征点的偏移张量;

基于所述角点池化后的特征图,以及该角点池化后的特征图中的特征点的偏移域信息,对所述角点池化后的特征图中的特征点的特征数据进行调整,得到调整后的特征图;

基于所述调整后的特征图,确定各个角点对应的向心偏移张量。

5.根据权利要求3所述的目标检测方法,其特征在于,所述待检测图像对应的角点热力图包括多个通道分别对应的角点热力图,每个所述通道对应一种预设对象类别;所述基于所述角点热力图,确定所述角点热力图中每个特征点作为角点的概率值之后,所述检测方法还包括:

针对所述多个通道中的每个通道,基于该通道对应的角点热力图中每个特征点作为角点的概率值,确定该通道对应的角点热力图中是否存在所述角点;

若存在,则确定所述待检测图像中包含该通道对应的预设对象类别的目标对象。

6.根据权利要求1所述的目标检测方法,其特征在于,所述基于各个角点在所述待检测图像中的角点位置信息及各个角点对应的向心偏移张量,确定所述待检测图像中的目标对象,包括:

基于各个角点在所述待检测图像中的角点位置信息和各个角点对应的向心偏移张量,确定所述待检测图像中目标对象的检测框。

7.根据权利要求6所述的目标检测方法,其特征在于,所述基于各个角点在所述待检测图像中的角点位置信息和各个角点对应的向心偏移张量,确定所述待检测图像中目标对象的检测框,包括:

基于各个角点在所述待检测图像中的角点位置信息,筛选能够构成候选检测框的候选角点对;

基于每个候选角点对中每个角点在所述待检测图像中的角点位置信息和该角点对应的向心偏移张量,确定该角点指向的中心点位置信息;

基于每个候选角点对中每个角点在所述待检测图像中的角点位置信息,确定该候选角点对所对应的中心区域信息;

基于每个候选角点对中每个角点指向的中心点位置信息以及该候选角点对所对应的中心区域信息,在所述候选检测框中确定所述目标对象的检测框。

8.根据权利要求7所述的目标检测方法,其特征在于,针对每个候选角点对,基于该候选角点对中每个角点的角点位置信息,确定该候选角点对所对应的中心区域信息,包括:

基于该候选角点对的每个角点的角点位置信息,确定表征该候选角点对所对应的中心区域框的角点位置信息;

基于所述中心区域框的角点位置信息,确定该候选角点对所对应的中心区域框的坐标范围。

9.根据权利要求7或8所述的目标检测方法,其特征在于,所述基于每个候选角点对中每个角点指向的中心点位置信息以及该候选角点对所对应的中心区域信息,在所述候选检测框中确定所述目标对象的检测框,包括:

基于每个候选角点对中每个角点指向的中心点位置信息,以及该候选角点对所对应的中心区域信息,确定有效候选角点对;

基于所述有效候选角点对中每个角点指向的中心点位置信息、所述有效候选角点对所对应的中心区域信息、以及所述有效候选角点对中每个角点对应的概率值,确定每个有效候选角点对所对应的候选检测框的分值;每个角点对应的概率值用于表示该角点在角点热力图中对应的特征点作为角点的概率值;

基于每个有效候选角点对所对应的候选检测框的分值、以及相邻候选检测框之间的重叠区域大小,在所述候选检测框中确定所述目标对象的检测框。

10.根据权利要求6所述的目标检测方法,其特征在于,所述确定所述待检测图像中目标对象的检测框之后,所述目标检测方法还包括:

基于所述目标对象的检测框和对所述待检测图像进行特征提取得到的初始特征图,确定所述待检测图像中所述目标对象的实例信息。

11.根据权利要求10所述的目标检测方法,其特征在于,所述基于所述目标对象的检测框和对所述待检测图像进行特征提取得到的初始特征图,确定所述待检测图像中所述目标对象的实例信息,包括:

基于所述目标对象的检测框以及所述初始特征图,提取所述初始特征图在所述检测框内的特征点的特征数据;

基于所述初始特征图在所述检测框内的特征点的特征数据,确定所述待检测图像中所述目标对象的实例信息。

12.根据权利要求1至11任一所述的目标检测方法,其特征在于,所述目标检测方法是由神经网络实现,所述神经网络利用包含了标注目标样本对象的样本图片训练得到。

13.根据权利要求12所述的目标检测方法,其特征在于,所述神经网络采用以下步骤训练得到:

获取样本图像;

基于所述样本图像,确定样本角点在样本图像中的角点位置信息及各个样本角点对应的向心偏移张量,所述样本角点表征所述样本图像中的目标样本对象的位置;

基于各个样本角点在所述样本图像中的角点位置信息及各个样本角点对应的向心偏移张量,预测所述样本图像中的目标样本对象;

基于预测的所述样本图像中的目标样本对象和所述样本图像中的标注目标样本对象,对所述神经网络的网络参数值进行调整。

14.一种目标检测装置,其特征在于,包括:

获取模块,用于获取待检测图像;

确定模块,用于基于所述待检测图像,确定角点在所述待检测图像中的角点位置信息以及各个角点对应的向心偏移张量,所述角点表征所述待检测图像中的目标对象的位置;

检测模块,用于基于各个角点在所述待检测图像中的角点位置信息及各个角点对应的向心偏移张量,确定所述待检测图像中的目标对象。

15.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至13任一所述的目标检测方法的步骤。

16.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至13任一所述的目标检测方法的步骤。

技术总结
本公开提供了一种目标检测方法、装置、电子设备及存储介质,其中,该目标检测方法包括:获取待检测图像;基于所述待检测图像,确定角点在所述待检测图像中的角点位置信息以及各个角点对应的向心偏移张量,所述角点表征所述待检测图像中的目标对象的位置;基于各个角点在所述待检测图像中的角点位置信息及各个角点对应的向心偏移张量,确定所述待检测图像中的目标对象。

技术研发人员:王飞;钱晨
受保护的技术使用者:上海商汤临港智能科技有限公司
技术研发日:2020.01.22
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-53576.html

最新回复(0)