CN112926461A - 神经网络训练、行驶控制方法及装置 - Google Patents
神经网络训练、行驶控制方法及装置 Download PDFInfo
- Publication number
- CN112926461A CN112926461A CN202110224337.0A CN202110224337A CN112926461A CN 112926461 A CN112926461 A CN 112926461A CN 202110224337 A CN202110224337 A CN 202110224337A CN 112926461 A CN112926461 A CN 112926461A
- Authority
- CN
- China
- Prior art keywords
- dimensional
- detected
- target
- pixel point
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012549 training Methods 0.000 title claims abstract description 146
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 122
- 238000000034 method Methods 0.000 title claims abstract description 101
- 238000002372 labelling Methods 0.000 claims abstract description 169
- 238000000605 extraction Methods 0.000 claims abstract description 19
- 238000001514 detection method Methods 0.000 claims description 173
- 238000004590 computer program Methods 0.000 claims description 11
- 235000004522 Pentaglottis sempervirens Nutrition 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 7
- 241001465754 Metazoa Species 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- WSNMPAVSZJSIMT-UHFFFAOYSA-N COc1c(C)c2COC(=O)c2c(O)c1CC(O)C1(C)CCC(=O)O1 Chemical compound COc1c(C)c2COC(=O)c2c(O)c1CC(O)C1(C)CCC(=O)O1 WSNMPAVSZJSIMT-UHFFFAOYSA-N 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 240000004050 Pentaglottis sempervirens Species 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Multimedia (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Image Analysis (AREA)
Abstract
本公开提供了一种神经网络训练、行驶控制方法、装置、电子设备及存储介质,该方法包括:获取训练样本;基于训练样本中待检测对象的二维标注框的尺度,确定二维标注框内每个像素点匹配的目标神经网络中的子网络结构;其中,不同子网络结构用于对训练样本中不同尺度的二维标注框内的像素点进行特征提取;确定训练样本中二维标注框内的至少一个像素点对应的、待检测对象的三维标注数据;基于各个子网络结构分别对应的、具有三维标注数据的至少一个像素点,训练目标神经网络中的每个子网络结构,得到训练后的目标神经网络。
Description
技术领域
本公开涉及深度学习技术领域,具体而言,涉及一种神经网络训练、行驶控制方法、装置、电子设备及存储介质。
背景技术
目标检测是计算机视觉的核心任务之一,在自动驾驶、移动机器人等领域内被广泛应用。目标检测的主要任务是从图像中定位感兴趣的目标,并确定每个目标的类别和边界框。由于三维场景中目标的深度信息的确定较为困难,使得目标检测在三维场景中的应用效果不佳。比如,在自动驾驶领域内,要实现自动驾驶车辆在道路上平稳安全地行驶,必须由自动驾驶车辆确定周围每个对象的精确三维信息。
因此,提出一种能够较准确的确定目标的三维检测结果的方法越来越重要。
发明内容
有鉴于此,本公开至少提供一种神经网络训练、行驶控制方法、装置、电子设备及存储介质。
第一方面,本公开提供了一种神经网络训练方法,包括:
获取训练样本;
基于所述训练样本中待检测对象的二维标注框的尺度,确定所述二维标注框内每个像素点匹配的目标神经网络中的子网络结构;其中,不同子网络结构用于对所述训练样本中不同尺度的所述二维标注框内的像素点进行特征提取;
确定所述训练样本中所述二维标注框内的至少一个像素点对应的、所述待检测对象的三维标注数据;
基于各个所述子网络结构分别对应的、具有所述三维标注数据的至少一个像素点,训练所述目标神经网络中的每个所述子网络结构,得到训练后的目标神经网络。
上述方法中,通过确定二维标注框内每个像素点匹配的目标神经网络中的子网络结构,使用不同尺度的二维标注框内的像素点,对对应的子网络结构进行训练,使得训练后的不同子网络结构可以对待检测图像中不同尺度的目标对象进行特征提取和三维目标检测,由于多个不同子网络结构可以进行较为密集的多层级特征提取和预测,使得利用训练样本对目标神经网络的每个子网络结构进行训练后,可以得到性能较好的用于进行三维目标检测的目标神经网络。
一种可能的实施方式中,所述基于所述训练样本中待检测对象的二维标注框的尺度,确定所述二维标注框内每个像素点匹配的子网络结构,包括:
针对所述二维标注框内的每个像素点,基于所述二维标注框的尺度,确定所述像素点与所述二维标注框的每条边之间的最长第一距离;
基于所述最长第一距离、和每个子网络结构对应的预设的距离范围,确定与所述像素点匹配的子网络结构。
采用上述方法,可以针对二维标准框内每个像素点,基于二维标注框的尺度,确定像素点与二维标注框的每条边之间的最长第一距离,利用最长第一距离,为该像素点确定匹配的子网络结构,将具有不同的最长第一距离的像素点,匹配不同的子网络结构,实现像素级别的匹配,以便在利用子网络结构对应的多个像素点对子网络结构进行训练后,训练后的不同子网络结构可以对待检测图像中不同尺度的目标对象进行特征提取和三维目标检测。
一种可能的实施方式中,所述确定所述训练样本中所述二维标注框内的至少一个像素点对应的、所述待检测对象的三维标注数据,包括:
基于与所述二维标注框内像素点分别匹配的所述子网络结构,确定所述训练样本中所述二维标注框内属于前景点的目标像素点;
确定所述目标像素点对应的、所述待检测对象的所述三维标注数据。
一种可能的实施方式中,所述基于与所述二维标注框内像素点分别匹配的所述子网络结构,确定所述训练样本中所述二维标注框内属于前景点的目标像素点,包括:
针对所述二维标注框内的每个像素点,确定所述像素点与所述二维标注框内所述待检测对象的中心点之间的第二距离;
基于与所述像素点匹配的所述子网络结构的步幅和预设的半径参数,确定所述像素点对应的距离阈值;
在所述第二距离小于所述距离阈值的情况下,确定所述像素点为所述目标像素点。
考虑到在像素点与待检测对象的中心点的距离较近时,该像素点属于前景点的概率较大,该像素点的特征信息较为可靠。因此,这里可以基于与像素点匹配的子网络结构的步幅和预设的半径参数,确定像素点对应的距离阈值;根据像素点与二维标注框内待检测对象的中心点之间的第二距离、和确定的距离阈值,确定像素点是否属于前景点,从而较准确的确定二维检框内的前景点。
一种可能的实施方式中,所述三维标注数据包括以下数据中的至少一种:
用于表征像素点与对应的待检测对象的中心点之间偏差的偏移量、像素点对应的待检测对象的中心点的深度、三维检测框的尺寸、三维检测框的朝向、朝向类别、待检测对象的速度、用于表征像素点与对应的待检测对象的中心点之间相近程度的中心度、待检测对象的目标类别、表征待检测对象状态的属性类别。
这里,三维标注数据中包括的数据类型较为丰富、多样。
一种可能的实施方式中,在基于所述训练样本中待检测对象的二维标注框的尺度,确定所述二维标注框内每个像素点匹配的目标神经网络中的子网络结构之前,还包括:
在所述训练样本中存在同一像素点位于多个二维标注框内的情况下,确定该像素点分别与每个所述二维标注框中待检测对象的中心点之间的第三距离;
将对应所述第三距离最小的二维标注框,作为该像素点对应的二维标注框。
采用上述方法,在利用训练样本对子网络结构进行训练时,一个像素点仅可以对应一个三维标注数据,故在同一像素点位于多个二维标注框时,可以根据同一像素点分别与每个二维标注框中待检测对象的中心点之间的第三距离,较准确的确定同一像素点对应的二维标注框,进一步较准确的确定同一像素点的三维标注数据。
一种可能的实施方式中,所述目标神经网络中每个子网络结构对应一个利用所述样本数据训练得到的回归指标,所述回归指标用于对与所述子网络结构相连的检测头网络输出的三维预测数据中的预测回归数据进行倍数调整;
其中,所述检测头网络包括分类网络和回归网络,所述检测头网络用于基于每个子网络结构输出的特征图,确定所述子网络结构对应的三维预测数据,所述三维预测数据包括所述分类网络输出的预测类别数据、和所述回归网络输出的预测回归数据。
考虑到检测头网络为多个子网络结构共享的,即多个子网络结构连接相同的检测头网络,由于不同子网络结构用于对不同尺度的待检测对象进行特征提取和三维目标预测,故这里可以为每个子网络结构训练一个回归指标,使用回归指标用于对与子网络结构相连的检测头网络输出的三维预测数据中的预测回归数据进行倍数调整,使得调整后的预测回归数据与子网络结构匹配。
一种可能的实施方式中,在得到训练后的目标神经网络之后,还包括:
获取待检测图像;
利用训练后的所述目标神经网络对所述待检测图像进行检测,确定所述待检测图像中包括的至少一个目标对象的三维检测结果。
采用上述方法,可以利用性能较好的、训练后的目标神经网络对待检测图像进行检测,得到较为准确的至少一个目标对象的三维检测结果。
一种可能的实施方式中,所述利用所述目标神经网络对所述待检测图像进行检测,确定所述待检测图像中包括的至少一个目标对象的三维检测结果,包括:
利用所述目标神经网络对所述待检测图像进行检测,生成所述待检测图像中多个像素点对应的三维检测数据;
基于多个像素点分别对应的三维检测数据,确定所述待检测图像中包括的多个候选三维检测框信息;
基于所述多个候选三维检测框信息,确定多个候选三维检测框在所述待检测图像对应的鸟瞰图中的投影框信息;
基于多个所述投影框信息,确定所述待检测图像中包括的至少一个目标对象的三维检测结果。
采用上述方法,通过确定多个候选三维检测框在待检测图像对应的鸟瞰图中的投影框信息,基于多个投影框信息,较准确的确定待检测图像中包括的至少一个目标对象的三维检测结果。
一种可能的实施方式中,所述基于多个所述投影框信息,确定所述待检测图像中包括的至少一个目标对象的三维检测结果,包括:
基于每个候选三维检测框信息指示的目标类别对应的置信度和中心度,确定与所述候选三维检测框对应的投影框的目标置信度;其中,所述中心度用于表征所述候选三维检测框对应的像素点、与对应的待检测对象的中心点之间的相近程度;
基于各个投影框分别对应的目标置信度,确定所述待检测图像中包括的至少一个目标对象的三维检测结果。
考虑到,中心度用于表征候选三维检测框对应的像素点、与对应的待检测对象的中心点之间的相近程度,中心度越大,则该像素点距离待检测对象的中心越近,则该像素点的特征信息可靠性较高,生成的该像素点对应的三维检测框信息的可靠性越高;故可以基于每个候选三维检测框信息指示的目标类别对应的置信度和中心度,确定与候选三维检测框对应的投影框的目标置信度;再利用目标置信度,较准确的确定待检测图像中包括的至少一个目标对象的三维检测结果。
第二方面,本公开提供了一种行驶控制方法,包括:
获取行驶装置在行驶过程中采集的道路图像;
利用第一方面任一项所述的神经网络训练方法训练得到的目标神经网络,对所述道路图像进行检测,得到所述道路图像中包括的目标对象的目标三维位姿数据;
基于所述道路图像中包括的目标对象的目标三维位姿数据,控制所述行驶装置。
以下装置、电子设备等的效果描述参见上述方法的说明,这里不再赘述。
第三方面,本公开提供了一种神经网络训练装置,包括:
第一获取模块,用于获取训练样本;
第一确定模块,用于基于所述训练样本中待检测对象的二维标注框的尺度,确定所述二维标注框内每个像素点匹配的目标神经网络中的子网络结构;其中,不同子网络结构用于对所述训练样本中不同尺度的所述二维标注框内的像素点进行特征提取;
第二确定模块,用于确定所述训练样本中所述二维标注框内的至少一个像素点对应的、所述待检测对象的三维标注数据;
训练模块,用于基于各个所述子网络结构分别对应的、具有所述三维标注数据的至少一个像素点,训练所述目标神经网络中的每个所述子网络结构,得到训练后的目标神经网络。
第四方面,本公开提供了一种行驶控制装置,包括:
第二获取模块,用于获取行驶装置在行驶过程中采集的道路图像;
检测模块,用于利用第一方面任一项所述的神经网络训练方法训练得到的目标神经网络,对所述道路图像进行检测,得到所述道路图像中包括的目标对象的目标三维位姿数据;
控制模块,用于基于所述道路图像中包括的目标对象的目标三维位姿数据,控制所述行驶装置。
第五方面,本公开提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如上述第一方面或任一实施方式所述的神经网络训练方法的步骤;或执行如上述第二方面所述的行驶控制方法的步骤。
第六方面,本公开提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上述第一方面或任一实施方式所述的神经网络训练方法的步骤;或执行如上述第二方面所述的行驶控制方法的步骤。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的一种神经网络训练方法的流程示意图;
图2示出了本公开实施例所提供的一种神经网络训练方法中,训练样本的二维标注框的示意图;
图3示出了本公开实施例所提供的一种神经网络训练方法中,包括多个二维标注框的训练样本的示意图;
图4a示出了本公开实施例所提供的一种神经网络训练方法中,待检测对象的朝向类别的示意图;
图4b示出了本公开实施例所提供的一种神经网络训练方法中,待检测对象的朝向类别的示意图;
图5示出了本公开实施例所提供的一种神经网络训练方法中,目标神经网络的架构示意图;
图6示出了本公开实施例所提供的一种行驶控制方法的流程示意图;
图7示出了本公开实施例所提供的一种神经网络训练装置的架构示意图;
图8示出了本公开实施例所提供的一种行驶控制装置的架构示意图;
图9示出了本公开实施例所提供的一种电子设备的结构示意图;
图10示出了本公开实施例所提供的一种电子设备的结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
目标检测是计算机视觉的核心任务之一,在自动驾驶、移动机器人等领域内被广泛应用。目标检测的主要任务是从图像中定位感兴趣的目标,并确定每个目标的类别和边界框。由于三维场景中目标的深度信息的确定较为困难,使得目标检测在三维场景中的应用效果不佳。比如,在自动驾驶领域内,要实现自动驾驶车辆在道路上平稳安全地行驶,必须由自动驾驶车辆确定周围每个对象的精确三维信息。
为了解决上述问题,本公开实施例提供了一种神经网络训练、行驶控制方法、装置、电子设备及存储介质。
针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
为便于对本公开实施例进行理解,首先对本公开实施例所公开的一种神经网络训练方法、行驶控制方法进行详细介绍。本公开实施例所提供的神经网络训练方法、行驶控制方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字助理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该神经网络训练方法、行驶控制方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
参见图1所示,为本公开实施例所提供的神经网络训练方法的流程示意图,包括S101-S104,其中:
S101,获取训练样本。
S102,基于训练样本中待检测对象的二维标注框的尺度,确定二维标注框内每个像素点匹配的目标神经网络中的子网络结构;其中,不同子网络结构用于对训练样本中不同尺度的二维标注框内的像素点进行特征提取。
S103,确定训练样本中二维标注框内的至少一个像素点对应的、待检测对象的三维标注数据。
S104,基于各个子网络结构分别对应的、具有三维标注数据的至少一个像素点,训练目标神经网络中的每个子网络结构,得到训练后的目标神经网络。
上述方法中,通过确定二维标注框内每个像素点匹配的目标神经网络中的子网络结构,使用不同尺度的二维标注框内的像素点,对对应的子网络结构进行训练,使得训练后的不同子网络结构可以用于对待检测图像中不同尺度的目标对象进行特征提取和三维目标检测,由于多个不同子网络结构可以进行较为密集的多层级特征提取和预测,使得利用训练样本对目标神经网络的每个子网络结构进行训练后,得到性能较好的用于进行三维目标检测的目标神经网络。
下述对S101-S104进行具体说明。
针对S101:
获取训练样本,训练样本中包括多种待检测对象对应的样本图像。示例性的。在该方法应用于自动驾驶领域内时,待检测图像可以包括机动车、非机动车、行人、动物等。
训练样本中包括的每个待检测对象对应一个二维标注框,该二维标注框可以为人工进行标注的,也可以为使用训练后的二维检测神经网络进行自动标注的。每个二维标注框对应一个尺寸,比如,该二维标注框的尺寸可以为56×512、512×218、1024×218、1024×1024等。
针对S102:
目标神经网络中包括金字塔网络结构,该金字塔网络结构中包括多个不同的子网络结构,不同的子网络结构用于对训练样本中不同尺度的二维标注框内的像素点进行特征提取。
示例性的,可以基于训练样本中二维标注框的尺度指示的最大长度,确定二维标注框内每个像素点匹配的子网络结构。比如,可以为每个子网络结构设置一个尺度范围,子网络结构一对应的尺度范围为(218-512],子网络结构二对应的尺度范围(512-1024],若二维标注框一的尺度为512×218,该二维标注框的尺度指示的最大长度为512,故二维标注框一中每个像素点匹配子网络结构一。
在另一可选实施方式中,基于训练样本中待检测对象的二维标注框的尺度,确定二维标注框内每个像素点匹配的子网络结构,包括:
S1021,针对二维标注框内的每个像素点,基于二维标注框的尺度,确定像素点与二维标注框的每条边之间的最长第一距离;
S1022,基于最长第一距离、和每个子网络结构对应的预设的距离范围,确定与像素点匹配的子网络结构。
采用上述方法,可以针对二维标准框内每个像素点,基于二维标注框的尺度,确定像素点与二维标注框的每条边之间的最长第一距离,利用最长第一距离,为该像素点确定匹配的子网络结构,将具有不同的最长第一距离的像素点,匹配不同的子网络结构,实现像素级别的匹配,以便在利用子网络结构对应的多个像素点对子网络结构进行训练后,训练后的不同子网络结构可以对待检测图像中不同尺度的目标对象进行特征提取和三维目标检测。
在S1021中,针对二维标注框内每个像素点,基于二维标注框的尺度和该像素点的位置信息,可以确定该像素点与二维标注框的每条边之间的第一距离,即可以得到该像素点分别距离四条边之间的第一距离。参见图2所示一种二维标注框的示意图,该图中像素点21距离四条边的第一距离分别为t、b、l、r,可知l的值最大,故该第一距离l为最长第一距离。
在S1022中,可以为每个子网络结构设置一对应的距离范围,比如,子网络结构一对应的距离范围为(0-256]、子网络结构二对应的距离范围为(256-512]、子网络结构三对应的距离范围为(512-1024],在像素点A对应的最长第一距离为500时,确定像素点A匹配子网络结构二;在像素点B对应的最长第一距离为218时,确定像素点B匹配子网络结构一。
通过S1021和S1022可以得到二维标注框内每个像素点匹配的子网络结构,即得到了每个子网络结构对应的多个像素点。
一种可选实施方式中,在基于训练样本中待检测对象的二维标注框的尺度,确定二维标注框内每个像素点匹配的目标神经网络中的子网络结构之前,还包括:
步骤一,在训练样本中存在同一像素点位于多个二维标注框内的情况下,确定该像素点分别与每个二维标注框中待检测对象的中心点之间的第三距离;
步骤二,将对应第三距离最小的二维标注框,作为该像素点对应的二维标注框。
采用上述方法,在利用训练样本中对子网络结构进行训练时,一个像素点仅可以对应一个三维标注数据,故在同一像素点位于多个二维标注框时,可以根据同一像素点分别与每个二维标注框中待检测对象的中心点之间的第三距离,较准确的确定同一像素点对应的二维标注框,进一步较准确的确定同一像素点的三维标注数据。
该训练样本中存在多个待检测对象,每个待检测对象对应一个二维标注框,且二维标注框之间存在重叠,位于重叠区域内的像素点位于多个二维标注框,故需要从多个二维标注框中,为该像素点确定一个对应的二维标注框。
具体实施时,可以确定该像素点与每个二维标注框中待检测对象的中心点之间的第三距离,即确定该像素点与该检测对象的中心点之间的第三距离。比如,可以通过欧式距离确定方式,确定该像素点与该检测对象的中心点之间的第三距离。
待检测对象的中心点可以为待检测对象在真实场景的中心投影至训练样本后确定的投影点。示例性的,可以使用训练样本对应的采集设备的内参矩阵,确定待检测对象的中心点的坐标。
参见图3所示,该图中包括待检测对象一对应的二维标注框31,位于二维标注框31内待检测对象一的中心点311,以及待检测对象二对应的二维标注框32,位于二维标注框32内待检测对象二的中心点321,针对位于二维标注框31和二维标注框32重叠区域的像素点33,可以计算该像素点33与待检测对象一的中心点311的第三距离,和计算该像素点33与待检测对象二的中心点321的第三距离,可知该像素点33与待检测对象一的中心点311的第三距离较小,故像素点33属于二维标注框31。
针对S103:
可以确定训练样本中二维标注框内至少一个像素点对应的、待检测对象的三维标注数据。其中,三维标注数据包括以下数据中的至少一种:偏移量、像素点对应的待检测对象的中心点的深度、三维检测框的尺寸、三维检测框的朝向、朝向类别、待检测对象的速度、中心度、待检测对象的目标类别、属性类别。这里,三维标注数据中包括的数据类型较为丰富、多样。
这里,像素点对应的待检测对象是指该像素点所属的待检测对象,比如,第一像素点位于待检测对象一上,则第一像素点对应的待检测对象为待检测对象一。
偏移量可以用于表征像素点与对应的待检测对象的中心点之间的偏差,该偏移量中包括横轴偏移量Δx、和纵轴偏移量Δy,横轴偏移量用于表征像素点的横轴坐标值、与待检测对象的中心点指示的横轴坐标值之间的偏差,纵轴偏移量用于表征像素点的纵轴坐标值、与待检测对象的中心点指示的纵轴坐标值之间的偏差。三维标注数据中的深度为像素点对应的待检测对象的中心点的深度,比如,图3中像素点33的三维标注数据中指示的深度为待检测对象一的中心点311在真实场景中的深度。
三维检测框的尺寸为该像素点对应的待检测对象的三维检测框的尺寸信息。比如,图3中像素点33对应的三维标注数据指示的三维检测框的尺寸为待检测对象一对应的三维检测框的尺寸。
三维检测框的朝向为0至π(180°)之间的角度,朝向类别可以包括正向类别和反向类别,或者,朝向类别可以包括第一类别和第二类别。具体实施时,可以通过三维检测框的朝向和朝向类别,较准确的表征待检测对象的方向。
参见图4a所示一种待检测对象的朝向类别的示意图,该图中示出了待检测对象的两种朝向类别,即图4a中示出左侧的第一类别(或正向类别)和图4a中右侧示出的第二类别(反向类别)。在获取了训练样本后,可以确定训练样本中待检测对象的朝向类别和在该朝向类别下的朝向(即角度)。
比如,针对图4b中左侧的待检测对象,可以确定该待检测对象的朝向为θ1、朝向类别为第一类别(或正向类别);针对图4b中右侧的待检测对象,可以确定该待检测对象的朝向为θ2、朝向类别为第二类别(或反向类别)。
待检测对象的速度可以包括横向速度vx和纵向速度vy,即横向速度用于表征待检测对象在横轴方向上的行驶速度,纵向速度用于表征待检测对象在纵轴方向上的行驶速度。
中心度用于表征像素点与对应的待检测对象的中心点之间相近程度的,其中,可以根据下述公式(1)确定中心度:
其中,Δx为横轴偏移量,Δy为纵轴偏移量,α为设置的用于调整从待检测中心点到待检测对象***的强度衰减的参数。
待检测对象的目标类别包括机动车的类别、非机动车的类别、行人的类别、动物的类别等。待检测对象的属性类别用于表征待检测对象的状态,比如,待检测对象的属性类别可以包括:移动、暂停(表征待检测对象为短时间静止)、停止(表征待检测对象为长时间静止)、骑车、步行、行人站立、行人平躺、行人坐立等。
在S103中,确定训练样本中二维标注框内的至少一个像素点对应的、待检测对象的三维标注数据,包括:
S1031,基于与二维标注框内像素点分别匹配的子网络结构,确定训练样本中二维标注框内属于前景点的目标像素点;
S1032,确定目标像素点对应的、待检测对象的三维标注数据。
这里可以先基于与二维标注框内像素点分别匹配的子网络结构,确定训练样本中二维标注框内属于前景点的目标像素点;以及将二维标注框内除目标像素点之外的其他像素点确定为背景点。然后再确定属于前景点的目标像素点的三维标注数据,而属于背景点的其他像素点可以视为不存在对应的三维标注数据。
一种可能的实施方式中,S1031中,基于与二维标注框内像素点分别匹配的子网络结构,确定训练样本中二维标注框内属于前景点的目标像素点,包括:
步骤一,针对二维标注框内的每个像素点,确定像素点与二维标注框内待检测对象的中心点之间的第二距离;
步骤二,基于与像素点匹配的子网络结构的步幅和预设的半径参数,确定像素点对应的距离阈值;
步骤三,在第二距离小于距离阈值的情况下,确定像素点为目标像素点。
考虑到在像素点与待检测对象的中心点的距离较近时,该像素点属于前景点的概率较大,该像素点的特征信息较为可靠。因此,这里可以基于与像素点匹配的子网络结构的步幅和预设的半径参数,确定像素点对应的距离阈值;根据像素点与二维标注框内待检测对象的中心点之间的第二距离、和确定的距离阈值,确定像素点是否属于前景点,较准确的确定二维检框内的前景点。
子网络结构的步幅stride是预先设置的,不同的子网络结构对应不同的步幅。半径参数为预设的、用于确定二维标注框内的前景点的参数,比如半径参数可以为1.5个像素点对应的长度,或者,可以为0.5cm等。该半径参数是针对各个子网络结构,即各个子网络结构对应一个半径参数,由于不同的子网络结构对应不同的步幅,故可以基于步幅和半径参数,确定训练样本中二维标注框内的每个像素点对应的距离阈值。
由于前景点为距离待检测对象中心点较近的像素点,背景点为距离待检测对象中心点较远的像素点。故在确定了训练样本中二维标注框内的每个像素点的第二距离之后,判断像素点的第二距离是否小于确定的距离阈值,若是,则确定该像素点属于前景点;若否,则确定该像素点属于背景点。即确定了二维标注框内属于前景点的目标像素点、和属于背景点的其他像素点。接着,可以确定属于前景点的目标像素点对应的三维标注数据。
针对S104:
针对每个子网络结构,基于该子网络结构对应的包含有三维标注数据的至少一个像素点,训练该子网络结构。或者,还可以基于该子网络结构对应的包含有三维标注数据的至少一个像素点、和该子网络结构对应的属于背景点的至少一个像素点,训练该子网络结构。通过对各个子网络结构进行多轮训练,得到训练后的目标神经网络。
在对目标神经网络进行训练时,可以基于三维标注数据和得到的三维预测数据,确定三维标注数据中每种数据对应的损失值,使用三维标注数据中各种数据对应的损失值的加权和,调整目标神经网络的参数,直至训练后的目标神经网络满足预设要求,比如,直至训练后的目标神经网络的准确度等于设置的准确度阈值,或者,直至训练后的目标神经网络的总损失值小于设置的损失阈值。
示例性的,针对三维预测数据(或三维标注数据)中待检测对象的目标类别,可以使用焦点损失函数,确定目标类别对应的第一损失。针对待检测对象的属性类别,可以使用softmax分类损失函数,确定属性类别对应的第二损失;以及确定朝向类别对应的第三损失。针对待检测对象的偏移量、像素点对应的待检测对象的中心点的深度、三维检测框的尺寸、三维检测框的朝向、待检测对象的速度,可以分别使用平滑的L1损失函数,确定第四损失。针对中心度,可以使用二元交叉熵(BCE)损失函数,确定第五损失。
一种可选实施方式中,目标神经网络中每个子网络结构对应一个利用样本数据训练得到的回归指标,回归指标用于对与子网络结构相连的检测头网络输出的三维预测数据中的预测回归数据进行倍数调整;
其中,检测头网络包括分类网络和回归网络,检测头网络用于基于每个子网络结构输出的特征图,确定子网络结构对应的三维预测数据,三维预测数据包括分类网络输出的预测类别数据、和回归网络输出的预测回归数据。
考虑到检测头网络为多个子网络结构共享的,即多个子网络结构连接相同的检测头网络,由于不同子网络结构用于对不同尺度的待检测对象进行特征提取和三维目标预测,故这里可以为每个子网络结构训练一个回归指标,使用回归指标用于对与子网络结构相连的检测头网络输出的三维预测数据中的预测回归数据进行倍数调整,使得调整后的预测回归数据与子网络结构匹配。
参见图5所示的一种目标神经网络的架构示意图,该目标神经网络的结构可以包括主干网络、金字塔网络、检测头网络,其中,金字塔网络中包括多个不同子网络结构,不同子网络结构对应的输入特征的尺寸和/或输出特征的尺寸不同。其中,每个子网络结构对应一个检测头网络,即各个子网络结构连接的检测头网络共享网络参数。
示例性的,样本图像为训练样本中的任一图像,或者,也可以为待检测图像。在将样本图像输入至目标神经网络之后,可以先使用至少一层卷积层,对样本图像进行特征提取,得到样本图像对应的特征图,再将得到的特征图输入至主干网络中,进行预测,得到三维预测数据。
在具体实施时,为了减少部署目标神经网络的设备的显存资源的消耗,可以将对样本图像进行特征提取的卷积层的参数设置为较小的特征值。为了兼顾目标神经网络效率和精度,目标神经网络的主干网络中可以使用ResNet101和可变形卷积。比如,可以将ResNet101的主干网络中的一个、多个卷积层设置为可变形卷积。
检测头网络包括分类网络,该分类网络用于输出预测类别数据,该预测类别数据包括目标类别、属性类别、朝向类别中的一种或多种。检测头网络还包括回归网络,回归网络用户输出预测回归数据,该预测回归数据包括偏移量、深度、三维检测框的尺寸、三维检测框的朝向、待检测对象的速度、中心度中的一种或多种。
由于不同子网络结构用于处理不同尺度的待检测对象,即不同子网络结构输出的预测回归数据的尺寸不同,故每个子网络结构可以对应一个可训练的回归指标,该训练后的回归指标可以用于对与子网络结构相连的检测头网络输出的三维预测数据中的预测回归数据进行倍数调整。比如,若子网络结构一对应的训练后的回归指标为X1、子网络结构二对应的训练后的回归指标为X2,则可以将与子网络结构一相连的检测头网络输出的预测回归数据与回归指标X1相乘,得到子网络结构一对应的预测回归数据;将与子网络结构二相连的检测头网络输出的预测回归数据与回归指标X2相乘,得到子网络结构二对应的预测回归数据。
具体实施时,在利用训练样本对目标神经网络进行训练时,可以对该回归指标进行训练,在得到训练后的目标神经网络时,得到了每个子网络结构对应的训练后的回归指标。
一种可选实施方式中,在得到训练后的目标神经网络之后,还包括:
S105,获取待检测图像;
S106,利用训练后的目标神经网络对待检测图像进行检测,确定待检测图像中包括的至少一个目标对象的三维检测结果。
采用上述方法,可以利用性能较好的、训练后的目标神经网络对待检测图像进行检测,得到较为准确的至少一个目标对象的三维检测结果。
待检测图像可以为任一帧图像,将获取的待检测图像输入至训练后的目标神经网络中,利用训练后的目标神经网络对待检测图像进行检测,确定待检测图像中包括的至少一个目标对象的三维检测结果,三维检测结果可以包括以下至少一种检测结果:目标对象对应的三维检测框的尺寸(长宽高)、三维检测框的中心点坐标信息(横轴坐标、纵轴坐标、竖轴坐标)、目标对象的目标类别、属性类别、朝向、朝向类别、速度、中心度、以及置信度。目标对象可以为待检测图像中的任一对象。
在S106中,利用目标神经网络对待检测图像进行检测,确定待检测图像中包括的至少一个目标对象的三维检测结果,包括:
S1061,利用目标神经网络对待检测图像进行检测,生成待检测图像中多个像素点对应的三维检测数据;
S1062,基于多个像素点分别对应的三维检测数据,确定待检测图像中包括的多个候选三维检测框信息;
S1063,基于多个候选三维检测框信息,确定多个候选三维检测框在待检测图像对应的鸟瞰图中的投影框信息;
S1064,基于多个投影框信息,确定待检测图像中包括的至少一个目标对象的三维检测结果。
采用上述方法,通过确定多个候选三维检测框在待检测图像对应的鸟瞰图中的投影框信息,基于多个投影框信息,较准确的确定待检测图像中包括的至少一个目标对象的三维检测结果。
在S1061中,具体实施时,可以利用目标神经网络对待检测图像进行检测,生成检测图像中每个像素点对应的三维检测数据。再可以根据每个像素点对应的三维检测数据指示的置信度,选取多个像素点对应的三维检测数据。比如,可以设置置信度阈值,从检测图像中各个像素点对应的三维检测数据中,选择对应置信度大于置信度阈值的多个像素点对应的三维检测数据。或者,还可以设置选取的数量阈值,比如,设置选取的数量阈值为100个,从检测图像中各个像素点对应的三维检测数据中,按照置信度从高到低的顺序,选择100个像素点对应的三维检测数据。
在S1062中,可以基于多个像素点分别对应的三维检测数据,确定待检测图像中包括的多个候选三维检测框信息。其中,每个像素点的三维检测数据对应一个候选三维检测框信息,候选三维检测框信息包括候选三维检测框的位置信息和尺寸信息。
示例性的,在基于多个像素点分别对应的三维检测数据,确定待检测图像中包括的多个候选三维检测框信息时,可以将确定的目标对象的中心点的位置信息,通过待检测图像对应的采集设备的内参矩阵,还原至真实场景中,生成目标对象对应的候选三维检测框信息的中心点的在真实场景中的位置信息。
在S1063中,可以针对每个候选三维检测框信息,生成对应在鸟瞰图中的投影框信息。该鸟瞰图中包括多个投影框信息,投影框信息包括投影框的位置和尺寸。
在S1064中,基于多个投影框信息,确定待检测图像中包括的至少一个目标对象的三维检测结果,包括:
步骤一、基于每个候选三维检测框信息指示的目标类别对应的置信度和中心度,确定与候选三维检测框对应的投影框的目标置信度;其中,中心度用于表征候选三维检测框对应的像素点、与对应的待检测对象的中心点之间的相近程度;
步骤二、基于各个投影框分别对应的目标置信度,确定待检测图像中包括的至少一个目标对象的三维检测结果。
在步骤一中,中心度用于表征候选三维检测框对应的像素点、与对应的待检测对象的中心点之间的相近程度,中心度越大,则该像素点距离待检测对象的中心越近,则该像素点的特征信息可靠性较高,生成的该像素点对应的三维检测框信息的可靠性越高;反之,中心度越小,则该像素点距离待检测对象的中心越远,则该像素点的特征信息可靠性较低,生成的该像素点对应的三维检测框信息的可靠性越小。故可以使用三维检测结果指示的像素点的中心度,进行背景点的筛选,避免远离目标对象的中心的像素点的低质量预测,提高检测效率。
因此,可以基于每个候选三维检测框信息指示的目标类别对应的置信度和中心度,确定与候选三维检测框对应的投影框的目标置信度;再利用目标置信度,较准确的确定待检测图像中包括的至少一个目标对象的三维检测结果。
示例性的,可以将每个候选三维检测框信息指示的目标类别对应的置信度与中心度相乘,确定与候选三维检测框对应的投影框的目标置信度。
在步骤二,可以使用非最大值抑制(Non-Maximum Suppression,NMS)的方式,基于各个投影框分别对应的目标置信度,确定待检测图像中包括的至少一个目标对象的三维检测结果。
在一种可选实施方式中,还可以设置三维检测结果的第一数量阈值,在利用NMS方式,确定待检测图像中包括的至少一个目标对象的三维检测结果之后,在得到的三维检测结果的数量大于设置的第一数量阈值时,可以根据目标置信度,对得到的三维检测结果进行筛选。
参见图6所示,为本公开实施例所提供的行驶控制方法的流程示意图,该包括:
S601,获取行驶装置在行驶过程中采集的道路图像;
S602,利用上述实施例所述的神经网络训练方法训练得到的目标神经网络,对道路图像进行检测,得到道路图像中包括的目标对象的目标三维位姿数据;
S603,基于道路图像中包括的目标对象的目标三维位姿数据,控制行驶装置。
示例性的,行驶装置可以为自动驾驶车辆、装有高级驾驶辅助***(AdvancedDriving Assistance System,ADAS)的车辆、或者机器人等。道路图像可以为行驶装置在行驶过程中实时采集到的图像。目标对象可以为道路中可以能出现的任一物体和/或、任一对象。比如,目标对象可以为出现在道路上的动物、行人等,也可以为道路上的其他车辆(包括机动车辆和非机动车辆)等。
其中,在控制行驶装置时,可以控制行驶装置加速、减速、转向、制动等,或者可以播放语音提示信息,以提示驾驶员控制行驶装置加速、减速、转向、制动等。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于相同的构思,本公开实施例还提供了一种神经网络训练装置,参见图7所示,为本公开实施例提供的神经网络训练装置的架构示意图,包括第一获取模块701、第一确定模块702、第二确定模块703、训练模块704,具体的:
第一获取模块701,用于获取训练样本;
第一确定模块702,用于基于所述训练样本中待检测对象的二维标注框的尺度,确定所述二维标注框内每个像素点匹配的目标神经网络中的子网络结构;其中,不同子网络结构用于对所述训练样本中不同尺度的所述二维标注框内的像素点进行特征提取;
第二确定模块703,用于确定所述训练样本中所述二维标注框内的至少一个像素点对应的、所述待检测对象的三维标注数据;
训练模块704,用于基于各个所述子网络结构分别对应的、具有所述三维标注数据的至少一个像素点,训练所述目标神经网络中的每个所述子网络结构,得到训练后的目标神经网络。
一种可能的实施方式中,所述第一确定模块702,在基于所述训练样本中待检测对象的二维标注框的尺度,确定所述二维标注框内每个像素点匹配的子网络结构时,用于:
针对所述二维标注框内的每个像素点,基于所述二维标注框的尺度,确定所述像素点与所述二维标注框的每条边之间的最长第一距离;
基于所述最长第一距离、和每个子网络结构对应的预设的距离范围,确定与所述像素点匹配的子网络结构。
一种可能的实施方式中,所述第二确定模块703,在确定所述训练样本中所述二维标注框内的至少一个像素点对应的、所述待检测对象的三维标注数据时,用于:
基于与所述二维标注框内像素点分别匹配的所述子网络结构,确定所述训练样本中所述二维标注框内属于前景点的目标像素点;
确定所述目标像素点对应的、所述待检测对象的所述三维标注数据。
一种可能的实施方式中,所述第二确定模块703,在基于与所述二维标注框内像素点分别匹配的所述子网络结构,确定所述训练样本中所述二维标注框内属于前景点的目标像素点时,用于:
针对所述二维标注框内的每个像素点,确定所述像素点与所述二维标注框内所述待检测对象的中心点之间的第二距离;
基于与所述像素点匹配的所述子网络结构的步幅和预设的半径参数,确定所述像素点对应的距离阈值;
在所述第二距离小于所述距离阈值的情况下,确定所述像素点为所述目标像素点。
一种可能的实施方式中,所述三维标注数据包括以下数据中的至少一种:
用于表征像素点与对应的待检测对象的中心点之间偏差的偏移量、像素点对应的待检测对象的中心点的深度、三维检测框的尺寸、三维检测框的朝向、朝向类别、待检测对象的速度、用于表征像素点与对应的待检测对象的中心点之间相近程度的中心度、待检测对象的目标类别、表征待检测对象状态的属性类别。
一种可能的实施方式中,在基于所述训练样本中待检测对象的二维标注框的尺度,确定所述二维标注框内每个像素点匹配的目标神经网络中的子网络结构之前,还包括:第三确定模块705,用于:
在所述训练样本中存在同一像素点位于多个二维标注框内的情况下,确定该像素点分别与每个所述二维标注框中待检测对象的中心点之间的第三距离;
将对应所述第三距离最小的二维标注框,作为该像素点对应的二维标注框。
一种可能的实施方式中,所述目标神经网络中每个子网络结构对应一个利用所述样本数据训练得到的回归指标,所述回归指标用于对与所述子网络结构相连的检测头网络输出的三维预测数据中的预测回归数据进行倍数调整;
其中,所述检测头网络包括分类网络和回归网络,所述检测头网络用于基于每个子网络结构输出的特征图,确定所述子网络结构对应的三维预测数据,所述三维预测数据包括所述分类网络输出的预测类别数据、和所述回归网络输出的预测回归数据。
一种可能的实施方式中,在得到训练后的目标神经网络之后,还包括:预测模块706,用于:
获取待检测图像;
利用训练后的所述目标神经网络对所述待检测图像进行检测,确定所述待检测图像中包括的至少一个目标对象的三维检测结果。
一种可能的实施方式中,所述预测模块706,在利用所述目标神经网络对所述待检测图像进行检测,确定所述待检测图像中包括的至少一个目标对象的三维检测结果时,用于:
利用所述目标神经网络对所述待检测图像进行检测,生成所述待检测图像中多个像素点对应的三维检测数据;
基于多个像素点分别对应的三维检测数据,确定所述待检测图像中包括的多个候选三维检测框信息;
基于所述多个候选三维检测框信息,确定多个候选三维检测框在所述待检测图像对应的鸟瞰图中的投影框信息;
基于多个所述投影框信息,确定所述待检测图像中包括的至少一个目标对象的三维检测结果。
一种可能的实施方式中,所述预测模块706,在基于多个所述投影框信息,确定所述待检测图像中包括的至少一个目标对象的三维检测结果时,用于:
基于每个候选三维检测框信息指示的目标类别对应的置信度和中心度,确定与所述候选三维检测框对应的投影框的目标置信度;其中,所述中心度用于表征所述候选三维检测框对应的像素点、与对应的待检测对象的中心点之间的相近程度;
基于各个投影框分别对应的目标置信度,确定所述待检测图像中包括的至少一个目标对象的三维检测结果。
基于相同的构思,本公开实施例还提供了一种行驶控制装置,参见图8所示,为本公开实施例提供的行驶控制装置的架构示意图,包括第二获取模块801、检测模块802、控制模块803,具体的:
第二获取模块801,用于获取行驶装置在行驶过程中采集的道路图像;
检测模块802,用于利用本公开提出的神经网络训练方法训练得到的目标神经网络,对所述道路图像进行检测,得到所述道路图像中包括的目标对象的目标三维位姿数据;
控制模块803,用于基于所述道路图像中包括的目标对象的目标三维位姿数据,控制所述行驶装置。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模板可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
基于同一技术构思,本公开实施例还提供了一种电子设备。参照图9所示,为本公开实施例提供的电子设备的结构示意图,包括处理器901、存储器902、和总线903。其中,存储器902用于存储执行指令,包括内存9021和外部存储器9022;这里的内存9021也称内存储器,用于暂时存放处理器901中的运算数据,以及与硬盘等外部存储器9022交换的数据,处理器901通过内存9021与外部存储器9022进行数据交换,当电子设备900运行时,处理器901与存储器902之间通过总线903通信,使得处理器901在执行以下指令:
获取训练样本;
基于所述训练样本中待检测对象的二维标注框的尺度,确定所述二维标注框内每个像素点匹配的目标神经网络中的子网络结构;其中,不同子网络结构用于对所述训练样本中不同尺度的所述二维标注框内的像素点进行特征提取;
确定所述训练样本中所述二维标注框内的至少一个像素点对应的、所述待检测对象的三维标注数据;
基于各个所述子网络结构分别对应的、具有所述三维标注数据的至少一个像素点,训练所述目标神经网络中的每个所述子网络结构,得到训练后的目标神经网络。
基于同一技术构思,本公开实施例还提供了一种电子设备。参照图10所示,为本公开实施例提供的电子设备的结构示意图,包括处理器1001、存储器1002、和总线1003。其中,存储器1002用于存储执行指令,包括内存10021和外部存储器10022;这里的内存10021也称内存储器,用于暂时存放处理器1001中的运算数据,以及与硬盘等外部存储器10022交换的数据,处理器1001通过内存10021与外部存储器10022进行数据交换,当电子设备1000运行时,处理器1001与存储器1002之间通过总线1003通信,使得处理器1001在执行以下指令:
获取行驶装置在行驶过程中采集的道路图像;
利用本公开提出的所述的神经网络训练方法训练得到的目标神经网络,对所述道路图像进行检测,得到所述道路图像中包括的目标对象的目标三维位姿数据;
基于所述道路图像中包括的目标对象的目标三维位姿数据,控制所述行驶装置。
此外,本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的神经网络训练方法、行驶控制方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的神经网络训练方法、行驶控制方法的步骤,具体可参见上述方法实施例,在此不再赘述。
其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。
Claims (15)
1.一种神经网络训练方法,其特征在于,包括:
获取训练样本;
基于所述训练样本中待检测对象的二维标注框的尺度,确定所述二维标注框内每个像素点匹配的目标神经网络中的子网络结构;其中,不同子网络结构用于对所述训练样本中不同尺度的所述二维标注框内的像素点进行特征提取;
确定所述训练样本中所述二维标注框内的至少一个像素点对应的、所述待检测对象的三维标注数据;
基于各个所述子网络结构分别对应的、具有所述三维标注数据的至少一个像素点,训练所述目标神经网络中的每个所述子网络结构,得到训练后的目标神经网络。
2.根据权利要求1所述的方法,其特征在于,所述基于所述训练样本中待检测对象的二维标注框的尺度,确定所述二维标注框内每个像素点匹配的子网络结构,包括:
针对所述二维标注框内的每个像素点,基于所述二维标注框的尺度,确定所述像素点与所述二维标注框的每条边之间的最长第一距离;
基于所述最长第一距离、和每个子网络结构对应的预设的距离范围,确定与所述像素点匹配的子网络结构。
3.根据权利要求1或2所述的方法,其特征在于,所述确定所述训练样本中所述二维标注框内的至少一个像素点对应的、所述待检测对象的三维标注数据,包括:
基于与所述二维标注框内像素点分别匹配的所述子网络结构,确定所述训练样本中所述二维标注框内属于前景点的目标像素点;
确定所述目标像素点对应的、所述待检测对象的所述三维标注数据。
4.根据权利要求3所述的方法,其特征在于,所述基于与所述二维标注框内像素点分别匹配的所述子网络结构,确定所述训练样本中所述二维标注框内属于前景点的目标像素点,包括:
针对所述二维标注框内的每个像素点,确定所述像素点与所述二维标注框内所述待检测对象的中心点之间的第二距离;
基于与所述像素点匹配的所述子网络结构的步幅和预设的半径参数,确定所述像素点对应的距离阈值;
在所述第二距离小于所述距离阈值的情况下,确定所述像素点为所述目标像素点。
5.根据权利要求1-4任一所述的方法,其特征在于,所述三维标注数据包括以下数据中的至少一种:
用于表征像素点与对应的待检测对象的中心点之间偏差的偏移量、像素点对应的待检测对象的中心点的深度、三维检测框的尺寸、三维检测框的朝向、朝向类别、待检测对象的速度、用于表征像素点与对应的待检测对象的中心点之间相近程度的中心度、待检测对象的目标类别、表征待检测对象状态的属性类别。
6.根据权利要求1-5任一所述的方法,其特征在于,在基于所述训练样本中待检测对象的二维标注框的尺度,确定所述二维标注框内每个像素点匹配的目标神经网络中的子网络结构之前,还包括:
在所述训练样本中存在同一像素点位于多个二维标注框内的情况下,确定该像素点分别与每个所述二维标注框中待检测对象的中心点之间的第三距离;
将对应所述第三距离最小的二维标注框,作为该像素点对应的二维标注框。
7.根据权利要求1-6任一所述的方法,其特征在于,所述目标神经网络中每个子网络结构对应一个利用所述样本数据训练得到的回归指标,所述回归指标用于对与所述子网络结构相连的检测头网络输出的三维预测数据中的预测回归数据进行倍数调整;
其中,所述检测头网络包括分类网络和回归网络,所述检测头网络用于基于每个子网络结构输出的特征图,确定所述子网络结构对应的三维预测数据,所述三维预测数据包括所述分类网络输出的预测类别数据、和所述回归网络输出的预测回归数据。
8.根据权利要求1-7任一所述的方法,其特征在于,在得到训练后的目标神经网络之后,还包括:
获取待检测图像;
利用训练后的所述目标神经网络对所述待检测图像进行检测,确定所述待检测图像中包括的至少一个目标对象的三维检测结果。
9.根据权利要求8所述的方法,其特征在于,所述利用所述目标神经网络对所述待检测图像进行检测,确定所述待检测图像中包括的至少一个目标对象的三维检测结果,包括:
利用所述目标神经网络对所述待检测图像进行检测,生成所述待检测图像中多个像素点对应的三维检测数据;
基于多个像素点分别对应的三维检测数据,确定所述待检测图像中包括的多个候选三维检测框信息;
基于所述多个候选三维检测框信息,确定多个候选三维检测框在所述待检测图像对应的鸟瞰图中的投影框信息;
基于多个所述投影框信息,确定所述待检测图像中包括的至少一个目标对象的三维检测结果。
10.根据权利要求9所述的方法,其特征在于,所述基于多个所述投影框信息,确定所述待检测图像中包括的至少一个目标对象的三维检测结果,包括:
基于每个候选三维检测框信息指示的目标类别对应的置信度和中心度,确定与所述候选三维检测框对应的投影框的目标置信度;其中,所述中心度用于表征所述候选三维检测框对应的像素点、与对应的待检测对象的中心点之间的相近程度;
基于各个投影框分别对应的目标置信度,确定所述待检测图像中包括的至少一个目标对象的三维检测结果。
11.一种行驶控制方法,其特征在于,包括:
获取行驶装置在行驶过程中采集的道路图像;
利用权利要求1至10任一项所述的神经网络训练方法训练得到的目标神经网络,对所述道路图像进行检测,得到所述道路图像中包括的目标对象的目标三维位姿数据;
基于所述道路图像中包括的目标对象的目标三维位姿数据,控制所述行驶装置。
12.一种神经网络训练装置,其特征在于,包括:
第一获取模块,用于获取训练样本;
第一确定模块,用于基于所述训练样本中待检测对象的二维标注框的尺度,确定所述二维标注框内每个像素点匹配的目标神经网络中的子网络结构;其中,不同子网络结构用于对所述训练样本中不同尺度的所述二维标注框内的像素点进行特征提取;
第二确定模块,用于确定所述训练样本中所述二维标注框内的至少一个像素点对应的、所述待检测对象的三维标注数据;
训练模块,用于基于各个所述子网络结构分别对应的、具有所述三维标注数据的至少一个像素点,训练所述目标神经网络中的每个所述子网络结构,得到训练后的目标神经网络。
13.一种行驶控制装置,其特征在于,包括:
第二获取模块,用于获取行驶装置在行驶过程中采集的道路图像;
检测模块,用于利用权利要求1至10任一项所述的神经网络训练方法训练得到的目标神经网络,对所述道路图像进行检测,得到所述道路图像中包括的目标对象的目标三维位姿数据;
控制模块,用于基于所述道路图像中包括的目标对象的目标三维位姿数据,控制所述行驶装置。
14.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至10任一所述的神经网络训练方法的步骤,或执行如权利要求11所述的行驶控制方法的步骤。
15.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至10任一所述的神经网络训练方法的步骤,或执行如权利要求11所述的行驶控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110224337.0A CN112926461B (zh) | 2021-02-26 | 2021-02-26 | 神经网络训练、行驶控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110224337.0A CN112926461B (zh) | 2021-02-26 | 2021-02-26 | 神经网络训练、行驶控制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112926461A true CN112926461A (zh) | 2021-06-08 |
CN112926461B CN112926461B (zh) | 2024-04-19 |
Family
ID=76172708
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110224337.0A Active CN112926461B (zh) | 2021-02-26 | 2021-02-26 | 神经网络训练、行驶控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112926461B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113469042A (zh) * | 2021-06-30 | 2021-10-01 | 上海商汤临港智能科技有限公司 | 真值数据确定、神经网络训练、行驶控制方法及装置 |
CN113610967A (zh) * | 2021-08-13 | 2021-11-05 | 北京市商汤科技开发有限公司 | 三维点检测的方法、装置、电子设备及存储介质 |
CN115661577A (zh) * | 2022-11-01 | 2023-01-31 | 吉咖智能机器人有限公司 | 用于对象检测的方法、设备和计算机可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109523552A (zh) * | 2018-10-24 | 2019-03-26 | 青岛智能产业技术研究院 | 基于视锥点云的三维物体检测方法 |
CN110517278A (zh) * | 2019-08-07 | 2019-11-29 | 北京旷视科技有限公司 | 图像分割和图像分割网络的训练方法、装置和计算机设备 |
CN111783986A (zh) * | 2020-07-02 | 2020-10-16 | 清华大学 | 网络训练方法及装置、姿态预测方法及装置 |
WO2020243962A1 (zh) * | 2019-06-06 | 2020-12-10 | 深圳市大疆创新科技有限公司 | 物体检测方法、电子设备和可移动平台 |
DE102019117559A1 (de) * | 2019-06-28 | 2020-12-31 | Connaught Electronics Ltd. | Verfahren und System zum Fusionieren von zweidimensionalen semantischen Informationen aus Bildern mit einer dreidimensionalen Punktwolke |
CN112241731A (zh) * | 2020-12-03 | 2021-01-19 | 北京沃东天骏信息技术有限公司 | 一种姿态确定方法、装置、设备及存储介质 |
-
2021
- 2021-02-26 CN CN202110224337.0A patent/CN112926461B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109523552A (zh) * | 2018-10-24 | 2019-03-26 | 青岛智能产业技术研究院 | 基于视锥点云的三维物体检测方法 |
WO2020243962A1 (zh) * | 2019-06-06 | 2020-12-10 | 深圳市大疆创新科技有限公司 | 物体检测方法、电子设备和可移动平台 |
DE102019117559A1 (de) * | 2019-06-28 | 2020-12-31 | Connaught Electronics Ltd. | Verfahren und System zum Fusionieren von zweidimensionalen semantischen Informationen aus Bildern mit einer dreidimensionalen Punktwolke |
CN110517278A (zh) * | 2019-08-07 | 2019-11-29 | 北京旷视科技有限公司 | 图像分割和图像分割网络的训练方法、装置和计算机设备 |
CN111783986A (zh) * | 2020-07-02 | 2020-10-16 | 清华大学 | 网络训练方法及装置、姿态预测方法及装置 |
CN112241731A (zh) * | 2020-12-03 | 2021-01-19 | 北京沃东天骏信息技术有限公司 | 一种姿态确定方法、装置、设备及存储介质 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113469042A (zh) * | 2021-06-30 | 2021-10-01 | 上海商汤临港智能科技有限公司 | 真值数据确定、神经网络训练、行驶控制方法及装置 |
WO2023273467A1 (zh) * | 2021-06-30 | 2023-01-05 | 上海商汤智能科技有限公司 | 真值数据确定、神经网络训练、行驶控制方法及装置 |
CN113610967A (zh) * | 2021-08-13 | 2021-11-05 | 北京市商汤科技开发有限公司 | 三维点检测的方法、装置、电子设备及存储介质 |
CN113610967B (zh) * | 2021-08-13 | 2024-03-26 | 北京市商汤科技开发有限公司 | 三维点检测的方法、装置、电子设备及存储介质 |
CN115661577A (zh) * | 2022-11-01 | 2023-01-31 | 吉咖智能机器人有限公司 | 用于对象检测的方法、设备和计算机可读存储介质 |
CN115661577B (zh) * | 2022-11-01 | 2024-04-16 | 吉咖智能机器人有限公司 | 用于对象检测的方法、设备和计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112926461B (zh) | 2024-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10891500B2 (en) | Method and apparatus for acquiring traffic sign information | |
US9990736B2 (en) | Robust anytime tracking combining 3D shape, color, and motion with annealed dynamic histograms | |
CN112926461A (zh) | 神经网络训练、行驶控制方法及装置 | |
CN110386142A (zh) | 用于自动驾驶车辆的俯仰角校准方法 | |
CN110889464B (zh) | 检测目标对象的神经网络训练、目标对象的检测方法及装置 | |
CN111797983A (zh) | 一种神经网络构建方法以及装置 | |
CN111091023B (zh) | 一种车辆检测方法、装置及电子设备 | |
CN111598065B (zh) | 深度图像获取方法及活体识别方法、设备、电路和介质 | |
CN114119991A (zh) | 一种目标检测的方法、装置、电子设备及存储介质 | |
US11308324B2 (en) | Object detecting system for detecting object by using hierarchical pyramid and object detecting method thereof | |
CN112215840B (zh) | 图像检测、行驶控制方法、装置、电子设备及存储介质 | |
CN111178181A (zh) | 交通场景分割方法及相关装置 | |
EP4332910A1 (en) | Behavior detection method, electronic device, and computer readable storage medium | |
US20210383213A1 (en) | Prediction device, prediction method, computer program product, and vehicle control system | |
CN117274526A (zh) | 神经网络模型训练方法和生成图像的方法 | |
CN113902047A (zh) | 图像元素匹配方法、装置、设备以及存储介质 | |
CN113793371A (zh) | 目标分割追踪方法、装置、电子设备和存储介质 | |
CN114729811A (zh) | 位置推断装置、车辆、位置推断方法及位置推断程序 | |
CN112818845A (zh) | 测试方法、目标对象检测方法、行驶控制方法及装置 | |
CN116681884B (zh) | 一种对象检测方法和相关装置 | |
CN115546472B (zh) | 一种路面车辆重识别方法、装置及应用 | |
CN117115238B (zh) | 一种确定位姿的方法、电子设备及存储介质 | |
CN112949827B (zh) | 神经网络生成、数据处理、智能行驶控制方法及装置 | |
CN113313011B (zh) | 视频帧处理方法、装置、计算机设备及存储介质 | |
CN114694375B (zh) | 交通监视***、交通监视方法及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |