Traitement en cours

Veuillez attendre...

Paramétrages

Paramétrages

Aller à Demande

1. WO2020155518 - PROCÉDÉ ET DISPOSITIF DE DÉTECTION D'OBJET, DISPOSITIF INFORMATIQUE ET SUPPORT D'INFORMATIONS

Document

说明书

发明名称 0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093   0094   0095   0096   0097   0098   0099   0100   0101   0102   0103   0104   0105   0106   0107   0108   0109   0110   0111   0112   0113   0114   0115  

权利要求书

1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17   18   19   20  

附图

1   2   3  

说明书

发明名称 : 物体检测方法、装置、计算机设备及存储介质

[0001]
本申请以2019年2月3日提交的申请号为201910108522.6,名称为“物体检测模型训练方法、装置、计算机设备及存储介质”的中国发明专利申请为基础,并要求其优先权。

【技术领域】

[0002]
本申请涉及人工智能领域,尤其涉及一种物体检测方法、装置、计算机设备及存储介质。

【背景技术】

[0003]
物体检测是计算机视觉中的经典问题之一,其任务是用框去标出图像中物体的位置,并给出物体的类别。从传统的人工设计特征加浅层分类器的框架,到基于深度学习的端到端的检测框架,物体检测在一步步地改进,但是,目前常用的物体检测方法如YOLO(You Only Look Once)检测方法、SSD(Single Shot Multi-Box Detection)等检测方法仍普遍存在物体检测准确率较低的问题。
[0004]
【发明内容】
[0005]
有鉴于此,本申请实施例提供了一种物体检测方法、装置、计算机设备及存储介质,用以解决目前仍普遍存在物体检测准确率较低的问题。
[0006]
第一方面,本申请实施例提供了一种物体检测方法,包括:
[0007]
获取待检测图像;
[0008]
将所述待检测图像输入到目标物体检测模型中进行物体检测,得到所述待检测图像的物体检测结果,其中,所述目标物体检测模型采用的模型训练步骤包括:
[0009]
获取训练样本;
[0010]
将所述训练样本输入到物体检测模型中进行模型训练,其中,所述物体检测模型包括检测模块、分类模块和判别模块;
[0011]
在模型训练过程中得到由所述检测模块产生的检测损失、由所述分类模块产生的分类损失 和由所述判别模块产生的判别损失;
[0012]
根据所述检测损失、所述分类损失和所述判别损失更新所述物体检测模型,得到目标物体检测模型。
[0013]
第二方面,本申请实施例提供了一种物体检测模型训练装置,包括:
[0014]
待检测图像获取模块,用于获取待检测图像;
[0015]
物体检测结果获取模块,用于将所述待检测图像输入到目标物体检测模型中进行物体检测,得到所述待检测图像的物体检测结果,其中,所述目标物体检测模型采用训练样本获取模块、模型训练模块、损失获取模块和目标物体检测模型获取模块得到:
[0016]
训练样本获取模块,用于获取训练样本;
[0017]
模型训练模块,用于将所述训练样本输入到物体检测模型中进行模型训练,其中,所述物体检测模型包括检测模块、分类模块和判别模块;
[0018]
损失获取模块,用于在模型训练过程中得到由所述检测模块产生的检测损失、由所述分类模块产生的分类损失和由所述判别模块产生的判别损失;
[0019]
目标物体检测模型获取模块,用于根据所述检测损失、所述分类损失和所述判别损失更新所述物体检测模型,得到目标物体检测模型。
[0020]
第三方面,一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,所述处理器执行所述计算机可读指令时实现上述物体检测方法的步骤。
[0021]
第四方面,本申请实施例提供了一种计算机非易失性可读存储介质,包括:计算机可读指令,所述计算机可读指令被处理器执行时实现上述物体检测方法的步骤。
[0022]
在本申请提供的物体检测方法、装置、计算机设备及存储介质中,首先获取待检测图像;然后将所述待检测图像输入到目标物体检测模型中进行物体检测,得到待检测图像的物体检测结果,其中,所述目标物体检测模型结合了检测损失、分类损失和判别损失共同更新物体检测模型,具备更优的检测和分类效果,能够得到准确率较高的检测结果。

【附图说明】

[0023]
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
[0024]
图1是本申请一实施例中基于物体检测方法的一流程图;
[0025]
图2是本申请一实施例中基于物体检测装置的一示意图;
[0026]
图3是本申请一实施例中计算机设备的一示意图。

【具体实施方式】

[0027]
为了更好的理解本申请的技术方案,下面结合附图对本申请实施例进行详细描述。
[0028]
应当明确,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
[0029]
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
[0030]
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的相同的字段,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
[0031]
应当理解,尽管在本申请实施例中可能采用术语第一、第二、第三等来描述预设范围等,但这些预设范围不应限于这些术语。这些术语仅用来将预设范围彼此区分开。例如,在不脱离本申请实施例范围的情况下,第一预设范围也可以被称为第二预设范围,类似地,第二预设范围也可以被称为第一预设范围。
[0032]
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
[0033]
图1示出本实施例中物体检测方法的一流程图。该物体检测方法可应用在物体检测系统中,在对物体进行检测分类时可采用该物体检测系统实现,该物体检测系统具体可应用在计算机设备上。其中,该计算机设备是可与用户进行人机交互的设备,包括但不限于电脑、智能手机和平板等设备。如图1所示,该物体检测方法包括如下步骤:
[0034]
S1:获取待检测图像。
[0035]
S2:将待检测图像输入到目标物体检测模型中进行物体检测,得到待检测图像的物体检测结果,其中,步骤S2中,目标物体检测模型采用的模型训练步骤具体包括:
[0036]
S10:获取训练样本。
[0037]
在一实施例中,获取模型训练所需的训练样本。具体地,根据物体检测的需要可以选择与某一类场景相关的图像作为训练样本。例如,可以将行车记录仪中保存的图像作为训练样本。行车记录仪中保存的图片能够反映车辆行驶过程中前方的道路状况,可以将该图像作为训练样本进行目标物体检测模型的训练,使得训练得到的目标物体检测模型可以对车辆行驶过程中前方的出现的物体进行检测,从而车辆根据接收到的检测结果做出预设的反应。可以理解地,在进行模型训练前需要预先对行车记录仪中保存的图像中出现的物体进行标注(标注需要检测的物体,没有检测需要的物体可以不标注),此外,还需要预先采用深度神经网络(如卷积神经网络)提取与进行标注的物体属于同一类别图像的深层特征,以在物体检测模型(包括相对应的深度神经网络,用以提取图像特征)检测时识别物体的类别。
[0038]
S20:将训练样本输入到物体检测模型中进行模型训练,其中,物体检测模型包括检测模块、分类模块和判别模块。
[0039]
其中,模型训练是指目标物体检测模型的训练。检测模块用以检测图像中的物体,分类模块用以对检测到的物体进行识别及分类,判别模块包括第一判别模块和/或第二判别模块,第一判别模块用以判别检测模块输出的结果是否正确,第二判别模块用以判别分类模块输出的结果是否正确,其中,第一判别模块和第二判别模块可以同时存在,也可以只存在第二判别模块,将第二判别模块作为判别模块。
[0040]
在一实施例中,将训练样本输入到物体检测模型中进行模型训练,其中,该物体检测模型除了包括检测模型和分类模型,还包括判别模型。可以理解地,训练样本进行模型训练即把训练样本输入到物体检测模型进行检测的过程。
[0041]
进一步地,在步骤S20之前,还包括:
[0042]
S211:获取待处理物体检测模型,待处理物体检测模型包括检测模块和分类模块。
[0043]
在一实施例中,获取待处理物体检测模型,可以理解地,该待处理物体检测模型具体可以是YOLO(You Only Look Once)检测模型和SSD(Single Shot Multi-Box Detection)等检测模型。这些模型包括检测模块和分类模块。本实施例是基于这些待处理物体检测模型进行的改进。
[0044]
S212:在待处理物体检测模型中加入判别模块,其中,判别模块用于对检测模块和/或分类模块输出的结果进行判别。
[0045]
在一实施例中,在待处理物体检测模型原有的基础上添加了判别模块,以对待处理物体检测模型输出的结果进行判别。添加判别模块能够帮助获知待处理物体检测模型检测 的准确率情况,以根据待处理物体检测模型检测出错的情况更新模型,提高检测的准确率。
[0046]
S213:对加入判别模块后的待处理物体检测模型进行模型的初始化操作,得到物体检测模型。
[0047]
其中,模型的初始化操作是指初始化模型中的网络参数,网络参数的初始值可以是根据经验预先设定好的。
[0048]
可以理解地,如果不对模型进行初始化操作,那么待处理物体检测模型中检测模块和分类模块中的网络参数实际上已经是经过多次训练更新的,此时判别模块再根据检测模块和/或分类模块输出的结果进行判别并更新的效果会比较差,因为检测模块和分类模块在一开始训练时已经了长时间的学习,短时间内采用判别模块进行更新不能更新地比较彻底;相反,进行初始化操作后,在训练阶段每检测模块和/或分类模块输出一个结果时判别模块就会进行判别,能够随着训练过程及时根据输出的结果更新网络参数,从而达到更好的检测准确率。
[0049]
步骤S211-S213中,提供了一种得到物体检测模型的实施方式,具体地,在待处理物体检测模型中加入判别模块,并进行模型的初始化操作,有利于提高后续根据物体检测模型训练更新得到的目标物体检测模型检测的准确率。
[0050]
进一步地,在步骤S20中,将训练样本输入到物体检测模型中进行模型训练,具体包括:
[0051]
S221:输入训练样本,通过物体检测模型提取训练样本的特征向量。
[0052]
在一实施例中,物体检测模型中包括用于提取训练样本的特征向量的深度神经网络,具体可以是卷积神经网络。当输入训练样本到物体检测模型时,物体检测模型将采用深度神经网络提取训练样本的特征向量,为模型训练提供技术基础。
[0053]
S222:将特征向量进行归一化处理,得到归一化特征向量,其中,归一化处理的表达式为:y=(x-MinValue)/(MaxValue-MinValue),y为归一化特征向量,x为特征向量,MaxValue为特征向量中特征值的最大值,MinValue为特征向量中特征值的最小值。
[0054]
其中,特征向量中特征值具体是指像素值。
[0055]
在一实施例中,对特征向量进行归一化处理,也即将特征向量中特征值归一化到[0,1]的区间中。可以理解地,图像的像素值有2 8、2 12和2 16等像素值级别,一副图像中可以包含大量不同的像素值,这使得计算效率较低,因此采用将归一化的方式把特征向量中特征值都压缩在同一个范围区间内,使得计算效率提高,模型训练的时间也会更短。
[0056]
S223:根据归一化特征向量对物体检测模型进行模型训练。
[0057]
在步骤S221-S223中,提供了一种训练样本输入到物体检测模型中进行模型训练的实施方式,将提取的训练样本特征进行归一化处理,把特征向量中特征值都压缩在同一个范围区间内,能够明显缩短训练时长,提高训练效率。
[0058]
S30:在模型训练过程中得到由检测模块产生的检测损失、由分类模块产生的分类损失和由判别模块产生的判别损失。
[0059]
可以理解地,检测模块、分类模块和判别模块分别代表一种功能,每一种功能在实现的时候是有可能出错的,也即生成的损失,根据这些由检测模块产生的检测损失、由分类模块产生的分类损失和由判别模块产生的判别损失,可以借鉴帮助对物体检测模型进行调整,以使得到的目标物体检测模型能够在再次采用检测模块、分类模块和判别模块实现功能时尽可能不出错,以提高目标物体检测模型检测的准确率。
[0060]
进一步地,在步骤S30中,在模型训练过程中得到由检测模块产生的检测损失、由分类模块产生的分类损失和由判别模块产生的判别损失,具体包括:
[0061]
S31:在模型训练过程中,得到检测模块输出的第一训练特征向量,采用预设的检测损失函数计算第一训练特征向量与预先存储的第一标签向量之间的损失,得到检测损失。
[0062]
其中,第一训练特征向量即检测模块输出的结果,第一标签向量是用于校验第一训练特征向量是否正确的特征向量,代表的是真实结果。
[0063]
在一实施例中,采用预设的检测损失函数计算第一训练特征向量与预先存储的第一标签向量之间的损失,得到检测损失,以根据该检测损失更新模型的网络参数。具体地,检测损失函数可以包括对预测的中心坐标的损失函数,表示为: 其中,λ表示调节因子,是预设的参数值,i表示检测时分割得到的网格单元,I表示网格单元总数,j表示边界框预测值,J表示边界框预测值的总数量, 表示在第i个网格单元中存在目标时,第j个边界框预测值对该预测有效, 取1,;若第i个网格单元中不存在目标, 取0,(x i,y i)表示预测边界框的位置, 表示由训练样本输出的边界框的真实位置。
[0064]
可以理解地,如yolo等物体检测模型,需要对输入的训练样本进行图像分割,得到I个网格单元,在预测训练样本的物体位置时,得到J个预测边界框,上述 的obj表示object,表示对物体进行检测。
[0065]
进一步地,检测损失函数还可以包括关于预测边界框的宽高的损失函数,表示为: 其中, 表示预测宽度的平方根和预测高度的平方根, 表示由训练样本输出的宽度的平方根和高度的平方根的真实值(其他重复出现的参数将不再作解释,以免赘述)。
[0066]
可以理解地,以上提供了从模型预测的中心坐标和预测边界框的宽高两方面来衡量检测时的损失,其中,检测模块输出的第一训练特征向量具体包括(x i,y i)和 第一标签向量具体包括 通过该检测损失函数能够更准确地更新物体检测模型的网络参数。
[0067]
S32:在模型训练过程中,得到分类模块输出的第二训练特征向量,采用预设的分类损失函数计算第二训练特征向量与预先存储的第二标签向量之间的损失,得到分类损失。
[0068]
其中,第二训练特征向量即分类模块输出的结果,第二标签向量是用于校验第二训练特征向量是否正确的特征向量,代表的是真实结果。
[0069]
在一实施例中,采用预设的分类损失函数计算第二训练特征向量与预先存储的第二标签向量之间的损失,得到分类损失,以根据该分类损失更新模型的网络参数。具体地,分类损失函数具体可以表示为: 其中,i表示检测时分割得到的网格单元,I表示网格单元总数, 表示在第i个网格单元中存在目标时, 取1,否则 取0,p i表示预测的分类, 表示由训练样本输出的分类的真实情况。其中,分类模块输出的第二训练特征向量具体包括p i,第二标签向量具体包括 通过该分类损失函数能够更准确地更新物体分类模型的网络参数。
[0070]
S33:在模型训练过程中,得到判别模块输出的第三训练特征向量,根据第三训练特征向量,采用预设的判别损失函数计算得到判别损失。
[0071]
其中,第三训练特征向量即判别模块输出的结果。
[0072]
在一实施例中,根据第三训练特征向量,采用预设的判别损失函数计算得到判别损失,以根据该判别损失更新模型的网络参数。具体地,以只包括第二判别模块的判别模块为例:判别损失函数具体可以表示为: 其中,I表示网格单元总数,i表示检测时分割得到的网格单元,D(p i)表示预测的分类在判别模块输出的结果。通过该判别损失函数能够反映判别模块在训练时产生的损失,从而更准确地更新物体判别模型的网络参数。
[0073]
可以理解地,步骤S31-S33中的公式在计算检测损失、分类损失和判别损失时,是以一个训练样本的损失为例,在实际有大量样本进行模型训练时,将分别把各个训练样本的检测损失、分类损失和判别损失算数相加得到总的检测损失、分类损失和判别损失,并根据该总的检测损失、分类损失和判别损失进行模型的更新。
[0074]
步骤S31-S33提供了得到检测损失、分类损失和判别损失的具体实施方式,通过该得到的检测损失、分类损失和判别损失,能够准确地描述训练过程中产生的损失,以使模型更新得更准确。
[0075]
S40:根据检测损失、分类损失和判别损失更新物体检测模型,得到目标物体检测模型。
[0076]
进一步地,步骤S40,具体包括:
[0077]
S41:根据检测损失、分类损失和判别损失,采用反向传播算法对物体检测模型中的网络参数进行更新。
[0078]
其中,反向传播算法是在有导师指导下,适合于多层神经元网络的一种学习算法,它建立在梯度下降法的基础上。
[0079]
在一实施例中,采用反向传播算法更新物体检测模型可以加快更新的速度,提高模型训练的训练效率。在检测损失、分类损失和判别损失总损失较多的情况下,采用反向传播算法有较好的效果。
[0080]
S42:当网络参数的变化值均小于停止迭代阈值时,停止更新网络参数,得到目标物体检测模型。
[0081]
在一实施例中,当网络参数的变化值均小于停止迭代阈值时,也即网络参数的变化值都在可接受的误差范围内时,可以停止更新的过程,训练结束,得到检测准确率较高的目标物体检测模型。
[0082]
步骤S41-S42中提供了一种更新物体检测模型的实施方式,能够快速完成更新过程,得到检测准确率较高的目标物体检测模型。
[0083]
在本申请实施例中,首先获取待检测图像,然后将所述待检测图像输入到目标物体检测模型中进行物体检测,得到所述待检测图像的物体检测结果,其中,目标物体检测模型结合了检测损失、分类损失和判别损失共同更新物体检测模型,使训练得到的目标物体检测模型具备更优的检测和分类效果。
[0084]
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
[0085]
基于实施例中所提供的物体检测方法,本申请实施例进一步给出实现上述方法实施例中各步骤及方法的装置实施例。
[0086]
图2示出与实施例中物体检测方法一一对应的物体检测装置的原理框图。如图2所示,该物体检测装置包括待检测图像获取模块10、物体检测结果获取模块20,还包括训练样本获取模块30、模型训练模块40、损失获取模块50和目标物体检测模型获取模块60。其中,待检测图像获取模块10、物体检测结果获取模块20、训练样本获取模块30、模型训练模块40、损失获取模块50和目标物体检测模型获取模块60的实现功能与实施例中物体检测方法对应的步骤一一对应,为避免赘述,本实施例不一一详述。
[0087]
待检测图像获取模块10,用于获取待检测图像。
[0088]
物体检测结果获取模块20,用于将待检测图像输入到目标物体检测模型中进行物体检测,得到待检测图像的物体检测结果。
[0089]
训练样本获取模块30,用于获取训练样本。
[0090]
模型训练模块40,用于将训练样本输入到物体检测模型中进行模型训练,其中,物体检测模型包括检测模块、分类模块和判别模块。
[0091]
损失获取模块50,用于在模型训练过程中得到由检测模块产生的检测损失、由分类模块产生的分类损失和由判别模块产生的判别损失。
[0092]
目标物体检测模型获取模块60,用于根据检测损失、分类损失和判别损失更新物体检测模型,得到目标物体检测模型。
[0093]
可选地,物体检测装置还包括待处理物体检测模型获取单元、判别模块加入单元和初始化单元。
[0094]
待处理物体检测模型获取单元,用于获取待处理物体检测模型,待处理物体检测模型包括检测模块和分类模块。
[0095]
判别模块加入单元,用于在待处理物体检测模型中加入判别模块,其中,判别模块用于对检测模块和/或分类模块输出的结果进行判别。
[0096]
初始化单元,用于对加入判别模块后的待处理物体检测模型进行模型的初始化操作,得到物体检测模型。
[0097]
可选地,模型训练模块40包括特征向量提取单元、归一化特征向量获取单元和模型训练单元。
[0098]
特征向量提取单元,用于输入训练样本,通过物体检测模型提取训练样本的特征向量。
[0099]
归一化特征向量获取单元,用于将特征向量进行归一化处理,得到归一化特征向量,其中, 归一化处理的表达式为:y=(x-MinValue)/(MaxValue-MinValue),y为归一化特征向量,x为特征向量,MaxValue为特征向量中特征值的最大值,MinValue为特征向量中特征值的最小值。
[0100]
模型训练单元,用于根据归一化特征向量对物体检测模型进行模型训练。
[0101]
可选地,损失获取模块50包括检测损失获取单元、分类损失获取单元和判别损失获取单元。
[0102]
检测损失获取单元,用于在模型训练过程中,得到检测模块输出的第一训练特征向量,采用预设的检测损失函数计算第一训练特征向量与预先存储的第一标签向量之间的损失,得到检测损失。
[0103]
分类损失获取单元,用于在模型训练过程中,得到分类模块输出的第二训练特征向量,采用预设的分类损失函数计算第二训练特征向量与预先存储的第二标签向量之间的损失,得到分类损失。
[0104]
判别损失获取单元,用于在模型训练过程中,得到判别模块输出的第三训练特征向量,根据第三训练特征向量,采用预设的判别损失函数计算得到判别损失。
[0105]
可选地,目标物体检测模型获取模块60包括网络参数更新单元和目标物体检测模型获取单元。
[0106]
网络参数更新单元,用于根据检测损失、分类损失和判别损失,采用反向传播算法对物体检测模型中的网络参数进行更新。
[0107]
目标物体检测模型获取单元,用于当网络参数的变化值均小于停止迭代阈值时,停止更新网络参数,得到目标物体检测模型。
[0108]
在本申请实施例中,首先获取待检测图像,然后将所述待检测图像输入到目标物体检测模型中进行物体检测,得到所述待检测图像的物体检测结果,其中,目标物体检测模型结合了检测损失、分类损失和判别损失共同更新物体检测模型,使训练得到的目标物体检测模型具备更优的检测和分类效果。
[0109]
本实施例提供一计算机非易失性可读存储介质,该计算机非易失性可读存储介质上存储有计算机可读指令,该计算机可读指令被处理器执行时实现实施例中物体检测方法,为避免重复,此处不一一赘述。或者,该计算机可读指令被处理器执行时实现实施例中物体检测装置中各模块/单元的功能,为避免重复,此处不一一赘述。
[0110]
图3是本申请一实施例提供的计算机设备的示意图。如图3所示,该实施例的计算机设备70包括:处理器71、存储器72以及存储在存储器72中并可在处理器71上运行的计算机可读指令73,该计算机可读指令73被处理器71执行时实现实施例中的物体检测 方法,为避免重复,此处不一一赘述。或者,该计算机可读指令73被处理器71执行时实现实施例中物体检测装置中各模型/单元的功能,为避免重复,此处不一一赘述。
[0111]
计算机设备70可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。计算机设备70可包括,但不仅限于,处理器71、存储器72。本领域技术人员可以理解,图3仅仅是计算机设备70的示例,并不构成对计算机设备70的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算机设备还可以包括输入输出设备、网络接入设备、总线等。
[0112]
所称处理器71可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0113]
存储器72可以是计算机设备70的内部存储单元,例如计算机设备70的硬盘或内存。存储器72也可以是计算机设备70的外部存储设备,例如计算机设备70上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器72还可以既包括计算机设备70的内部存储单元也包括外部存储设备。存储器72用于存储计算机可读指令以及计算机设备所需的其他程序和数据。存储器72还可以用于暂时地存储已经输出或者将要输出的数据。
[0114]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
[0115]
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

权利要求书

[权利要求 1]
一种物体检测方法,其特征在于,所述方法包括: 获取待检测图像; 将所述待检测图像输入到目标物体检测模型中进行物体检测,得到所述待检测图像的物体检测结果,其中,所述目标物体检测模型采用的模型训练步骤包括: 获取训练样本; 将所述训练样本输入到物体检测模型中进行模型训练,其中,所述物体检测模型包括检测模块、分类模块和判别模块; 在模型训练过程中得到由所述检测模块产生的检测损失、由所述分类模块产生的分类损失和由所述判别模块产生的判别损失; 根据所述检测损失、所述分类损失和所述判别损失更新所述物体检测模型,得到目标物体检测模型。
[权利要求 2]
根据权利要求1所述的方法,其特征在于,在所述将所述训练样本输入到物体检测模型中进行模型训练之前,所述方法还包括: 获取待处理物体检测模型,所述待处理物体检测模型包括所述检测模块和所述分类模块; 在所述待处理物体检测模型中加入所述判别模块,其中,所述判别模块用于对所述检测模块和/或分类模块输出的结果进行判别; 对加入所述判别模块后的所述待处理物体检测模型进行模型的初始化操作,得到所述物体检测模型。
[权利要求 3]
根据权利要求1所述的方法,其特征在于,所述将所述训练样本输入到物体检测模型中进行模型训练,包括: 输入所述训练样本,通过所述物体检测模型提取所述训练样本的特征向量; 将所述特征向量进行归一化处理,得到归一化特征向量,其中,归一化处理的表达式为:y=(x-MinValue)/(MaxValue-MinValue),y为所述归一化特征向量,x为所述特征向量,MaxValue为所述特征向量中特征值的最大值,MinValue为所述特征向量中特征值的最小值; 根据所述归一化特征向量对所述物体检测模型进行模型训练。
[权利要求 4]
根据权利要求1所述的方法,其特征在于,所述在模型训练过程中得到由所述检测模块产生的检测损失、由所述分类模块产生的分类损失和由所述判别模块产生的判别损失,包括: 在模型训练过程中,得到所述检测模块输出的第一训练特征向量,采用预设的检测损失函 数计算所述第一训练特征向量与预先存储的第一标签向量之间的损失,得到所述检测损失; 在模型训练过程中,得到所述分类模块输出的第二训练特征向量,采用预设的分类损失函数计算所述第二训练特征向量与预先存储的第二标签向量之间的损失,得到所述分类损失; 在模型训练过程中,得到所述判别模块输出的第三训练特征向量,根据所述第三训练特征向量,采用预设的判别损失函数计算得到所述判别损失。
[权利要求 5]
根据权利要求1至4任意一项所述的方法,其特征在于,所述根据所述检测损失、所述分类损失和所述判别损失更新所述物体检测模型,得到目标物体检测模型,包括: 根据所述检测损失、所述分类损失和所述判别损失,采用反向传播算法对所述物体检测模型中的网络参数进行更新; 当所述网络参数的变化值均小于停止迭代阈值时,停止更新所述网络参数,得到所述目标物体检测模型。
[权利要求 6]
一种物体检测装置,其特征在于,所述装置包括: 待检测图像获取模块,用于获取待检测图像; 物体检测结果获取模块,用于将所述待检测图像输入到目标物体检测模型中进行物体检测,得到所述待检测图像的物体检测结果,其中,所述目标物体检测模型采用训练样本获取模块、模型训练模块、损失获取模块和目标物体检测模型获取模块得到: 训练样本获取模块,用于获取训练样本; 模型训练模块,用于将所述训练样本输入到物体检测模型中进行模型训练,其中,所述物体检测模型包括检测模块、分类模块和判别模块; 损失获取模块,用于在模型训练过程中得到由所述检测模块产生的检测损失、由所述分类模块产生的分类损失和由所述判别模块产生的判别损失; 目标物体检测模型获取模块,用于根据所述检测损失、所述分类损失和所述判别损失更新所述物体检测模型,得到目标物体检测模型。
[权利要求 7]
根据权利要求6所述的装置,其特征在于,所述物体检测模型训练装置还包括待处理物体检测模型获取单元、判别模块加入单元和初始化单元: 待处理物体检测模型获取单元,用于获取待处理物体检测模型,待处理物体检测模型包括检测模块和分类模块; 判别模块加入单元,用于在待处理物体检测模型中加入判别模块,其中,判别模块用于对检测模块和/或分类模块输出的结果进行判别; 初始化单元,用于对加入判别模块后的待处理物体检测模型进行模型的初始化操作,得到 物体检测模型。
[权利要求 8]
根据权利要求6所述的装置,其特征在于,所述模型训练模块包括特征向量提取单元、归一化特征向量获取单元和模型训练单元: 特征向量提取单元,用于输入所述训练样本,通过所述物体检测模型提取所述训练样本的特征向量; 归一化特征向量获取单元,用于将所述特征向量进行归一化处理,得到归一化特征向量,其中,归一化处理的表达式为:y=(x-MinValue)/(MaxValue-MinValue),y为所述归一化特征向量,x为所述特征向量,MaxValue为所述特征向量中特征值的最大值,MinValue为所述特征向量中特征值的最小值; 模型训练单元,用于根据所述归一化特征向量对所述物体检测模型进行模型训练。
[权利要求 9]
根据权利要求6所述的装置,其特征在于,所述损失获取模块包括检测损失获取单元、分类损失获取单元和判别损失获取单元: 检测损失获取单元,用于在模型训练过程中,得到检测模块输出的第一训练特征向量,采用预设的检测损失函数计算第一训练特征向量与预先存储的第一标签向量之间的损失,得到检测损失; 分类损失获取单元,用于在模型训练过程中,得到分类模块输出的第二训练特征向量,采用预设的分类损失函数计算第二训练特征向量与预先存储的第二标签向量之间的损失,得到分类损失; 判别损失获取单元,用于在模型训练过程中,得到判别模块输出的第三训练特征向量,根据第三训练特征向量,采用预设的判别损失函数计算得到判别损失。
[权利要求 10]
根据权利要求6-9所述的装置,其特征在于,所述目标物体检测模型获取模块包括网络参数更新单元和目标物体检测模型获取单元: 网络参数更新单元,用于根据所述检测损失、所述分类损失和所述判别损失,采用反向传播算法对所述物体检测模型中的网络参数进行更新; 目标物体检测模型获取单元,用于当所述网络参数的变化值均小于停止迭代阈值时,停止更新所述网络参数,得到所述目标物体检测模型。
[权利要求 11]
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,其特征在于,所述处理器执行所述计算机可读指令时实现如下步骤: 获取待检测图像; 将所述待检测图像输入到目标物体检测模型中进行物体检测,得到所述待检测图像的物体 检测结果,其中,所述目标物体检测模型采用的模型训练步骤包括: 获取训练样本; 将所述训练样本输入到物体检测模型中进行模型训练,其中,所述物体检测模型包括检测模块、分类模块和判别模块; 在模型训练过程中得到由所述检测模块产生的检测损失、由所述分类模块产生的分类损失和由所述判别模块产生的判别损失; 根据所述检测损失、所述分类损失和所述判别损失更新所述物体检测模型,得到目标物体检测模型。
[权利要求 12]
根据权利要求11所述的计算机设备,其特征在于,所述处理器执行所述计算机可读指令时还实现如下步骤: 获取待处理物体检测模型,所述待处理物体检测模型包括所述检测模块和所述分类模块; 在所述待处理物体检测模型中加入所述判别模块,其中,所述判别模块用于对所述检测模块和/或分类模块输出的结果进行判别; 对加入所述判别模块后的所述待处理物体检测模型进行模型的初始化操作,得到所述物体检测模型。
[权利要求 13]
根据权利要求11所述的计算机设备,其特征在于,所述处理器执行所述计算机可读指令时还实现如下步骤: 输入所述训练样本,通过所述物体检测模型提取所述训练样本的特征向量; 将所述特征向量进行归一化处理,得到归一化特征向量,其中,归一化处理的表达式为:y=(x-MinValue)/(MaxValue-MinValue),y为所述归一化特征向量,x为所述特征向量,MaxValue为所述特征向量中特征值的最大值,MinValue为所述特征向量中特征值的最小值; 根据所述归一化特征向量对所述物体检测模型进行模型训练。
[权利要求 14]
根据权利要求11所述的计算机设备,其特征在于,所述处理器执行所述计算机可读指令时还实现如下步骤: 在模型训练过程中,得到所述检测模块输出的第一训练特征向量,采用预设的检测损失函数计算所述第一训练特征向量与预先存储的第一标签向量之间的损失,得到所述检测损失; 在模型训练过程中,得到所述分类模块输出的第二训练特征向量,采用预设的分类损失函数计算所述第二训练特征向量与预先存储的第二标签向量之间的损失,得到所述分类损失; 在模型训练过程中,得到所述判别模块输出的第三训练特征向量,根据所述第三训练特征向量,采用预设的判别损失函数计算得到所述判别损失。
[权利要求 15]
根据权利要求11-14所述的计算机设备,其特征在于,所述处理器执行所述计算机可读指令时还实现如下步骤: 根据所述检测损失、所述分类损失和所述判别损失,采用反向传播算法对所述物体检测模型中的网络参数进行更新; 当所述网络参数的变化值均小于停止迭代阈值时,停止更新所述网络参数,得到所述目标物体检测模型。
[权利要求 16]
一种计算机非易失性可读存储介质,所述计算机非易失性可读存储介质存储有计算机可读指令,其特征在于,所述计算机可读指令被处理器执行时实现如下步骤: 获取待检测图像; 将所述待检测图像输入到目标物体检测模型中进行物体检测,得到所述待检测图像的物体检测结果,其中,所述目标物体检测模型采用的模型训练步骤包括: 获取训练样本; 将所述训练样本输入到物体检测模型中进行模型训练,其中,所述物体检测模型包括检测模块、分类模块和判别模块; 在模型训练过程中得到由所述检测模块产生的检测损失、由所述分类模块产生的分类损失和由所述判别模块产生的判别损失; 根据所述检测损失、所述分类损失和所述判别损失更新所述物体检测模型,得到目标物体检测模型。
[权利要求 17]
根据权利要求16所述的计算机非易失性可读存储介质,其特征在于,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器还实现如下步骤: 获取待处理物体检测模型,所述待处理物体检测模型包括所述检测模块和所述分类模块; 在所述待处理物体检测模型中加入所述判别模块,其中,所述判别模块用于对所述检测模块和/或分类模块输出的结果进行判别; 对加入所述判别模块后的所述待处理物体检测模型进行模型的初始化操作,得到所述物体检测模型。
[权利要求 18]
根据权利要求16所述的计算机非易失性可读存储介质,其特征在于,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器还实现如下步骤: 输入所述训练样本,通过所述物体检测模型提取所述训练样本的特征向量; 将所述特征向量进行归一化处理,得到归一化特征向量,其中,归一化处理的表达式为:y=(x-MinValue)/(MaxValue-MinValue),y为所述归一化特征向量,x为所述特征向量,MaxValue 为所述特征向量中特征值的最大值,MinValue为所述特征向量中特征值的最小值; 根据所述归一化特征向量对所述物体检测模型进行模型训练。
[权利要求 19]
根据权利要求16所述的计算机非易失性可读存储介质,其特征在于,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器还实现如下步骤: 在模型训练过程中,得到所述检测模块输出的第一训练特征向量,采用预设的检测损失函数计算所述第一训练特征向量与预先存储的第一标签向量之间的损失,得到所述检测损失; 在模型训练过程中,得到所述分类模块输出的第二训练特征向量,采用预设的分类损失函数计算所述第二训练特征向量与预先存储的第二标签向量之间的损失,得到所述分类损失; 在模型训练过程中,得到所述判别模块输出的第三训练特征向量,根据所述第三训练特征向量,采用预设的判别损失函数计算得到所述判别损失。
[权利要求 20]
根据权利要求16-19所述的计算机非易失性可读存储介质,其特征在于,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器还实现如下步骤: 根据所述检测损失、所述分类损失和所述判别损失,采用反向传播算法对所述物体检测模型中的网络参数进行更新; 当所述网络参数的变化值均小于停止迭代阈值时,停止更新所述网络参数,得到所述目标物体检测模型。

附图

[ 图 1]  
[ 图 2]  
[ 图 3]