首页 / 专利库 / 人工智能 / 人工智能 / 机器学习 / 半监督学习 / 基于半监督学习的检测模型训练方法、装置、设备及介质

基于半监督学习的检测模型训练方法、装置、设备及介质

阅读:875发布:2020-05-12

专利汇可以提供基于半监督学习的检测模型训练方法、装置、设备及介质专利检索,专利查询,专利分析的服务。并且本 申请 提供一种基于半 监督学习 的检测模型训练方法、装置、设备及介质,涉及 图像处理 技术领域。该方法通过对样本图像中检测目标的第一识别区的已有标注框,采用预设扩增规则,得到其他多个识别区的扩增标注框,并根据第一识别区的已有标注框以及其他识别区的扩增标注框进行模型的训练,得到检测模型。其中,通过预设扩增规则,在已有标注框的 基础 上,得到多个扩增标注框,可以有效提高训练样本扩增速度,从而提高检测模型训练的效率,同时也有效增强了检测模型的泛化能 力 。另外,通过采用改进后的损失函数,对训练得到的检测模型进行优化,使得检测模型的检测精确度更高。,下面是基于半监督学习的检测模型训练方法、装置、设备及介质专利的具体信息内容。

1.一种基于半监督学习的检测模型训练方法,其特征在于,包括:
根据样本图像中检测目标的第一识别区的已有标注框,分别采用至少一个预设扩增规则,得到所述样本图像中所述检测目标的至少一个第二识别区的扩增标注框;每个所述预设扩增规则对应一个所述第二识别区;
根据具有所述已有标注框和所述扩增标注框的所述样本图像进行模型训练,得到检测模型;所述检测模型用于对待测图像中所述检测目标的所述第一识别区和至少一个所述第二识别区进行检测。
2.如权利要求1所述的方法,其特征在于,所述根据样本图像中检测目标的第一识别区的已有标注框,分别采用至少一个预设扩增规则,得到所述样本图像中所述检测目标的至少一个第二识别区的扩增标注框,包括:
根据所述第一识别区的已有标注框的坐标,和一个所述预设扩增规则对应的预设扩增比例,得到一个所述第二识别区的扩增标注框的坐标;
根据至少一个所述第二识别区的扩增标注框的坐标,对所述样本图像进行标注,得到至少一个所述第二识别区的所述扩增标注框。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
采用所述检测模型,对所述样本图像进行预测,得到所述第一识别区的第一预测框和至少一个所述第二识别区的第二预测框;
根据所述第一预测框、至少一个所述第二预测框、所述已有标注框、至少一个所述扩增标注框,确定所述检测模型的损失函数值;
根据所述损失函数值,对所述检测模型的参数进行更新,直至更新后的所述检测模型的损失函数值最小。
4.如权利要求3所述的方法,其特征在于,所述根据所述第一预测框、至少一个所述第二预测框、所述已有标注框、至少一个所述扩增标注框,确定所述检测模型的损失函数值,包括:
根据所述第一预测框和所述已有标注框,确定所述第一识别区对应的损失函数值;
根据一个所述第二预测框和对应的所述扩增标注框,确定一个所述第二识别区对应的损失函数值;
根据所述第一识别区对应的损失函数值和至少一个所述第二识别区对应的损失函数值,确定所述检测模型的损失函数值。
5.如权利要求4所述的方法,其特征在于,所述已有标注框中每个像素点对应至少一个第一锚点框;
所述根据所述第一预测框和所述已有标注框,确定所述第一识别区对应的损失函数值,包括:
根据至少一个所述第一锚点框的坐标,分别对所述第一预测框和所述已有标注框的坐标进行转换;
根据转换后的所述第一预测框的坐标和所述已有标注框的坐标,确定所述第一识别区对应的损失函数值。
6.如权利要求4所述的方法,其特征在于,所述扩增标注框中每个像素点对应至少一个第二锚点框;
所述根据一个所述第二预测框和对应的所述扩增标注框,确定一个所述第二识别区对应的损失函数值,包括:
根据至少一个所述第二锚点框的坐标,分别对所述第二预测框和对应的所述扩增标注框的坐标进行转换;
根据转换后的所述第二预测框的坐标和所述扩增标注框的坐标,确定一个所述第二识别区对应的损失函数值。
7.一种基于半监督学习的检测模型训练装置,其特征在于,包括:扩增模、训练模块;
所述扩增模块,用于根据样本图像中检测目标的第一识别区的已有标注框,分别采用至少一个预设扩增规则,得到所述样本图像中所述检测目标的至少一个第二识别区的扩增标注框;每个所述预设扩增规则对应一个所述第二识别区;
所述训练模块,用于根据具有所述已有标注框和所述扩增标注框的所述样本图像进行模型训练,得到检测模型;所述检测模型用于对待测图像中所述检测目标的所述第一识别区和至少一个所述第二识别区进行检测。
8.如权利要求7所述的装置,其特征在于,所述扩增模块,具体用于根据所述第一识别区的已有标注框的坐标,和一个所述预设扩增规则对应的预设扩增比例,得到一个所述第二识别区的扩增标注框的坐标;根据至少一个所述第二识别区的扩增标注框的坐标,对所述样本图像进行标注,得到至少一个所述第二识别区的所述扩增标注框。
9.一种计算设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的程序指令,当计算设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述程序指令,以执行时执行如权利要求1至6任一所述的基于半监督学习的检测模型训练方法的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至6任一所述的基于半监督学习的检测模型训练方法的步骤。

说明书全文

基于半监督学习的检测模型训练方法、装置、设备及介质

技术领域

[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] 图1为本申请实施例提供的一种基于半监督学习的检测模型训练方法的流程示意图;
[0047] 图2为本申请实施例提供的另一种基于半监督学习的检测模型训练方法的流程示意图;
[0048] 图3为本申请实施例提供的一种扩增标注框示意图;
[0049] 图4为本申请实施例提供的另一种基于半监督学习的检测模型训练方法的流程示意图;
[0050] 图5为本申请实施例提供的一种羊身体标注框重叠示意图;
[0051] 图6为本申请实施例提供的又一种基于半监督学习的检测模型训练方法的流程示意图;
[0052] 图7为本申请实施例提供的另一种基于半监督学习的检测模型训练方法的流程示意图;
[0053] 图8为本申请实施例提供的另一种基于半监督学习的检测模型训练方法的流程示意图;
[0054] 图9为本申请实施例提供的一种基于半监督学习的目标检测方法的流程示意图;
[0055] 图10为本申请实施例还提供的一种基于半监督学习的检测模型训练装置的示意图;
[0056] 图11为本申请实施例还提供的另一种基于半监督学习的检测模型训练装置的示意图;
[0057] 图12为本申请实施例还提供的另一种基于半监督学习的检测模型训练装置的示意图。

具体实施方式

[0058] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
[0059] 图1为本申请实施例提供的一种基于半监督学习的检测模型训练方法的流程示意图。该方法的执行主体可以是具备数据处理功能的计算机或是服务器。如图1所示,该方法可以包括:
[0060] S101、根据样本图像中检测目标的第一识别区的已有标注框,分别采用至少一个预设扩增规则,得到样本图像中检测目标的至少一个第二识别区的扩增标注框;每个预设扩增规则对应一个第二识别区。
[0061] 可选地,本实施例中,样本图像中的检测目标可以为多种类型,例如:可以是动物、人、汽车等,对于不同的检测目标以及不同检测目标的不同识别区,对应的已有标注框的形状、大小均是不同的。其中,以检测目标羊为例,识别区可以是羊脸,羊颈、羊身体等。
[0062] 可选地,第一识别区以羊脸为例,第一识别区的已有标注框可以是事先人工标注好的,其具有一定的可信度。为了不限于仅仅对羊脸的检测,还对羊颈或是羊身体等其他多个第二识别区也进行检测,需要预先获得第二识别区对应的标注框,也即第二识别区的扩增标注框,从而根据第二识别区对应的扩增标注框进行检测模型的训练。
[0063] 在一些实施例中,为了提高其他多个识别区的扩增标注框获取效率,可以采用本实施例提高的方法,在第一识别区的已有标注框的基础上,采用预设扩增规则,对第一识别区的已有标注框进行调整,获取其他多个识别区的扩增标注框。
[0064] 需要说明的是,针对不同的第二识别区,预设的扩增规则也是不同的,也即,不同的第二识别区对应的预设的扩增规则不同。第二识别区为羊颈时对应的预设的扩增规则,是与第二识别区为羊身体时对应的预设的扩增规则不同的。具体可以根据第二识别区的具体形状大小等,对预设的扩增规则进行适应性修改
[0065] S102、根据具有已有标注框和扩增标注框的样本图像进行模型训练,得到检测模型;检测模型用于对待测图像中检测目标的第一识别区和至少一个第二识别区进行检测。
[0066] 可选地,本实施例中,可以将包含上述已有标注框和扩增标注框的样本图像,作为样本输入训练模型中,以进行检测模型的训练,训练得到检测模型后,可以利用该检测模型对任意的包含同类型检测目标的图像中的目标物体进行检测,以实现目标的智能检测。例如:通过将包含羊脸标注框以及羊身体标注框的图像作为样本训练得到检测模型后,则可以用训练得到的该检测模型对任意的包含羊的图像中的羊脸和羊身体进行检测。
[0067] 综上,本实施例提供的基于半监督学习的检测模型训练方法,通过对样本图像中检测目标的第一识别区的已有标注框,采用预设扩增规则,得到其他多个识别区的扩增标注框,并根据第一识别区的已有标注框以及其他识别区的扩增标注框进行模型的训练,得到检测模型。其中,通过预设扩增规则,在已有标注框的基础上,得到多个扩增标注框,可以有效提高训练样本扩增速度,从而提高检测模型训练的效率,同时也有效增强了检测模型的泛化能力。
[0068] 图2为本申请实施例提供的另一种基于半监督学习的检测模型训练方法的流程示意图,可选地,如图2所示,上述步骤S101中,根据样本图像中检测目标的第一识别区的已有标注框,分别采用至少一个预设扩增规则,得到样本图像中检测目标的至少一个第二识别区的扩增标注框,可以包括:
[0069] S201、根据第一识别区的已有标注框的坐标,和一个预设扩增规则对应的预设扩增比例,得到一个第二识别区的扩增标注框的坐标。
[0070] 可选地,在进行标注框扩增之前,可以先获取第一识别区的已有标注框的坐标信息。确定第二识别区的部位,即确定第二识别区是羊颈还是羊身体,根据确定的第二识别区的部位信息,确定预设扩增规则对应的预设扩增比例,并根据该预设扩增比例对第一识别区的已有标注框的坐标信息进行转换,得到该第二识别区的扩增标注框的坐标信息。其中,对于不同的第二识别区,其对应的扩增比例可以是通过先验知识或者是人工测量确定的。
[0071] 图3为本申请实施例提供的一种扩增标注框示意图,如图3所示,假设第一识别区的已有标注框的为矩形框,对应于图3中的标注框a,坐标信息为(xf,yf,wf,hf),其中,xf,yf为矩形框的中心点坐标,wf,hf为矩形框的宽度和高度。确定的第二识别区为羊颈,那么根据该第二识别区确定的扩增比例,对已有标注框进行扩增,得到的第二识别区的扩增标注框的坐标信息可以为:xn=xf,yn=yf-0.5hf+0.5βhf,wn=αwf,hn=βhf,其中,α、β均为放缩因子,可以根据具体第二识别区进行设定。这样,就可以得到羊颈的扩增标注框(xn,yn,wn,hn),对应于图3中的标注框b。同样的,采用相同的计算思路,可以进一步得到羊身体,或者是羊的其他部位的扩增标注框。其中,图3中标注框c可以对应于羊身体的扩增标注框。当然,本实施例中是以羊作为检测目标进行举例的,在实际应用中,对于检测目标为人、汽车、物品等均可以采用上述计算思路,进行标注框的扩增。
[0072] S202、根据至少一个第二识别区的扩增标注框的坐标,对样本图像进行标注,得到至少一个第二识别区的扩增标注框。
[0073] 可选地,通过上述步骤,计算得到任意第二识别区的扩增标注框的坐标信息后,可以利用该坐标信息形成的扩增标注框,对样本图像中,该第二识别区进行标注,从而得到新的训练样本图像,进一步地可以根据该新的训练样本图像进行检测模型的训练。
[0074] 需要说明的是,在不同的样本图像中,由于相同检测目标的姿态等会存在区别,相同检测目标的已有标注框和扩增标注框大小也是会存在区别的,例如:两张包含羊的图片中,由于羊呈现的姿势的不同,对应的羊脸、羊颈、羊身体的标注框也会存在区别。在获取新的训练样本时,可以对多个样本图像中,相同检测目标进行标注框扩增,并将该多个样本图像作为训练样本,进行模型的训练,以提高模型训练的精度
[0075] 图4为本申请实施例提供的另一种基于半监督学习的检测模型训练方法的流程示意图,可选地,如图4所示,该方法还可以包括:
[0076] S301、采用检测模型,对样本图像进行预测,得到第一识别区的第一预测框和至少一个第二识别区的第二预测框。
[0077] 可选地,上述采用已有的标注框以及扩增的标注框进行模型训练,得到了检测模型,则可以利用该检测模型,对包含该检测目标的输入图像进行检测,其中,输入检测模型的图像是不包含任何标注框的待检测图像,经过目标检测后,检测结果即为将检测到的目标物体框出,得到包含标注框的图像,通过模型检测得到的标注框也即模型输出的预测框,其中,可以包括上述的第一识别区的预测框、以及第二识别区的预测框。
[0078] S302、根据第一预测框、至少一个第二预测框、已有标注框、至少一个扩增标注框,确定检测模型的损失函数值。
[0079] S303、根据损失函数值,对检测模型的参数进行更新,直至更新后的检测模型的损失函数值最小。
[0080] 在一些实施例中,上述得到的预测框精确度可能较低,为了对检测模型进行优化,提高检测模型的检测精度,可以通过计算检测模型的损失函数值,并通过该损失函数值不断的对模型中的多个参数进行迭代更新,直至预测框更加接近已有标注框为止,从而得到优化后的检测模型。
[0081] 本实施例中,假设通过已有的羊脸的标注框,扩增得到了羊颈和羊身体的扩增标注框,那么根据新的具有羊脸、羊颈、羊身体标注框的样本图像训练得到的检测模型,可以对羊脸、羊颈以及羊身体进行检测。那么在采用损失函数进行模型优化时,对应的损失函数可以定义为:L=Lface+ωnLneck+ωbωbrLbody,其中,Lface、Lneck、Lbody分别为羊脸、羊颈、羊身体的预测框所对应的损失函数。考虑到羊颈、羊身体的扩增标注框为根据预设扩增规则自动计算出来的,会存在一定的误差,因此羊颈和羊身体的损失函数会设置一定的权重,且ωn、ωb会设置的较低(例如ωn=0.2,ωb=0.03)只要能起到一定的弱监督效果即可。而对于权重参数ωbr的计算方法可以如下所示:
[0082] 通常,在密集场景下,两只羊的身体标注框会互相遮挡,导致计算出来的损失函数Lbody不准确。因此对于羊身体部分的损失函数,基于所有的羊身体标注框计算一个遮挡比,来进一步降低Lbody的权重。
[0083] 图5为本申请实施例提供的一种羊身体标注框重叠示意图。如图5所示,记两个羊身体标注框为RA、RB,则它们的重叠面积比例记为 显然该值是一个0-1之间的数值,则某个羊身体标注框R与其它所有羊身体标注框重叠比例为: 则,与ri
相关的损失衰减权重为: 通过 的引入,进一步减弱半监督学习
中的不确定性带来的干扰,使得模型优化准确性更高。
[0084] 图6为本申请实施例提供的又一种基于半监督学习的检测模型训练方法的流程示意图,可选地,如图6所示,上述步骤S302中,根据第一预测框、至少一个第二预测框、已有标注框、至少一个扩增标注框,确定检测模型的损失函数值,可以包括:
[0085] S401、根据第一预测框和已有标注框,确定第一识别区对应的损失函数值。
[0086] S402、根据一个第二预测框和对应的扩增标注框,确定一个第二识别区对应的损失函数值。
[0087] 可选地,对于第一识别区对应的损失函数值以及至少一个第二识别区对应的损失函数值的具体计算,可以采用常规的损失函数计算公式计算获得。具体的计算可以参考下文进行理解。
[0088] S403、根据第一识别区对应的损失函数值和至少一个第二识别区对应的损失函数值,确定检测模型的损失函数值。
[0089] 可选地,以本申请中检测目标为羊来说,可以根据上述步骤S303中羊对应的优化后的损失函数定义公式,对确定出的第一识别区(羊脸)对应的损失函数、第二识别区(假设有两个第二识别区:羊颈、羊身体)对应的损失函数进行加权算法,得到检测模型的损失函数。
[0090] 需要说明的是,上述步骤S303所列举的检测模型的损失函数的定义仅仅为一种示例。对于不同的检测目标,例如检测目标为人或者是汽车时,上述步骤S303中定义的检测模型的损失函数也会对应变化,其中检测模型的损失函数中的多个加权项也会对应更换为人或者是汽车所对应的第一识别区、以及至少一个第二识别区的损失函数。
[0091] 图7为本申请实施例提供的另一种基于半监督学习的检测模型训练方法的流程示意图,可选地,已有标注框中每个像素点对应至少一个第一锚点框;如图7所示,上述步骤S401中,根据第一预测框和已有标注框,确定第一识别区对应的损失函数值,可以包括:
[0092] S501、根据至少一个第一锚点框的坐标,分别对第一预测框和已有标注框的坐标进行转换。
[0093] S502、根据转换后的第一预测框的坐标和已有标注框的坐标,确定第一识别区对应的损失函数值。
[0094] 需要说明的是,为了减少了模型优化过程中的计算量,在进行模型训练时,为每一个已有的标注框中每个像素均预分配有至少一个锚点框,从而可以将已有的标注框坐标和预测标注框坐标相对于锚点框坐标进行变换。以便于模型学习,减少模型优化的运算量。
[0095] 对于第一识别区来说,假设一个第一锚点框的坐标为(x,y,w,h),已有标注框的坐标为(xG,yG,wG,hG),第一预测框的坐标为(xp,yp,wp,hp)。那么,相对于第一锚点框的坐标,进行变换后的已有标注框的坐标为:
[0096] φG(x)=(xG-x)/w
[0097] φG(y)=(yG-y)/h
[0098] φG(w)=log(wG/w)
[0099] φG(h)=log(hG/h)
[0100] 也即将已有标注框相对于第一锚点框的坐标做了变换。
[0101] 同样的,将第一预测框相对于第一锚点框的坐标做变换变换后的第一预测框的坐标为:
[0102] φp(x)=(xp-x)/w
[0103] φp(y)=(yp-y)/h
[0104] φp(w)=log(wp/w)
[0105] φp(h)=log(hp/h)
[0106] 可选地,在前面实施例中已经解释,本实施例中,第一识别区为羊脸,那么,可以采用损失函数
[0107] 计算获取第一识别区对应的损失函数。其中Lloc为位置误差,Lconf为类别置信度误差; 为正样本第一锚点框anchor  box的类别预测损失;为负样本第一锚点框的类别预测损失;α,β分别为Lloc和Lconf的权重,Nm为训练过程中,第一预测框与锚点框匹配上的数量(即正样本第一锚点框);Iijk为一个示性函数,当为正样本第一锚点框时,Iijk为1,当为负样本第一锚点框时,Iijk则为0;c∈[1,C],C为要检测目标类别数量。当第一锚点框预测羊脸时,对应的Tc为1。通过上述计算,即可以获取第一识别区对应的损失函数。
[0108] 图8为本申请实施例提供的另一种基于半监督学习的检测模型训练方法的流程示意图,可选地,扩增标注框中每个像素点对应至少一个第二锚点框;如图8所示,上述步骤S402中,根据每个第二预测框和对应的扩增标注框,确定一个第二识别区对应的损失函数值,可以包括:
[0109] S601、根据至少一个第二锚点框的坐标,分别对第二预测框和对应的扩增标注框的坐标进行转换。
[0110] S602、根据转换后的第二预测框的坐标和扩增标注框的坐标,确定一个第二识别区对应的损失函数值。
[0111] 可选地,对于不同的第二识别区,各第二识别区对应的扩增标注框中每个像素点也同样预分配有至少一个第二锚点框。具体地对于第二识别区对应的损失函数值的计算过程与上述第一识别区对应的损失函数值的计算方式相同,对应将第一识别区的标注框的坐标替换为第二识别区的标注框的坐标即可。对于具体的计算过程,此处不再一一赘述。
[0112] 图9为本申请实施例提供的一种基于半监督学习的目标检测方法的流程示意图,可选地,如图9所示,该方法可以包括:
[0113] S701、获取检测图像。
[0114] S702、根据预先训练的检测模型,对检测图像中检测目标的第一识别区和至少一个第二识别区进行检测。
[0115] 其中,检测模型采用的是通过本申请实施例提供的基于半监督学习的检测模型训练方法训练得到的。
[0116] 可选地,可以采用该检测模型,对符合条件的图像中的检测目标检测,得到检测结果。例如:训练得到的检测模型为羊检测模型,那么符合条件的图像也即包含羊的图像,这样,通过检测,可以确定出图像中的羊脸、羊颈和羊身体等。当然,上述实施例中列举的第二识别区为羊颈和羊身体,实际情况中,并不限于该两个部位,可以根据不同的扩增比例,得到更多第二识别区的扩增标注框。
[0117] 综上所述,本申请实施例提供一种基于半监督学习的检测模型训练方法,方法包括:根据样本图像中检测目标的第一识别区的已有标注框,分别采用至少一个预设扩增规则,得到样本图像中检测目标的至少一个第二识别区的扩增标注框;每个预设扩增规则对应一个第二识别区;根据具有已有标注框和扩增标注框的样本图像进行模型训练,得到检测模型;检测模型用于对待测图像中检测目标的第一识别区和至少一个第二识别区进行检测。通过对样本图像中检测目标的第一识别区的已有标注框,采用预设扩增规则,得到其他多个识别区的扩增标注框,并根据第一识别区的已有标注框以及其他识别区的扩增标注框进行模型的训练,得到检测模型。其中,通过预设扩增规则,在已有标注框的基础上,得到多个扩增标注框,可以有效提高训练样本扩增速度,从而提高检测模型训练的效率,同时也有效增强了检测模型的泛化能力。另外,通过采用改进后的损失函数,对训练得到的检测模型进行优化,使得检测模型的检测精确度更高。
[0118] 图10为本申请实施例还提供的一种基于半监督学习的检测模型训练装置的示意图,该装置可以包括:扩增模块801、训练模块802;
[0119] 扩增模块801,用于根据样本图像中检测目标的第一识别区的已有标注框,分别采用至少一个预设扩增规则,得到样本图像中检测目标的至少一个第二识别区的扩增标注框;每个预设扩增规则对应一个第二识别区;
[0120] 训练模块802,用于根据具有已有标注框和扩增标注框的样本图像进行模型训练,得到检测模型;检测模型用于对待测图像中检测目标的第一识别区和至少一个第二识别区进行检测。
[0121] 可选地,扩增模块801,具体用于根据第一识别区的已有标注框的坐标,和一个预设扩增规则对应的预设扩增比例,得到一个第二识别区的扩增标注框的坐标;根据至少一个第二识别区的扩增标注框的坐标,对样本图像进行标注,得到至少一个第二识别区的扩增标注框。
[0122] 可选地,如图11所示,该装置还可以包括:预测模块803、确定模块804、更新模块805;
[0123] 预测模块803,用于采用检测模型,对样本图像进行预测,得到第一识别区的第一预测框和至少一个第二识别区的第二预测框;
[0124] 确定模块804,用于根据第一预测框、至少一个第二预测框、已有标注框、至少一个扩增标注框,确定检测模型的损失函数值;
[0125] 更新模块805,用于根据损失函数值,对检测模型的参数进行更新,直至更新后的检测模型的损失函数值最小。
[0126] 可选地,确定模块804,具体用于根据第一预测框和已有标注框,确定第一识别区对应的损失函数值;根据一个第二预测框和对应的扩增标注框,确定一个第二识别区对应的损失函数值;根据第一识别区对应的损失函数值和至少一个第二识别区对应的损失函数值,确定检测模型的损失函数值。
[0127] 可选地,已有标注框中每个像素点对应至少一个第一锚点框;
[0128] 确定模块804,具体用于根据至少一个第一锚点框的坐标,分别对第一预测框和已有标注框的坐标进行转换;根据转换后的第一预测框的坐标和已有标注框的坐标,确定第一识别区对应的损失函数值。
[0129] 可选地,扩增标注框中每个像素点对应至少一个第二锚点框;
[0130] 确定模块804,具体用于根据至少一个第二锚点框的坐标,分别对第二预测框和对应的扩增标注框的坐标进行转换;根据转换后的第二预测框的坐标和扩增标注框的坐标,确定一个第二识别区对应的损失函数值。
[0131] 上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
[0132] 以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(digital singnal processor,简称DSP),或,一个或者多个现场可编程阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(Central Processing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。
[0133] 图12为本申请实施例提供的另一种基于半监督学习的检测模型训练装置的示意图,该装置可以集成于终端设备或者终端设备的芯片,该终端可以是具备数据处理功能的计算设备。
[0134] 该装置包括:处理器901、存储器902。
[0135] 存储器902用于存储程序,处理器901调用存储器902存储的程序,以执行上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。
[0136] 可选地,本发明还提供一种程序产品,例如计算机可读存储介质,包括程序,该程序在被处理器执行时用于执行上述方法实施例。
[0137] 在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0138] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0139] 另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0140] 上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈