目标检测方法、系统、设备及存储介质与流程

文档序号:25091573发布日期:2021-05-18 20:32阅读:83来源:国知局
目标检测方法、系统、设备及存储介质与流程

1.本发明涉及数据处理技术领域,尤其涉及一种目标检测方法、系统、设备及存储介质。


背景技术:

2.目前,基于二维图像的目标检测方法已经有了比较广泛的应用。例如,在应用于对道路的检测时,可以实现对道路上的行人、车辆、障碍物等目标物检测。然而,在实际应用场景中,仅仅依靠二维图像来进行目标检测会丢失一些重要信息,无法满足实际场景的需求。现有技术中尚没有一种基于三维信息的、高精度的目标检测方法。


技术实现要素:

3.针对现有技术中的问题,本发明的目的在于提供一种目标检测方法、系统、设备及存储介质,基于三维点云数据实现目标检测,检测精度高,检测速度快。
4.本发明实施例提供一种目标检测方法,包括如下步骤:
5.获取点云检测数据,确定x

y平面内的二维点云图像;
6.将所述二维点云图像划分为多个网格;
7.获取所述多个网格中非空网格的张量,所述非空网格的张量包括所述网格中各个点的位置信息和反射率以及所述网格中点云的数量;
8.基于所述非空网格的张量确定所述二维点云图像的张量;
9.将所述二维点云图像的张量输入特征提取网络,得到所述特征提取网络输出的特征图;
10.将所述特征图输入目标检测网络,得到所述目标检测网络输出的目标类别和检测框位置。
11.在一些实施例中,获取所述多个网格中非空网格的张量,包括如下步骤:
12.计算所述非空网格中所有点的算术平均中心以及所有点到所述算术平均中心的偏移量;
13.获取所述多个网格中的非空网格的张量,所述非空网格的张量包括所述非空网格中算数中心的坐标值、各个点的三维坐标值、反射率、各个点到所述算数中心的偏移量以及所述网格中的点云数量。
14.在一些实施例中,基于所述非空网格的张量确定所述二维点云图像的张量,包括如下步骤:
15.基于所述非空网格的张量得到所述非空网格中各个点的点位特征值;
16.基于所述非空网格中各个点的点位特征值确定所对应的非空网格的网格特征值;
17.基于所述非空网格在所述二维点云图像中的位置,将所述非空网格的网格特征值填入到所述二维点云图像的对应位置,得到所述二维点云图像的张量。
18.在一些实施例中,基于所述非空网格的张量得到所述非空网格中各个点的点位特
征值,包括如下步骤:
19.将所述非空网格的张量输入信息提取网络,得到所述非空网格中各个点的点位特征值。
20.在一些实施例中,基于所述非空网格中各个点的点位特征值确定所对应的非空网格的网格特征值,包括如下步骤:
21.对于各个所述非空网格,选择其中所有点的点位特征值的最大值,作为该非空网格的网格特征值。
22.在一些实施例中,所述二维点云图像的张量中,对应于空网格的位置填充为预设填充值。
23.在一些实施例中,所述特征提取网络包括第一子网络和第二子网络,将所述二维点云图像的张量输入特征提取网络,得到所述特征提取网络输出的特征图,包括如下步骤:
24.将所述二维点云图像的张量输入特征提取网络;
25.所述第一子网络对所述二维点云图像的张量进行卷积和下采样,得到多种尺寸的第一特征图;
26.所述第二子网络用于对所述多种尺寸的第一特征图进行反卷积和上采样,得到多个第二特征图;
27.将所述第二特征图进行合并,得到所述二维点云图像的特征图。
28.在一些实施例中,所述目标检测网络基于总损失函数训练得到,所述总损失函数包括检测框位置损失函数、检测框分类损失函数和检测框朝向分类损失函数。
29.在一些实施例中,所述目标检测网络包括多个检测分支,所述多个检测分支分别用于预测各个目标类别的检测框位置尺寸和检测框朝向。
30.在一些实施例中,各个所述检测分支的损失函数包括该类别的检测框位置损失函数、检测框分类损失函数和检测框朝向分类损失函数。
31.在一些实施例中,得到所述目标检测网络输出的目标类别和检测框位置,包括如下步骤:
32.获取所述目标检测网络输出的目标类别、检测框位置和各个检测框的置信度;
33.对于同一目标类别的检测框,基于所述置信度采用非极大抑制方法去除冗余检测框。
34.在一些实施例中,所述采用非极大抑制方法去除冗余检测框,包括如下步骤:
35.将每个目标类别的检测框投影到x

y平面,并按照置信度对每个目标类别的检测框从高到低排序;
36.对于一目标类别,选择置信度最高的检测框,计算剩余检测框与置信度最高的检测框的面积交并比,去除交并比大于预设阈值的检测框,并重复执行当前步骤,至所有检测框已处理完成。
37.本发明实施例还提供一种目标检测系统,用于实现所述的目标检测方法,所述系统包括:
38.数据采集模块,用于获取点云检测数据,确定x

y平面内的二维点云图像;
39.张量获取模块,用于将所述二维点云图像划分为多个网格,获取所述多个网格中非空网格的张量,所述非空网格的张量包括所述网格中各个点的位置信息和反射率以及所
述网格中点云的数量,以及基于所述非空网格的张量确定所述二维点云图像的张量;
40.特征提取模块,用于将所述二维点云图像的张量输入特征提取网络,得到所述特征提取网络输出的特征图;
41.目标检测模块,用于将所述特征图输入目标检测网络,得到所述目标检测网络输出的目标类别和检测框位置。
42.本发明实施例还提供一种目标检测设备,包括:
43.处理器;
44.存储器,其中存储有所述处理器的可执行指令;
45.其中,所述处理器配置为经由执行所述可执行指令来执行所述的目标检测方法的步骤。
46.本发明实施例还提供一种计算机可读存储介质,用于存储程序,所述程序被处理器执行时实现所述的目标检测方法的步骤。
47.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
48.本发明的目标检测方法、系统、设备及存储介质具有如下有益效果:
49.本发明基于三维点云数据提取张量,转换为特征数据进行目标分类检测,实现了三维目标检测,充分利用三维点云数据中的三维数据信息,检测结果准确,检测速度快。
附图说明
50.通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。
51.图1是本发明一实施例的目标检测方法的流程图;
52.图2是本发明一实施例的特征提取网络的示意图;
53.图3是本发明一实施例的目标检测网络的示意图;
54.图4是本发明一实施例的目标检测系统的结构示意图;
55.图5是本发明一实施例的目标检测设备的结构示意图;
56.图6是本发明一实施例的计算机可读存储介质的结构示意图。
具体实施方式
57.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
58.此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
59.附图中所示的流程图仅是示例性说明,不是必须包括所有的步骤。例如,有的步骤
还可以分解,而有的步骤可以合并或部分合并,因此,实际执行的顺序有可能根据实际情况改变。
60.如图1所示,本发明实施例提供一种目标检测方法,包括如下步骤:
61.s100:获取点云检测数据,确定x

y平面内的二维点云图像;
62.s200:将所述二维点云图像划分为多个网格;
63.s300:获取所述多个网格中非空网格的张量,所述非空网格的张量包括所述网格中各个点的位置信息和反射率以及所述网格中点云的数量;
64.s400:基于所述非空网格的张量确定所述二维点云图像的张量;
65.s500:将所述二维点云图像的张量输入特征提取网络,得到所述特征提取网络输出的特征图;
66.s600:将所述特征图输入目标检测网络,得到所述目标检测网络输出的目标类别和检测框位置。
67.本发明的目标检测方法中,首先通过步骤s100采集三维点云数据,并通过步骤s200~s400基于三维点云数据提取张量,然后通过步骤s500将张量通过特征提取网络转换为特征数据后,通过步骤s600输入到目标检测网络中进行目标分类检测,实现了三维目标检测,充分利用三维点云数据中的三维数据信息,检测结果准确,检测速度快。
68.在将本发明的目标检测方法应用于道路检测时,所述目标检测方法可以部署于用于道路监测的服务器中,在对行人、车辆、障碍物等目标进行检测后,可以进一步对目标的位置、行为进行分析,用于后续的导航、道路规划、道路告警、违章分析等。
69.在所述步骤s100中,所述点云检测数据可以是激光雷达获得的点云检测数据,在该实施例中,以将该目标检测方法应用于道路检测为例来进行说明,所述点云检测数据即为通过设置于道路上的激光雷达检测得到的点云数据,但本发明不限于此,在其他的实施方式中,本发明的目标检测方法也可以应用于其他的场景中,例如室内场所的目标检测等,均属于本发明的保护范围之内。
70.所述步骤s100中,确定x

y平面内的二维点云图像,二维点云图像包括的信息有二维点云图像的宽度、高度、以及每个位置点的点云数量和点云信息。例如基于所述点云检测数据确定道路的平面点云图像。所述步骤s200:将所述二维点云图像划分为多个网格,即为将所述二维点云图像按照一定的大小均匀划分为多个网格。
71.在该实施例中,所述步骤s300:获取所述多个网格中非空网格的张量,包括如下步骤:
72.确定所述多个网格中非空网格的位置和数量p;此处非空网格指的即为该网格中具有至少一个点云位置点;
73.计算所述非空网格中所有点的算术平均中心以及所有点到所述算术平均中心的偏移量,此处算术平均中心即为一个非空网格中所有点的中心位置,此处所述非空网格中的各个点指的是根据所述点云检测数据得到的所述非空网格中的各个点云位置点;
74.获取所述多个网格中的非空网格的张量d
×
p
×
n,所述非空网格的张量中,d包括所述非空网格中算数中心的坐标值x
c
,y
c
,z
c
、各个点的三维坐标值x,y,z、各个点的反射率r、以及各个点到所述算数中心的偏移量x
p
,y
p
,n表示所述网格中的点云位置点的数量,p表示所述二维点云图像中非空网格的数量。
75.在该实施例中,所述步骤s400:基于所述非空网格的张量确定所述二维点云图像的张量,包括如下步骤:
76.基于所述非空网格的张量d
×
p
×
n得到所述非空网格中各个点的点位特征值;
77.基于所述非空网格中各个点的点位特征值确定所对应的非空网格的网格特征值;
78.基于所述非空网格在所述二维点云图像中的位置,将所述非空网格的网格特征值填入到所述二维点云图像的对应位置,得到所述二维点云图像的张量。
79.具体地,所述步骤s400:基于所述非空网格的张量确定所述二维点云图像的张量,可以采用如下步骤实现:
80.将所述非空网格的张量d
×
p
×
n输入信息提取网络,得到张量c1
×
p
×
n,其中,c1表示各个点云位置点的点位特征值;此处信息提取网络可以由一神经网络实现,例如采用一用于特征提取的卷积神经网络,预先基于样本数据训练好,用于提取各个点的点位特征值;
81.对于各个所述非空网格,选择其中所有点的点位特征值c1的最大值c2,作为该非空网格的网格特征值,得到张量c2
×
p;
82.然后,基于所述非空网格在所述二维点云图像中的位置,将所述非空网格的网格特征值填入到所述二维点云图像的对应位置,得到所述二维点云图像的张量c
×
h
×
w,其中,c表示所述二维点云图像中各个网格的网格特征值,h表示二维点云图像的高度,w表示二维点云图像的宽度。在所述二维点云图像的张量中,对应于非空网格位置填充值c=c2,对应于空网格的位置填充值c为预设填充值,例如采用0来填充。
83.如图2所示,在该实施例中,所述特征提取网络包括第一子网络和第二子网络。所述第一子网络自上而下减小特征图空间尺寸并增加通道数,网络每层进行卷积操作并进行下采样,得到不同尺寸的特征图,第二子网络分别对第一子网络输出的每个特征图进行反卷积上采样。
84.具体地,所述步骤s500:将所述二维点云图像的张量输入特征提取网络,得到所述特征提取网络输出的特征图,包括如下步骤:
85.将所述二维点云图像的张量输入特征提取网络;
86.所述第一子网络对所述二维点云图像的张量进行卷积和下采样,得到多种尺寸的第一特征图;
87.所述第二子网络用于对所述多种尺寸的第一特征图进行反卷积和上采样,得到多个第二特征图,多个第二特征图彼此之间的尺寸相同;
88.将尺寸相同的所述第二特征图进行合并,得到所述特征提取网络输出的所述二维点云图像的特征图,作为后续的目标检测网络的输入特征图。
89.在该实施例中,将所述二维点云图像的张量c
×
h
×
w输入特征提取网络的第一子网络,第一子网络共进行三次下采样,得到的特征图张量分别为c
×
h/2
×
w/2、2c
×
h/4
×
w/4、4c
×
h/8
×
w/8。第二子网络分别对每个特征图进行反卷积上采样,得到三个2c
×
h/2
×
w/2的特征图,并且将各层特征图按通道维度合并得到特征图f
s∈6c
×
h/2
×
w/2
,作为后续的目标检测网络的输入特征图。
90.通过如图2所示的特征提取网络的设计,本发明可以实现对二维点云图像的张量的特征更准确和快速地提取,有利于提高后续目标检测的准确度。
91.在该实施例中,为了提升检测效果,可以将所述目标检测网络包括多个检测分支,所述多个检测分支分别用于预测各个目标类别的检测框位置尺寸和检测框朝向。每个检测分支可以分别采用卷积神经网络来实现,例如通过卷积层来提取特征图,然后利用全连接层或其他的分类层实现分类。由此,本发明可以进一步实现多分类目标检测,采用一套检测体系,同时实现多种分类的目标检测,可以符合更多种检测需求,并且检测效率更高。
92.如图3所示,例如,在应用于道路检测时,先将检测目标按照尺寸聚合成三类,其中人、隔离路锥等小目标为一类,小汽车等中目标为一类,卡车、吊车等大目标为一类。所述目标检测网络分别包括三个目标检测分支:小目标检测分支、中目标检测分支和大目标检测分支,每个检测分支可以分别采用卷积层来获取一特征图,用来预测该检测分支的检测框位置尺寸和检测框朝向。具体地,将所述张量输入到所述目标检测网络后,可以得到三个用于目标分类的特征图用于预测目标类别、检测框位置尺寸以及检测框朝向(n
a
为每个位置锚点anchor框个数,7为预测值x,y,z,w,l,h,θ)。i表示第i个类别,i∈(1,m),m为检测分支的数量。
93.在该实施例中,各个所述检测分支的损失函数包括该类别的检测框位置损失函数、检测框分类损失函数和检测框朝向分类损失函数。即在所述目标检测网络进行训练时,对应于每个类别的检测分支,基于一总损失函数来迭代训练该检测分支。每个类别的检测分支的总损失函数包括该类别的检测框位置损失函数、检测框分类损失函数和检测框朝向分类损失函数。
94.具体地,每个检测分支的损失函数计算如下:
95.(1)标记的真实框与锚点框的定义形式为(x,y,z,w,l,h,θ),其中,(x,y,z)表示三维坐标值,(w,l,h)表示框的宽度、高度和高度,θ表示框相对于基准位置的旋转角度。
96.位置回归的残差值定义如下:
[0097][0098][0099]
δθ=sin(θ
gt

θ
a
)
[0100]
其中x
gt
,x
a
分别是真实框和锚点框a的x坐标值,y
gt
,y
a
分别是真实框和锚点框a的y坐标值,z
gt
,z
a
分别是真实框和锚点框a的z坐标值,w
gt
,w
a
分别是真实框和锚点框a的宽度,l
gt
,l
a
分别是真实框和锚点框a的长度,h
gt
,h
a
分别是真实框和锚点框a的高度,θ
gt
,θ
a
分别是真实框和锚点框a的旋转角度,
[0101]
检测框位置损失函数为:
[0102]
l
loc
=smoothl1(δx+δy+δz+δw+δl+δh+δθ)
[0103]
其中,smoothl1()为光滑函数。
[0104]
(2)检测框朝向分类损失函数定义为:
[0105]
l
dir
=crossentropy(d,d
gt
)
[0106]
其中,d为锚点框a的朝向,d
gt
为真实框的朝向,框的朝向定义为目标物面朝方向是
否为y轴正方向,如果为正方向则定义为1,反之为0。crossentropy()为交叉熵函数。
[0107]
(3)检测框分类损失函数定义如下:
[0108]
l
cls


α
a
(1

p
a
)
γ
logp
a
[0109]
其中p
a
为锚点框a属于该类别的概率,α
a
和γ均为预设系数,例如,α
a
=0.25、γ=2,但本发明不限于此。
[0110]
(4)总损失如下:
[0111][0112]
其中n
pos
是正样本的个数,β
loc
,β
cls
,β
dir
分别为预设系数,例如,β
loc
=2,β
cls
=1,β
dir
=0.2。
[0113]
在该实施例中,所述步骤s600:得到所述目标检测网络输出的目标类别和检测框位置,包括根据所述目标检测网络输出的目标类别和检测框位置确定检测到的目标的类别和目标位置。
[0114]
进一步地,考虑到检测框之间会有重合,还可以对所述目标检测网络的输出进行非极大值抑制处理。具体地,所述步骤s600:得到所述目标检测网络输出的目标类别和检测框位置,包括如下步骤:
[0115]
获取所述目标检测网络输出的目标类别、检测框位置和各个检测框的置信度;
[0116]
对于同一目标类别的检测框,基于所述置信度采用非极大抑制方法去除冗余检测框。
[0117]
在该实施例中,所述采用非极大抑制方法去除冗余检测框,包括如下步骤:
[0118]
将每个目标类别的检测框投影到x

y平面,并按照置信度对每个目标类别的检测框从高到低排序;
[0119]
对于一目标类别,选择置信度最高的检测框,计算剩余检测框与置信度最高的检测框的面积交并比,去除交并比大于预设阈值的检测框,并重复执行当前步骤,即对于剩下未处理的检测框,选择置信度最高的检测框,再判断剩余检测框是否要与该置信度最高的检测框合并,至所有检测框已处理完成。
[0120]
如图4所示,本发明实施例还提供一种目标检测系统,用于实现所述的目标检测方法,所述系统包括:
[0121]
数据采集模块m100,用于获取点云检测数据,确定x

y平面内的二维点云图像,所述二维点云图像包括的信息有二维点云图像的宽度、高度、以及每个位置点的点云数量和点云信息;
[0122]
张量获取模块m200,用于将所述二维点云图像划分为多个网格,获取所述多个网格中非空网格的张量,所述非空网格的张量包括所述网格中各个点的位置信息和反射率以及所述网格中点云的数量,以及基于所述非空网格的张量确定所述二维点云图像的张量;
[0123]
特征提取模块m300,用于将所述二维点云图像的张量输入特征提取网络,得到所述特征提取网络输出的特征图;
[0124]
目标检测模块m400,用于将所述特征图输入目标检测网络,得到所述目标检测网络输出的目标类别和检测框位置。
[0125]
本发明的目标检测方法中,首先通过数据采集模块m100采集三维点云数据,通过
张量获取模块m200基于三维点云数据提取张量,然后通过特征提取模块m300将张量通过特征提取网络转换为特征数据后,通过目标检测模块m400输入到目标检测网络中进行目标分类检测,实现了三维目标检测,充分利用三维点云数据中的三维数据信息,检测结果准确,检测速度快。
[0126]
数据采集模块m100获取所述点云检测数据,可以是所述数据采集模块m100从激光雷达获得点云检测数据。在该实施例中,以将该目标检测方法应用于道路检测为例来进行说明,所述数据采集模块m100即为通过设置于道路上的激光雷达检测得到的点云检测数据,但本发明不限于此,在其他的实施方式中,本发明的目标检测系统也可以应用于其他的场景中,例如室内场所的目标检测等,均属于本发明的保护范围之内。
[0127]
在将本发明的目标检测系统应用于道路检测时,所述目标检测系统可以部署于用于道路监测的服务器中,在对行人、车辆、障碍物等目标进行检测后,可以进一步对目标的位置、行为进行分析,用于后续的导航、道路规划、道路告警、违章分析等。所述目标检测系统可以与道路中的激光雷达进行通信,采集点云检测数据,也可以进一步与执行后续流程的服务器进行通信,将目标检测结果输出给下游服务器。
[0128]
所述张量获取模块m200将所述二维点云图像划分为多个网格,为基于所述二维点云图像的宽度和高度将所述二维点云图像均匀划分为多个网格。
[0129]
在该实施例中,所述张量获取模块m200采用如下步骤获取所述多个网格中非空网格的张量:
[0130]
确定所述多个网格中非空网格的位置和数量p;此处非空网格指的即为该网格中具有至少一个点云位置点;
[0131]
计算所述非空网格中所有点的算术平均中心以及所有点到所述算术平均中心的偏移量,此处算术平均中心即为一个非空网格中所有点的中心位置,此处所述非空网格中的各个点指的是根据所述点云检测数据得到的所述非空网格中的各个点云位置点;
[0132]
获取所述多个网格中的非空网格的张量d
×
p
×
n,所述非空网格的张量中,d包括所述非空网格中算数中心的坐标值x
c
,y
c
,z
c
、各个点的三维坐标值x,y,z、各个点的反射率r、以及各个点到所述算数中心的偏移量x
p
,y
p
,n表示所述网格中的点云位置点的数量,p表示所述二维点云图像中非空网格的数量。
[0133]
在该实施例中,所述张量获取模块m200采用如下步骤基于所述非空网格的张量确定所述二维点云图像的张量:
[0134]
将所述非空网格的张量d
×
p
×
n输入信息提取网络,得到张量c1
×
p
×
n,其中,c1表示各个点云位置点的点位特征值;此处信息提取网络可以由一神经网络实现,例如采用一用于特征提取的卷积神经网络,预先基于样本数据训练好,用于提取各个点的点位特征值;
[0135]
对于各个所述非空网格,选择其中所有点的点位特征值c1的最大值c2,作为该非空网格的网格特征值,得到张量c2
×
p;
[0136]
然后,基于所述非空网格在所述二维点云图像中的位置,将所述非空网格的网格特征值填入到所述二维点云图像的对应位置,得到所述二维点云图像的张量c
×
h
×
w,其中,c表示所述二维点云图像中各个网格的网格特征值,h表示二维点云图像的高度,w表示二维点云图像的宽度。在所述二维点云图像的张量中,对应于非空网格位置填充值c=c2,
对应于空网格的位置填充值c为预设填充值,例如采用0来填充。
[0137]
在该实施例中,所述特征提取网络包括第一子网络和第二子网络。所述特征提取模块m300采用如下步骤将所述二维点云图像的张量输入特征提取网络,得到所述特征提取网络输出的特征图:
[0138]
将所述二维点云图像的张量输入特征提取网络;
[0139]
所述第一子网络对所述二维点云图像的张量进行卷积和下采样,得到多种尺寸的第一特征图;
[0140]
所述第二子网络用于对所述多种尺寸的第一特征图进行反卷积和上采样,得到多个第二特征图,多个第二特征图彼此之间的尺寸相同;
[0141]
将尺寸相同的所述第二特征图进行合并,得到所述特征提取网络输出的所述二维点云图像的特征图,作为后续的目标检测网络的输入特征图。
[0142]
在该实施例中,所述目标检测网络包括多个检测分支,所述多个检测分支分别用于预测各个目标类别的检测框位置尺寸和检测框朝向。每个检测分支可以分别采用卷积神经网络来实现,例如通过卷积层来提取特征图,然后利用全连接层或其他的分类层实现分类。例如,在应用于道路检测时,先将检测目标按照尺寸聚合成三类,其中人、隔离路锥等小目标为一类,小汽车等中目标为一类,卡车、吊车等大目标为一类。所述目标检测网络分别包括三个目标检测分支:小目标检测分支、中目标检测分支和大目标检测分支,每个检测分支可以分别采用卷积层来获取一特征图,用来预测该检测分支的检测框位置尺寸和检测框朝向。由此,本发明可以进一步实现多分类目标检测,采用一套检测体系,同时实现多种分类的目标检测,可以符合更多种检测需求,并且检测效率更高。
[0143]
在该实施例中,所述目标检测系统还包括模型训练模块,用于基于损失函数训练所述目标检测网络。在所述目标检测网络进行训练时,对应于每个类别的检测分支,基于一总损失函数来迭代训练该检测分支。每个类别的检测分支的总损失函数包括该类别的检测框位置损失函数、检测框分类损失函数和检测框朝向分类损失函数。各个分支的总损失函数可以采用上述目标检测方法中损失函数的计算方式,在此不予赘述。
[0144]
在该实施例中,所述目标检测模块m400采用如下步骤得到所述目标检测网络输出的目标类别和检测框位置:
[0145]
获取所述目标检测网络输出的目标类别、检测框位置和各个检测框的置信度;
[0146]
将每个目标类别的检测框投影到x

y平面,并按照置信度对每个目标类别的检测框从高到低排序;
[0147]
对于一目标类别,选择置信度最高的检测框,计算剩余检测框与置信度最高的检测框的面积交并比,去除交并比大于预设阈值的检测框,并重复执行当前步骤,即对于剩下未处理的检测框,选择置信度最高的检测框,再判断剩余检测框是否要与该置信度最高的检测框合并,至所有检测框已处理完成。
[0148]
本发明实施例还提供一种目标检测设备,包括处理器;存储器,其中存储有所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行所述的目标检测方法的步骤。
[0149]
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完
全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“平台”。
[0150]
下面参照图5来描述根据本发明的这种实施方式的电子设备600。图5显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
[0151]
如图5所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同系统组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
[0152]
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述目标检测方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图1中所示的步骤。
[0153]
所述存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(rom)6203。
[0154]
所述存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
[0155]
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
[0156]
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
[0157]
所述目标检测设备中,所述存储器中的程序被处理器执行时实现所述的目标检测方法的步骤,因此,所述计算机存储介质也可以获得上述目标检测方法的技术效果。
[0158]
本发明实施例还提供一种计算机可读存储介质,用于存储程序,所述程序被处理器执行时实现所述的目标检测方法的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上执行时,所述程序代码用于使所述终端设备执行本说明书上述目标检测方法部分中描述的根据本发明各种示例性实施方式的步骤。
[0159]
参考图6所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(cd

rom)并包括程序代码,并可以在终端设备,例如个人电脑上执行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0160]
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd

rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0161]
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
[0162]
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0163]
所述计算机存储介质中的程序被处理器执行时实现所述的目标检测方法的步骤,因此,所述计算机存储介质也可以获得上述目标检测方法的技术效果。
[0164]
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1