本发明涉及目标检测,具体涉及训练目标检测模型的方法、装置、计算机设备及存储介质。
背景技术:
1、随着深度学习的发展和算法的开源,数据的获取与标注,成为了项目乃至公司的真正技术壁垒。应运而生的自监督、半监督、弱监督、无监督、迁移、蒸馏等算法,是很多小项目的必备措施。就自动驾驶的场景而言,图像级别的公开数据集容易获取,基于该公开数据集可以实现目标检测。
2、但是现有的公开数据集标注质量良莠不齐,标注的类别定义也是五花八门,很难精准满足目标检测项目的需求,只能利用海量数据中很少一部分进行目标检测,导致目标检测效果较差;而自己标注数据集,则需要花费大量的成本。
技术实现思路
1、有鉴于此,本发明提供了一种训练目标检测模型的方法、装置、计算机设备及存储介质,以解决现有数据集不适用于目标检测的问题。
2、第一方面,本发明提供了一种训练目标检测模型的方法,所述目标检测模型为全卷积单阶段目标检测模型,该方法包括:获取用于训练的多种数据集,所述多种数据集包括:分类数据集、语义分割数据集、部分标注数据集和标签宽泛数据集;根据所述多种数据集对所述目标检测模型进行训练;其中,所述分类数据集用于训练所述目标检测模型的分类分支和/或中心度分支,所述语义分割数据集用于训练所述目标检测模型的分类分支,所述部分标注数据集中的已标注数据用于训练所述目标检测模型的分类分支、边框回归分支和中心度分支,所述标签宽泛数据集中与所需的标签相一致的数据训练所述目标检测模型的分类分支、边框回归分支和中心度分支;得到训练后的目标检测模型。
3、本实施例提供的训练目标检测模型的方法,采用fcos模型作为待训练的目标检测模型,并利用分类数据集、语义分割数据集、部分标注数据集和标签宽泛数据集等多种数据集,分别对该目标检测模型的一个或多个分支进行学习训练,从而在单一数据集不能训练目标检测模型的情况下,也可训练得到所需的目标检测模型。本实施例中,已标注的数据集由于标注不完整,其并不适用于训练目标检测模型,但该方法可以综合利用这些已标注的数据集,基于fcos模型实现对多种不同标注数据集的融合,从而训练得到能够完成目标检测任务的目标检测模型。该方法可以充分利用现有多种数据集的标注,能够利用多种数据集中的海量数据进行训练,训练效果较好,且不需要自己人工标注数据集。
4、在一些可选的实施方式中,所述方法还包括:预设初始的目标检测模型;
5、所述根据所述多种数据集对所述目标检测模型进行训练,包括:将所述初始的目标检测模型作为教师模型;根据所述数据集的标注情况,将所述数据集中的数据划分出标注区域和未标注区域;将所述标注区域内的锚点作为正样本锚点;根据所述教师模型对所述未标注区域进行目标检测,确定所述未标注区域中锚点的中心度;将中心度大于第一预设阈值的锚点作为具有伪标签的伪样本锚点,将中心度小于第二预设阈值的锚点作为负样本锚点;所述第一预设阈值大于或等于所述第二预设阈值;根据所述正样本锚点、所述伪样本锚点和所述负样本锚点进行半监督学习,得到相应的学生模型,所述学生模型为全卷积单阶段目标检测模型。
6、利用半监督学习方法,可以从数据集中提取出更多可用于训练的伪样本锚点和负样本锚点,可以更加有效地利用公开数据集,适用于需要大量数据但时间紧张的目标检测项目。
7、在一些可选的实施方式中,所述根据所述数据集的标注情况,将所述数据集中的数据划分出标注区域和未标注区域,包括:设置用于表示尺寸的超参数,并确定所述分类数据集中分类数据的中心坐标;将以所述中心坐标为中心,所述超参数范围内的区域作为所述分类数据的标注区域。以分类数据的中心坐标为中心,可以简单且比较准确地确定适用于分类数据的标注区域。
8、在一些可选的实施方式中,所述根据所述数据集的标注情况,将所述数据集中的数据划分出标注区域和未标注区域,包括:根据所述教师模型对所述标签宽泛数据集中的标签宽泛数据进行目标检测,确定所述标签宽泛数据中边框的分类得分;在所述分类得分大于第三预设阈值的情况下,将所述边框所对应的区域作为所述标签宽泛数据的第一标注区域;所述标签宽泛数据集中第一标注区域的正样本锚点用于训练所述学生模型的分类分支、边框回归分支和中心度分支。
9、利用教师模型对标签宽泛数据的分类得分,可以从标签宽泛数据中提取出适用于训练分类分支、边框回归分支、中心度分支三个分支的正样本锚点,可以更好地进行训练。
10、在一些可选的实施方式中,所述根据所述数据集的标注情况,将所述数据集中的数据划分出标注区域和未标注区域,还包括:在所述分类得分小于第四预设阈值的情况下,将所述边框所对应的区域作为所述标签宽泛数据的第二标注区域;所述标签宽泛数据集中第二标注区域的正样本锚点用于训练所述学生模型的边框回归分支和中心度分支;所述第四预设阈值小于或等于所述第三预设阈值。
11、在一些可选的实施方式中,所述根据所述多种数据集对所述目标检测模型进行训练,还包括:对所述分类数据集中的分类数据进行弱监督分割处理,确定所述分类数据中的边框;所述分类数据的边框内的正样本锚点用于训练所述学生模型的分类分支、边框回归分支和中心度分支;对所述语义分割数据集中的语义分割数据进行弱监督分割处理,确定所述语义分割数据中的边框;所述语义分割数据的边框内的正样本锚点用于训练所述学生模型的分类分支、边框回归分支和中心度分支。
12、利用弱监督分割处理确定分类数据和语义分割数据中的边框,基于此可以对学生模型的分类分支、边框回归分支、中心度分支三个分支进行训练,能够比较充分利用这些公开数据集,可以提升目标检测模型的泛化能力。
13、在一些可选的实施方式中,所述部分标注数据中的伪样本锚点和负样本锚点用于训练所述学生模型的分类分支。
14、第二方面,本发明提供了一种目标检测的方法,包括:
15、根据第一方面所述的训练目标检测模型的方法所得到的目标检测模型,对待识别图像进行目标检测,识别出所述待识别图像中的对象。
16、第三方面,本发明提供了一种训练目标检测模型的装置,所述目标检测模型为全卷积单阶段目标检测模型,该装置包括:
17、获取模块,用于获取用于训练的多种数据集,所述多种数据集包括:分类数据集、语义分割数据集、部分标注数据集和标签宽泛数据集;
18、训练模块,用于根据所述多种数据集对所述目标检测模型进行训练,得到训练后的目标检测模型;其中,所述分类数据集用于训练所述目标检测模型的分类分支和/或中心度分支,所述语义分割数据集用于训练所述目标检测模型的分类分支,所述部分标注数据集中的已标注数据用于训练所述目标检测模型的分类分支、边框回归分支和中心度分支,所述标签宽泛数据集中与所需的标签相一致的数据训练所述目标检测模型的分类分支、边框回归分支和中心度分支。
19、第四方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的训练目标检测模型的方法,或者上述第二方面或其对应的任一实施方式的目标检测的方法。
20、第五方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的训练目标检测模型的方法,或者上述第二方面或其对应的任一实施方式的目标检测的方法。