锚点框确定方法、装置、计算机设备和存储介质转让专利

申请号 : CN201910762575.X

文献号 : CN110472588B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 周康明

申请人 : 上海眼控科技股份有限公司

摘要 :

本申请涉及人脸检测领域,具体是一种锚点框确定方法、装置、计算机设备和存储介质。该方法包括:接收终端发送的标注有真实人脸框的人脸图像集以及锚点框属性范围,根据锚点框属性范围确定当前种群,获取当前种群中的每个当前粒子的当前位置和当前移动速度;根据每个当前粒子对应的锚点框与真实人脸框之间的交并比,计算每个当前粒子的适应度值;根据粒子优化算法以及当前粒子的适应度值对当前种群进行优化,则根据优化后的当前种群中每个优化后的粒子的位置得到锚点框的尺寸;通过锚点框对应的特征图像的像素点确定锚点框的中心点位置,并根据锚点框的中心点位置以及锚点框的尺寸确定锚点框。采用本方法能够提高锚点框确定效率。

权利要求 :

1.一种人脸检测中锚点框确定方法,所述方法包括:

接收终端发送的标注有真实人脸框的人脸图像集以及锚点框属性范围,根据所述锚点框属性范围确定当前种群,所述当前种群包括多个粒子,并获取所述当前种群中的每个粒子的位置和移动速度;

根据每个粒子对应的锚点框与真实人脸框之间的交并比,计算每个所述粒子的适应度值;

遍历所述当前种群得到当前粒子,并根据所述当前种群中适应度值最大的粒子的位置、所述当前种群中任意一个随机粒子的位置,对所述当前粒子的移动速度进行更新;

根据更新后的移动速度确定所述当前粒子对应的更新粒子,并通过所述更新粒子对所述当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群;

更新所述当前种群对应的迭代次数,并判断所述迭代次数是否达到最大迭代次数,若是,则根据优化后的所述当前种群中每个优化后的粒子的位置得到锚点框的尺寸;

通过所述锚点框对应的特征图像的像素点确定锚点框的中心点位置,并根据所述锚点框的中心点位置以及所述锚点框的尺寸确定锚点框。

2.根据权利要求1所述的方法,其特征在于,所述根据每个粒子对应的锚点框与真实人脸框之间的交并比,计算每个所述粒子的适应度值,包括:根据所述人脸图像集得到真实人脸框集合;

遍历真实人脸框集合得到当前真实人脸框,并计算所述当前真实人脸框与所述粒子对应的锚点框的交并比;

选取交并比最大的一个作为与所述当前真实人脸框对应的交并比;

获取所述真实人脸框集合中所有的所述当前真实人脸框对应的交并比的平均值作为所述粒子的适应度值。

3.根据权利要求1所述的方法,其特征在于,所述通过所述更新粒子对所述当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群,包括:计算所述更新粒子对应的适应度值;

当所述更新粒子对应的适应度值大于适应度值最大的粒子的适应度值,则通过所述更新粒子替换所述适应度值最大的粒子;

当所述更新粒子对应的适应度值大于适应度值最小的粒子的适应度值,则通过所述更新粒子替换所述适应度值最小的粒子。

4.根据权利要求1所述的方法,其特征在于,所述根据所述当前种群中适应度值最大的粒子的位置、所述当前种群中任意一个随机粒子的位置,对所述当前粒子的移动速度进行更新,包括:根据以下公式对所述当前粒子的移动速度进行更新:

其中, 表示第i个粒子的更新后的移动速度向量在d维度下的数值,即更新后的当前粒子的移动速度; 表示第i个粒子的移动速度向量在d维度下的数值,即当前粒子的移动速度; 表示第i个粒子的位置向量在d维度下的数值,即当前粒子的位置; 表示从当前种群中随机选择的一个粒子的位置在d维度的数值,即所述当前种群中一个随机粒子的位置; 表示所有粒子中最佳位置在d维度的数值,即所述当前种群中适应度值最大的粒子的位置;ω表示惯性因子常数;c1和c2表示加速度因子常数;rand1和rand2表示两个不同的在[0,1]范围内服从均匀分布的随机数。

5.根据权利要求1所述的方法,其特征在于,所述根据优化后的所述当前种群中每个优化后的粒子的位置得到锚点框的尺寸,包括:根据优化后的粒子的位置得到锚点框的尺度和高宽比;

根据以下公式以及所述尺度和高宽比计算得到锚点框的高和宽:

其中,wk表示第k个特征图上的锚点框的宽,hk表示第k个特征图上锚点框的高,Sk表示锚点框在第k个特征图上的尺度,rk表示锚点框在第k个特征图上的高宽比,每一种特征图对应一个尺度的锚点框。

6.根据权利要求5所述的方法,其特征在于,所述通过所述锚点框对应的特征图像的像素点确定锚点框的中心点位置,包括:根据以下公式确定锚点框的中心点位置:

其中,(y1,y2)表示锚点框中心点坐标,fk表示第k个特征图的尺寸,(a,b)表示第k个特征图像素点的坐标值。

7.一种人脸检测中锚点框确定装置,其特征在于,所述装置包括:

种群确定模块,用于接收终端发送的标注有真实人脸框的人脸图像集以及锚点框属性范围,根据所述锚点框属性范围确定当前种群,所述当前种群包括多个粒子,并获取所述当前种群中的每个粒子的位置和移动速度;

适应度值计算模块,用于根据每个粒子对应的锚点框与真实人脸框之间的交并比,计算每个所述粒子的适应度值;

更新模块,用于遍历所述当前种群得到当前粒子,并根据所述当前种群中适应度值最大的粒子的位置、所述当前种群中任意一个随机粒子的位置,对所述当前粒子的移动速度进行更新;

优化模块,用于根据更新后的移动速度确定所述当前粒子对应的更新粒子,并通过所述更新粒子对所述当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群;

高宽确定模块,用于更新所述当前种群对应的迭代次数,并判断所述迭代次数是否达到最大迭代次数,若是,则根据优化后的所述当前种群中每个优化后的粒子的位置得到锚点框的尺寸;

锚点框确定模块,用于通过所述锚点框对应的特征图像的像素点确定锚点框的中心点位置,并根据所述锚点框的中心点位置以及所述锚点框的尺寸确定锚点框。

8.根据权利要求7所述的装置,其特征在于,所述适应度值计算模块包括:集合获取单元,用于根据所述人脸图像集得到真实人脸框集合;

交并比计算单元,用于遍历真实人脸框集合得到当前真实人脸框,并计算所述当前真实人脸框与所述粒子对应的锚点框的交并比;

选取单元,用于选取交并比最大的一个作为与所述当前真实人脸框对应的交并比;

适应度值输出单元,用于获取所述真实人脸框集合中所有的所述当前真实人脸框对应的交并比的平均值作为所述粒子的适应度值。

9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。

说明书 :

锚点框确定方法、装置、计算机设备和存储介质

技术领域

[0001] 本申请涉及图像处理技术领域,特别是涉及一种锚点框确定方法、装置、计算机设备和存储介质。

背景技术

[0002] 随着图像识别技术的发展,出现了人脸检测技术,人脸检测是人脸识别、人脸关键点检测、人脸追踪、人脸表情识别等任务的基础,一直备受研究者和产业界关注。自从深度学习性能获得突破后,人脸检测算法的性能也带来飞跃式发展,目前人脸检测算法主要是基于通用目标检测框架而设计,比如FasterR-CNN和SSD,而这两种框架都用到锚点框。锚点框给预测框提供了一种参考,使得网络的输出的范围大大缩小,同时降低了预测难度。即锚点框是将通用目标检测算法应用到人脸检测过程中可以调整的重要超参数,锚点框的质量将直接决定着人脸检测模型的精度。
[0003] 然而,目前人脸检测中的锚点框大多是直接延续通用目标检测算法中的设计原则,即特征图上每个像素点都会设置4-9个不同大小和形状的锚点框。有部分人脸检测算法根据卷积神经网络的有效感受视野尺寸设计了锚点框的尺寸,并统一设置为正方形框,在特征图上每个像素点仅设置一个锚点框。然而这种手工设计的锚点框在模型训练和测试前很难度量其质量,调整这些超参数将非常耗时。

发明内容

[0004] 基于此,有必要针对上述技术问题,提供一种能够提高锚点框确定效率的锚点框确定方法、装置、计算机设备和存储介质。
[0005] 一种人脸检测中锚点框确定方法,所述方法包括:
[0006] 接收终端发送的标注有真实人脸框的人脸图像集以及锚点框属性范围,根据所述锚点框属性范围确定当前种群,所述当前种群包括多个粒子,并获取所述当前种群中的每个粒子的位置和移动速度;
[0007] 根据每个粒子对应的锚点框与真实人脸框之间的交并比,计算每个所述粒子的适应度值;
[0008] 遍历所述当前种群得到当前粒子,并根据所述当前种群中适应度值最大的粒子的位置、所述当前种群中任意一个随机粒子的位置,对所述当前粒子的移动速度进行更新;
[0009] 根据更新后的移动速度确定所述当前粒子对应的更新粒子,并通过所述更新粒子对所述当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群;
[0010] 更新所述当前种群对应的迭代次数,并判断所述迭代次数是否达到最大迭代次数,若是,则根据优化后的所述当前种群中每个优化后的粒子的位置得到锚点框的尺寸;
[0011] 通过所述锚点框对应的特征图像的像素点确定锚点框的中心点位置,并根据所述锚点框的中心点位置以及所述锚点框的尺寸确定锚点框。
[0012] 在其中一个实施例中,所述根据每个粒子对应的锚点框与真实人脸框之间的交并比,计算每个所述粒子的适应度值,包括:
[0013] 根据所述人脸图像集得到真实人脸框集合;
[0014] 遍历真实人脸框集合得到当前真实人脸框,并计算所述当前真实人脸框与所述粒子对应的锚点框的交并比;
[0015] 选取交并比最大的一个作为与所述当前真实人脸框对应的交并比;
[0016] 获取所述真实人脸框集合中所有的所述当前真实人脸框对应的交并比的平均值作为所述粒子的适应度值。
[0017] 在其中一个实施例中,所述通过所述更新粒子对所述当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群,包括:
[0018] 计算所述更新粒子对应的适应度值;
[0019] 当所述更新粒子对应的适应度值大于适应度值最大的粒子的适应度值,则通过所述更新粒子替换所述适应度值最大的粒子;
[0020] 当所述更新粒子对应的适应度值大于适应度值最小的粒子的适应度值,则通过所述更新粒子替换所述适应度值最小的粒子。
[0021] 在其中一个实施例中,所述根据所述当前种群中适应度值最大的粒子的位置、所述当前种群中一个随机粒子的位置对所述当前粒子的移动速度进行更新,包括:
[0022] 根据以下公式对所述当前粒子的移动速度进行更新:
[0023]
[0024] 其中, 表示第i个粒子的更新后的移动速度向量在d维度下的数值,即更新后的当前粒子的移动速度; 表示第i个粒子的移动速度向量在d维度下的数值,即当前粒子的移动速度; 表示第i个粒子的位置向量在d维度下的数值,即当前粒子的位置; 表示从当前种群中随机选择的一个粒子的位置在d维度的数值,即所述当前种群中一个随机粒子的位置; 表示所有粒子中最佳位置在d维度的数值,即所述当前种群中适应度值最大的粒子的位置;ω表示惯性因子常数;c1和c2表示加移动速度因子常数;rand1和rand2表示两个不同的在[0,1]范围内服从均匀分布的随机数。
[0025] 在其中一个实施例中,所述根据优化后的所述当前种群中每个优化后的粒子的位置得到锚点框的尺寸,包括:
[0026] 根据优化后的粒子的位置得到锚点框的尺度和高宽比;
[0027] 根据以下公式以及所述尺度和高宽比计算得到锚点框的高和宽:
[0028]
[0029]
[0030] 其中,wk表示第k个特征图上的锚点框的宽,hk表示第k个特征图上锚点框的高,Sk表示锚点框在第k个特征图上的尺度,rk表示锚点框在第k个特征图上的高宽比,每一种特征图对应一个尺度的锚点框。
[0031] 在其中一个实施例中,所述通过所述锚点框对应的特征图像的像素点确定锚点框的中心点位置,包括:
[0032] 根据以下公式确定锚点框的中心点位置:
[0033]
[0034]
[0035] 其中,(y1,y2)表示锚点框中心点坐标,|fk|表示第k个特征图的尺寸,(a,b)表示第k个特征图像素点的坐标值。
[0036] 一种人脸检测中锚点框确定装置,所述装置包括:
[0037] 种群确定模块,用于接收终端发送的标注有真实人脸框的人脸图像集以及锚点框属性范围,根据所述锚点框属性范围确定当前种群,所述当前种群包括多个粒子,并获取所述当前种群中的每个粒子的位置和移动速度;
[0038] 适应度值计算模块,用于根据每个粒子对应的锚点框与真实人脸框之间的交并比,计算每个所述粒子的适应度值;
[0039] 更新模块,用于遍历所述当前种群得到当前粒子,并根据所述当前种群中适应度值最大的粒子的位置、所述当前种群中任意一个随机粒子的位置,对所述当前粒子的移动速度进行更新;
[0040] 优化模块,用于根据更新后的移动速度确定所述当前粒子对应的更新粒子,并通过所述更新粒子对所述当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群;
[0041] 高宽确定模块,用于更新所述当前种群对应的迭代次数,并判断所述迭代次数是否达到最大迭代次数,若是,则根据优化后的所述当前种群中每个优化后的粒子的位置得到锚点框的尺寸;
[0042] 锚点框确定模块,用于通过所述锚点框对应的特征图像的像素点确定锚点框的中心点位置,并根据所述锚点框的中心点位置以及所述锚点框的尺寸确定锚点框。
[0043] 在其中一个实施例中,所述适应度值计算模块包括:
[0044] 集合获取单元,用于根据所述人脸图像集得到真实人脸框集合;
[0045] 交并比计算单元,用于遍历真实人脸框集合得到当前真实人脸框,并计算所述当前真实人脸框与所述粒子对应的锚点框的交并比;
[0046] 选取单元,用于选取交并比最大的一个作为与所述当前真实人脸框对应的交并比;
[0047] 适应度值输出单元,用于获取所述真实人脸框集合中所有的所述当前真实人脸框对应的交并比的平均值作为所述粒子的适应度值。一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
[0048] 一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
[0049] 上述锚点框确定方法,在接收到人脸图像集后,则确定当前种群,然后遍历当前种群中的粒子,并且根据每个粒子对应的锚点框与真实人脸框之间的交并比计算得到粒子的适应度值,并根据新的粒子优化算法来对当前种群进行优化,即遍历当前种群得到当前粒子,并根据当前种群中适应度值最大的粒子的位置、当前种群中一个随机粒子的位置对当前粒子的移动速度进行更新,根据更新后的移动速度确定当前粒子对应的更新粒子,并通过更新粒子对当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群,从而服务器根据优化后的当前种群确定对应的锚点框的尺寸,然后根据锚点框对应的特征图像的像素点确定锚点框的中心点位置,这样根据中心点的位置以及高和宽即可以确定锚点框,这样基于不同的人脸图像集可以确定不同的锚点框,且不需要人工调整锚点框的参数,提高了效率。

附图说明

[0050] 图1为一个实施例中人脸检测中锚点框确定方法的应用环境图;
[0051] 图2为一个实施例中人脸检测中锚点框确定方法的流程示意图;
[0052] 图3为另一个实施例中人脸检测中锚点框确定方法的流程示意图;
[0053] 图4为一个实施例中人脸检测中锚点框确定装置的结构框图;
[0054] 图5为一个实施例中计算机设备的内部结构图。

具体实施方式

[0055] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0056] 本申请提供的人脸检测中锚点框确定方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104通过网络进行通信。终端102收集到标注有真实人脸框的人脸图像集以及锚点框属性范围,并发送给服务器104,服务器接收到该人脸图像集后,根据锚点框属性范围确定当前种群,当前种群中包括多个粒子,并确定当前种群中的每个粒子的位置和移动速度,根据每个粒子对应的锚点框与真实人脸框之间的交并比,计算每个粒子的适应度值,并根据新的粒子优化算法来对当前种群进行优化,即遍历当前种群得到当前粒子,并根据当前种群中适应度值最大的粒子的位置、当前种群中任意一个随机粒子的位置,对当前粒子的移动速度进行更新,根据更新后的移动速度确定当前粒子对应的更新粒子,并通过更新粒子对当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群,从而服务器根据优化后的当前种群确定对应的锚点框的尺寸,然后根据锚点框对应的特征图像的像素点确定锚点框的中心点位置,这样根据中心点的位置以及高和宽即可以确定锚点框,这样基于不同的人脸图像集可以确定不同的锚点框,且不需要人工调整锚点框的参数,提高了效率。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
[0057] 在一个实施例中,如图2所示,提供了一种人脸检测中锚点框确定方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
[0058] S202:接收终端发送的标注有真实人脸框的人脸图像集以及锚点框属性范围,根据锚点框属性范围确定当前种群,当前种群包括多个粒子,并获取当前种群中的每个粒子的位置和移动速度。
[0059] 具体地,终端所收集的人脸图像集是无限制场景下的人脸图像集,其标注了真实人脸框位置,真实人脸框所包括的区域是真实人脸的区域。终端将该人脸图像集发送给服务器,以便于服务器进行处理后得到该人脸图像集对应的锚点框的尺寸。
[0060] 其中,人脸图像集中每张人脸图像均对应有预设个不同尺度的特征图像,即一个人脸图像集可以对应有多个不同尺度的特征图像,每种尺度则对应一种锚点框,因此一个粒子需要对应多个锚点框,以对应多个不同尺度的特征图像。所以服务器在接收到人脸图像集后,可以在搜索空间内均匀地随机初始化生成n个解X,其中搜索空间可以是预先设置的,例如预先设置每个粒子的位置,即每个粒子对应的锚点框的尺度和高宽比,假设粒子位置为x={s1,…,sk,r1,…,rk},搜索空间为尺度限制为(0,1)之间,高宽比限制为[0.3,3]之间。则服务器在搜索空间中均匀地选取k个s和k个r即可以确定一个粒子位置x,也即一个解X,每个解即一个当前粒子,所有的解则组成了当前种群,每个粒子由位置x、移动速度以及适应度值来表示,每个位置x则对应了k种不同尺度的特征图像,即对应了k种尺度的锚点框,且粒子位置x可以通过锚点框的尺度和高宽比来表示。
[0061] 例如假设一个人脸图像集中包括一万张图片,每张图片对应有6种不同尺度的特征图像,则人脸图像集对应有6种不同尺度的特征图像,每种尺度的特征图像对应一种锚点框,因此每个粒子可以包括6个位置,即6种不同尺度的锚点框,因此当前种群包括5个粒子时,每个粒子又包括了6种粒子位置,从而当前种群其实是30种锚点框。
[0062] 当前种群是服务器在搜索空间均匀地随机初始化生成的n个解,每个解即当前粒子,每个粒子包括粒子位置、粒子的移动速度以及粒子适应度值,其中粒子位置包括锚点框的尺度和锚点框的高宽比,因此服务器可以根据粒子位置计算得到锚点框的宽和高,粒子的移动速度和粒子适应度值是用于更新当前种群的,其中粒子位置和粒子的移动速度是矢量,粒子的适应度值是标量。
[0063] 服务器根据人脸图像集确定当前种群后,即确定了种群中每一个当前粒子的当前位置和当前移动速度。
[0064] S204:根据每个粒子对应的锚点框与真实人脸框之间的交并比,计算每个粒子的适应度值。
[0065] 具体地,服务器在确定粒子的移动速度和位置后,则首先确定粒子对应的锚点框。然后,获取人脸图像集中每一张人脸图像对应的真实人脸框。最后,服务器求得锚点框与真实人脸框的交并比作为每个粒子的适应度值。
[0066] 具体服务器确定粒子对应的锚点框可以包括:服务器根据位置得到锚点框的高宽比以及尺度,然后根据高宽比和尺度计算得到锚点框的高和宽,再获取到对应特征图像的像素点以确定锚点框的中心位置,这样粒子对应的锚点框则可以确定。
[0067] S206:遍历当前种群得到当前粒子,并根据当前种群中适应度值最大的粒子的位置、当前种群中任意一个随机粒子的位置,对当前粒子的移动速度进行更新。
[0068] S208:根据更新后的移动速度确定当前粒子对应的更新粒子,并通过更新粒子对当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群。
[0069] 具体地,服务器在计算得到当前种群中的粒子的适应度值后,则开始对当前种群进行更新以使得当前种群中大多数粒子最后的适应度值最大,即保证当前种群中大部分粒子都处于最佳位置。
[0070] 服务器对当前种群进行遍历,随机选取其中一个当前粒子,并根据当前粒子的当前种群中适应度值最大的粒子的位置、当前种群中一个随机粒子的位置对当前粒子的移动速度进行更新,从而可以根据更新后的移动速度确定单位时间后当前粒子的新的位置以得到更新粒子。服务器得到更新粒子后由于粒子的位置发生变化,因此需要重新获取到更新粒子的适应度值,并通过将更新粒子的适应度值对当前种群中适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群。即服务器比较更新粒子的适应度值是否大于最大适应度值,若大于,则说明适应度值最大的粒子的最佳位置应该是更新粒子的位置,因此用更新粒子替换适应度值最大的粒子。服务器比较更新粒子的适应度值是否大于最小适应度值,若大于,则说明适应度值最小的粒子的最佳位置应该是更新粒子的位置,因此用更新粒子替换适应度值最大的粒子。然后服务器继续获取当前种群中下一个当前粒子,并继续上述更新操作以对当前种群进行优化。
[0071] S210:更新当前种群对应的迭代次数,并判断迭代次数是否达到最大迭代次数,若是,则根据优化后的当前种群中每个优化后的粒子的位置得到锚点框的尺寸。
[0072] S212:通过锚点框对应的特征图像的像素点确定锚点框的中心点位置,并根据锚点框的中心点位置以及锚点框的尺寸确定锚点框。
[0073] 具体地,为了节约资源,防止当前种群无限地进行更新,服务器可以预先设置最大迭代次数,服务器每次对当前种群更新完成后,均更新迭代次数,并将更新后的迭代次数与最大迭代次数比对,若到达最大迭代次数,则更新完成,输出优化后的当前种群即可。
[0074] 服务器在得到优化后的当前种群后,首先根据每个优化后的粒子的位置得到锚点框的尺寸,即根据每个优化后的粒子对应的锚点框的尺度和高宽比得到锚点框的高和宽。然后服务器根据锚点框对应的特征图像的像素点确定锚点框的中心位置,这样锚点框的中心位置、高宽都已知,则锚点框也是确定的。
[0075] 从而在进行模型训练的时候,锚点框的尺度和高宽比均保持不变,即根据上述得到的锚点框对人脸图像集中的人脸图像的像素点的锚点框进行设置,从而进行模型训练。
[0076] 上述锚点框确定方法,在接收到人脸图像集后,则确定当前种群,然后遍历当前种群中的粒子,并且根据每个粒子对应的锚点框与真实人脸框之间的交并比计算得到粒子的适应度值,并根据新的粒子优化算法来对当前种群进行优化,即遍历当前种群得到当前粒子,并根据当前种群中适应度值最大的粒子的位置、当前种群中一个随机粒子的位置对当前粒子的移动速度进行更新,根据更新后的移动速度确定当前粒子对应的更新粒子,并通过更新粒子对当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群,从而服务器根据优化后的当前种群确定对应的锚点框的尺寸,然后根据锚点框对应的特征图像的像素点确定锚点框的中心点位置,这样根据中心点的位置以及高和宽即可以确定锚点框,这样基于不同的人脸图像集可以确定不同的锚点框,且不需要人工调整锚点框的参数,提高了效率。
[0077] 在其中一个实施例中,根据每个粒子对应的锚点框与真实人脸框之间的交并比,计算每个所述粒子的适应度值,包括:根据所述人脸图像集得到真实人脸框集合;遍历真实人脸框集合得到当前真实人脸框,并计算所述当前真实人脸框与所述粒子对应的锚点框的交并比;选取交并比最大的一个作为与所述当前真实人脸框对应的交并比;获取所述真实人脸框集合中所有的所述当前真实人脸框对应的交并比的平均值作为所述粒子的适应度值。
[0078] 具体地,假设A为当前种群中当前粒子对应的锚点框的集合,G为所有真实人脸框的集合。对于G中每个真实人脸框bgt,将其与A中的每个锚点框ba计算交并比,并取最大值作为该真实人脸框的所匹配到的锚点框最大交并比值。而G中所有真实人脸框的交并比的平均值即作为当前粒子的适应度值,具体可以通过以下公式进行表示:
[0079]
[0080] 其中,mean表示取平均值,max表示取最大值, 表示真实人脸框bgt与锚点框ba交并比的计算,bgt∩ba表示真实人脸框bgt和锚点框ba的重叠部分,bgt∪ba表示真实人脸框bgt和锚点框ba的所有部分。
[0081] 此外,对于上文中求解更新粒子的适应度值的方式也可以参考此处,不做赘述,仅需要说明的是更新粒子的适应度值越大,则表示对应的解X越好。
[0082] 上述实施例中,由于锚点框与人脸图像集中的真实人脸框的交并比越大,则模型的学习难度越小,因此,为了降低模型的学习难度,因此通过锚点框与真实人脸框之间的交并比来确定当前粒子的优劣,进而进行当前种群的优化。
[0083] 在其中一个实施例中,通过更新粒子对当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群,包括:计算更新粒子对应的适应度值;当更新粒子对应的适应度值大于适应度值最大的粒子的适应度值,则通过更新粒子替换适应度值最大的粒子;当更新粒子对应的适应度值小于适应度值最小的粒子的适应度值,则通过更新粒子替换适应度值最小的粒子。
[0084] 在其中一个实施例中,根据当前种群中适应度值最大的粒子的位置、当前种群中一个随机粒子的位置对当前粒子的移动速度进行更新,包括:根据以下公式对当前粒子的移动速度进行更新:
[0085]
[0086] 其中, 表示第i个粒子的更新后的移动速度向量在d维度下的数值,即更新后的当前粒子的移动速度; 表示第i个粒子的移动速度向量在d维度下的数值,即当前粒子的移动速度; 表示第i个粒子的位置向量在d维度下的数值,即当前粒子的位置; 表示从当前种群中随机选择的一个粒子的位置在d维度的数值,即当前种群中一个随机粒子的位置; 表示所有粒子中最佳位置在d维度的数值,即当前种群中适应度值最大的粒子的位置;ω表示惯性因子常数;c1和c2表示加移动速度因子常数;rand1和rand2表示两个不同的在[0,1]范围内服从均匀分布的随机数。
[0087] 具体地,参见图3,图3为另一个实施例中的人脸检测中锚点框确定方法的流程图。
[0088] 首先服务器确定当前种群,并初始化当前种群中每个粒子的位置和移动速度,一般地所有粒子的初始移动速度为0,位置则随机均匀地确定,每个粒子的位置则对应一组特征图像,即多个尺度的特征图像,一个尺度的特征图像则对应一个尺度的锚点框,其中粒子的位置用x表示,x={s1,…,sk,r1,…,rk}。
[0089] 其次,计算每个粒子的适应度值,并从中选取适应度值最大的一个粒子和适应度值最小的一个粒子。其中每个粒子的适应度值的计算方式包括:获取到人脸图像集,并从人脸图像集中读取真实人脸框,例如人脸图像集中包括一万张图片,则可能存在一万五千个真实人脸框,首先计算第一个真实人脸框与当前粒子对应的锚点框的交并集,并选取交并集最大的一个作为第一个真实人脸框对应的交并集,然后重复计算得到一万五千个真实人脸框的交并集,最后计算一万五千个真实人脸框的交并集的平均值作为当前粒子对应的适应度值。重复计算以得到当前种群中所有粒子的适应度值,从而可以从中选取适应度值最大的一个粒子和适应度值最小的一个粒子。
[0090] 第三,开始当前种群的优化,即从当前种群中随机选取一个当前粒子,并根据当前种群中适应度值最大的粒子的位置、当前种群中一个随机粒子的位置对当前粒子的移动速度进行更新,具体是根据以下公式对当前粒子的移动速度进行更新:
[0091]
[0092] 其中, 表示第i个粒子的更新后的移动速度向量在d维度下的数值,即更新后的当前粒子的移动速度; 表示第i个粒子的移动速度向量在d维度下的数值,即当前粒子的移动速度; 表示第i个粒子的位置向量在d维度下的数值,即当前粒子的位置; 表示从当前种群中随机选择的一个粒子的位置在d维度的数值,即当前种群中一个随机粒子的位置; 表示所有粒子中最佳位置在d维度的数值,即当前种群中适应度值最大的粒子的位置;ω表示惯性因子常数;c1和c2表示加移动速度因子常数;rand1和rand2表示两个不同的在[0,1]范围内服从均匀分布的随机数。其中的维度d是表示粒子位置的向量x的维度。
[0093] 第四,根据更新后的当前粒子的移动速度以及当前粒子的原始位置得到更新粒子,就u=xi+vi,并计算得到更新粒子的适应度值,其计算方式如上文所述。
[0094] 第五,将更新粒子的适应度值与适应度值最差的粒子的适应度进行比较,若更新粒子的适应度值更大,则通过更新粒子替换适应度值最差的粒子。
[0095] 第六,将更新粒子的适应度值与适应度值最大的粒子的适应度进行比较,若更新粒子的适应度值更大,则通过更新粒子替换适应度值最大的粒子。
[0096] 第七,将迭代次数加1,并与当前种群的最大迭代次数进行比较,若大于等于最大迭代次数,则停止更新,并输出优化后的当前种群,若小于最大迭代次数,则将优化后的当前种群作为当前种群,并继续步骤第三,重新从当前种群中随机选取一个当前粒子。
[0097] 第八,服务器输出优化后的当前种群后,则表示当前种群中大部分或者是所有的粒子均是最优的,即最靠近目标的,因此可以选取适应度值相等且最多的粒子,如果所有的粒子均是最优的,则随机选取一个即可。
[0098] 第九,服务器根据所选取的粒子的位置计算得到锚点框的尺寸,通过锚点框对应的特征图像的像素点确定锚点框的中心点位置,并根据锚点框的中心点位置以及锚点框的尺寸确定锚点框。
[0099] 上述实施例中,根据更新后的粒子优化算法进行迭代更新,从而对当前种群进行更新即可,并根据更新后的当前种群中的粒子的位置确定锚点框即可,不需要人工参与,提高效率。
[0100] 在其中一个实施例中,根据优化后的当前种群中每个优化后的粒子的位置得到锚点框的尺寸,包括:根据优化后的粒子的位置得到锚点框的尺度和高宽比;根据以下公式以及尺度和高宽比计算得到锚点框的高和宽:
[0101]
[0102]
[0103] 其中,wk表示第k个特征图上的锚点框的宽,hk表示第k个特征图上锚点框的高,Sk表示锚点框在第k个特征图上的尺度,rk表示锚点框在第k个特征图上的高宽比,每一种特征图对应一个尺度的锚点框。
[0104] 在其中一个实施例中,通过锚点框对应的特征图像的像素点确定锚点框的中心点位置,包括:根据以下公式确定锚点框的中心点位置:
[0105]
[0106]
[0107] 其中,(y1,y2)表示锚点框中心点坐标,|fk|表示第k个特征图的尺寸,(a,b)表示第k个特征图像素点的坐标值。
[0108] 具体地,服务器根据优化后的粒子得到粒子位置,粒子的位置即为x={s1,…,sk,r1,…,rk},其中,sk和rk分别表示锚点框在第k个特征图上的尺度和高宽比。此处限制锚点框尺度和高宽比的搜索范围,将尺度限制为(0,1)之间,高宽比限制为[0.3,3]之间。
[0109] 第k个特征图上的锚点框的宽和高分别为:
[0110]
[0111] 其中,wk表示第k个特征图上的锚点框的宽,hk表示第k个特征图上锚点框的高,Sk表示锚点框在第k个特征图上的尺度,rk表示锚点框在第k个特征图上的高宽比,每一种特征图对应一个尺度的锚点框。
[0112] 其中特征图像是基于原始人脸图像生成的,其一般为原始人脸图像的四分之一、八分之一等,因此特征图像中的一个像素点其相当于原始人脸图像的一块儿区域。
[0113] 每个锚点框由四个变量组成,即(y1,y2,w,h)。其中,y1、y2分别表示锚点框中心点的坐标,w、h分别表示锚点框的宽和高。锚点框的中心点位置由特征图像素点决定,即:
[0114]
[0115]
[0116] 其中,(y1,y2)表示锚点框中心点坐标,|fk|表示第k个特征图的尺寸,(a,b)表示第k个特征图像素点的坐标值,i、j表示第k个特征图像素点的坐标值。
[0117] 因此,通过锚点框的中心位置以及锚点框的尺寸即可确定锚点框,从而在模型训练的时候,每一张人脸图像均可以得到k张不同尺度的特征图像,且每一种尺度的特征图像对应一种尺度的锚点框。
[0118] 上述实施例中,在对当前种群优化完成后,则根据当前种群中的粒子的位置得到锚点框的尺寸,并根据特征图像得到锚点框的中心点坐标,从而可以确定锚点框。
[0119] 应该理解的是,虽然图2-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0120] 在一个实施例中,如图4所示,提供了一种人脸检测中锚点框确定装置,包括:种群确定模块100、适应度值计算模块200、更新模块300、优化模块400、高宽确定模块500和锚点框确定模块,其中:
[0121] 种群确定模块100,用于接收终端发送的标注有真实人脸框的人脸图像集以及锚点框属性范围,根据锚点框属性范围确定当前种群,当前种群包括多个粒子,并获取当前种群中的每个粒子的位置和移动速度。
[0122] 适应度值计算模块200,用于根据每个粒子对应的锚点框与真实人脸框之间的交并比,计算每个粒子的适应度值。
[0123] 更新模块300,用于遍历当前种群得到当前粒子,并根据当前种群中适应度值最大的粒子的位置、当前种群中任意一个随机粒子的位置,对当前粒子的移动速度进行更新。
[0124] 优化模块400,用于根据更新后的移动速度确定当前粒子对应的更新粒子,并通过更新粒子对当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群。
[0125] 高宽确定模块500,用于更新当前种群对应的迭代次数,并判断迭代次数是否达到最大迭代次数,若是,则根据优化后的当前种群中每个优化后的粒子的位置得到锚点框的尺寸。
[0126] 锚点框确定模块600,用于通过锚点框对应的特征图像的像素点确定锚点框的中心点位置,并根据锚点框的中心点位置以及锚点框的尺寸确定锚点框。
[0127] 在其中一个实施例中,适应度值计算模块200包括:
[0128] 集合获取单元,用于根据人脸图像集得到真实人脸框集合;
[0129] 交并比计算单元,用于遍历真实人脸框集合得到当前真实人脸框,并计算所述当前真实人脸框与所述粒子对应的锚点框的交并比。
[0130] 选取单元,用于选取交并比最大的一个作为与当前真实人脸框对应的交并比。
[0131] 适应度值输出单元,用于获取所述真实人脸框集合中所有的所述当前真实人脸框对应的交并比的平均值作为所述粒子的适应度值。
[0132] 在其中一个实施例中,上述优化模块400可以包括:
[0133] 适应度值计算单元,用于计算更新粒子对应的适应度值。
[0134] 优化单元,用于当更新粒子对应的适应度值大于适应度值最大的粒子的适应度值,则通过更新粒子替换适应度值最大的粒子;当更新粒子对应的适应度值小于适应度值最小的粒子的适应度值,则通过更新粒子替换适应度值最小的粒子。
[0135] 在其中一个实施例中,上述更新模块300可以用于根据以下公式对当前粒子的移动速度进行更新:
[0136]
[0137] 其中, 表示第i个粒子的更新后的移动速度向量在d维度下的数值,即更新后的当前粒子的移动速度; 表示第i个粒子的移动速度向量在d维度下的数值,即当前粒子的移动速度; 表示第i个粒子的位置向量在d维度下的数值,即当前粒子的位置; 表示从当前种群中随机选择的一个粒子的位置在d维度的数值,即当前种群中一个随机粒子的位置; 表示所有粒子中最佳位置在d维度的数值,即当前种群中适应度值最大的粒子的位置;ω表示惯性因子常数;c1和c2表示加移动速度因子常数;rand1和rand2表示两个不同的在[0,1]范围内服从均匀分布的随机数。
[0138] 在其中一个实施例中,上述高宽确定模块500可以包括:
[0139] 第一计算单元,用于根据优化后的粒子的位置得到锚点框的尺度和高宽比。
[0140] 第二计算单元,用于根据以下公式以及尺度和高宽比计算得到锚点框的高和宽:
[0141]
[0142]
[0143] 其中,wk表示第k个特征图上的锚点框的宽,hk表示第k个特征图上锚点框的高,Sk表示锚点框在第k个特征图上的尺度,rk表示锚点框在第k个特征图上的高宽比,每一种特征图对应一个尺度的锚点框。
[0144] 在其中一个实施例中,上述锚点框确定模块600可以用于根据以下公式确定锚点框的中心点位置:
[0145]
[0146]
[0147] 其中,(y1,y2)表示锚点框中心点坐标,|fk|表示第k个特征图的尺寸,(a,b)表示第k个特征图像素点的坐标值。
[0148] 关于人脸检测中锚点框确定装置的具体限定可以参见上文中对于人脸检测中锚点框确定方法的限定,在此不再赘述。上述人脸检测中锚点框确定装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0149] 在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储锚点框。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种人脸检测中锚点框确定方法。
[0150] 本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0151] 在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:接收终端发送的标注有真实人脸框的人脸图像集以及锚点框属性范围,根据锚点框属性范围确定当前种群,当前种群包括多个粒子,并获取当前种群中的每个粒子的位置和移动速度;根据每个粒子对应的锚点框与真实人脸框之间的交并比,计算每个粒子的适应度值;遍历当前种群得到当前粒子,并根据当前种群中适应度值最大的粒子的位置、当前种群中任意一个随机粒子的位置,对当前粒子的移动速度进行更新;根据更新后的移动速度确定当前粒子对应的更新粒子,并通过更新粒子对当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群;更新当前种群对应的迭代次数,并判断迭代次数是否达到最大迭代次数,若是,则根据优化后的当前种群中每个优化后的粒子的位置得到锚点框的尺寸;通过锚点框对应的特征图像的像素点确定锚点框的中心点位置,并根据锚点框的中心点位置以及锚点框的尺寸确定锚点框。
[0152] 在一个实施例中,处理器执行计算机程序时所实现的根据每个粒子对应的锚点框与真实人脸框之间的交并比,计算每个所述粒子的适应度值,包括:根据所述人脸图像集得到真实人脸框集合;遍历真实人脸框集合得到当前真实人脸框,并计算所述当前真实人脸框与所述粒子对应的锚点框的交并比;选取交并比最大的一个作为与所述当前真实人脸框对应的交并比;获取所述真实人脸框集合中所有的所述当前真实人脸框对应的交并比的平均值作为所述粒子的适应度值。
[0153] 在一个实施例中,处理器执行计算机程序时所实现的通过更新粒子对当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群,包括:计算更新粒子对应的适应度值;当更新粒子对应的适应度值大于适应度值最大的粒子的适应度值,则通过更新粒子替换适应度值最大的粒子;当更新粒子对应的适应度值小于适应度值最小的粒子的适应度值,则通过更新粒子替换适应度值最小的粒子。
[0154] 在一个实施例中,处理器执行计算机程序时所实现的根据当前种群中适应度值最大的粒子的位置、当前种群中一个随机粒子的位置对当前粒子的移动速度进行更新,包括:根据以下公式对当前粒子的移动速度进行更新:
[0155]
[0156] 其中, 表示第i个粒子的更新后的移动速度向量在d维度下的数值,即更新后的当前粒子的移动速度; 表示第i个粒子的移动速度向量在d维度下的数值,即当前粒子的移动速度; 表示第i个粒子的位置向量在d维度下的数值,即当前粒子的位置; 表示从当前种群中随机选择的一个粒子的位置在d维度的数值,即当前种群中一个随机粒子的位置; 表示所有粒子中最佳位置在d维度的数值,即当前种群中适应度值最大的粒子的位置;ω表示惯性因子常数;c1和c2表示加移动速度因子常数;rand1和rand2表示两个不同的在[0,1]范围内服从均匀分布的随机数。
[0157] 在一个实施例中,处理器执行计算机程序时所实现的根据优化后的当前种群中每个优化后的粒子的位置得到锚点框的尺寸,包括:根据优化后的粒子的位置得到锚点框的尺度和高宽比;根据以下公式以及尺度和高宽比计算得到锚点框的尺寸:
[0158]
[0159]
[0160] 其中,wk表示第k个特征图上的锚点框的宽,hk表示第k个特征图上锚点框的高,Sk表示锚点框在第k个特征图上的尺度,rk表示锚点框在第k个特征图上的高宽比,每一种特征图对应一个尺度的锚点框。
[0161] 在一个实施例中,处理器执行计算机程序时所实现的通过锚点框对应的特征图像的像素点确定锚点框的中心点位置,包括:根据以下公式确定锚点框的中心点位置:
[0162]
[0163]
[0164] 其中,(y1,y2)表示锚点框中心点坐标,|fk|表示第k个特征图的尺寸,(a,b)表示第k个特征图像素点的坐标值。
[0165] 在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:接收终端发送的标注有真实人脸框的人脸图像集以及锚点框属性范围,根据锚点框属性范围确定当前种群,当前种群包括多个粒子,并获取当前种群中的每个粒子的位置和移动速度;根据每个粒子对应的锚点框与真实人脸框之间的交并比,计算每个粒子的适应度值;遍历当前种群得到当前粒子,并根据当前种群中适应度值最大的粒子的位置、当前种群中任意一个随机粒子的位置,对当前粒子的移动速度进行更新;根据更新后的移动速度确定当前粒子对应的更新粒子,并通过更新粒子对当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群;更新当前种群对应的迭代次数,并判断迭代次数是否达到最大迭代次数,若是,则根据优化后的当前种群中每个优化后的粒子的位置得到锚点框的尺寸;通过锚点框对应的特征图像的像素点确定锚点框的中心点位置,并根据锚点框的中心点位置以及锚点框的尺寸确定锚点框。
[0166] 在一个实施例中,计算机程序被处理器执行时所实现的根据每个粒子对应的锚点框与真实人脸框之间的交并比,计算每个所述粒子的适应度值,包括:根据所述人脸图像集得到真实人脸框集合;遍历真实人脸框集合得到当前真实人脸框,并计算所述当前真实人脸框与所述粒子对应的锚点框的交并比;选取交并比最大的一个作为与所述当前真实人脸框对应的交并比;获取所述真实人脸框集合中所有的所述当前真实人脸框对应的交并比的平均值作为所述粒子的适应度值。
[0167] 在一个实施例中,计算机程序被处理器执行时所实现的通过更新粒子对当前种群中的适应度值最大的粒子和/或适应度值最小的粒子进行替代得到优化后的当前种群,包括:计算更新粒子对应的适应度值;当更新粒子对应的适应度值大于适应度值最大的粒子的适应度值,则通过更新粒子替换适应度值最大的粒子;当更新粒子对应的适应度值小于适应度值最小的粒子的适应度值,则通过更新粒子替换适应度值最小的粒子。
[0168] 在一个实施例中,计算机程序被处理器执行时所实现的根据当前种群中适应度值最大的粒子的位置、当前种群中一个随机粒子的位置对当前粒子的移动速度进行更新,包括:根据以下公式对当前粒子的移动速度进行更新:
[0169]
[0170] 其中, 表示第i个粒子的更新后的移动速度向量在d维度下的数值,即更新后的当前粒子的移动速度; 表示第i个粒子的移动速度向量在d维度下的数值,即当前粒子的移动速度; 表示第i个粒子的位置向量在d维度下的数值,即当前粒子的位置; 表示从当前种群中随机选择的一个粒子的位置在d维度的数值,即当前种群中一个随机粒子的位置; 表示所有粒子中最佳位置在d维度的数值,即当前种群中适应度值最大的粒子的位置;ω表示惯性因子常数;c1和c2表示加移动速度因子常数;rand1和rand2表示两个不同的在[0,1]范围内服从均匀分布的随机数。
[0171] 在一个实施例中,计算机程序被处理器执行时所实现的根据优化后的当前种群中每个优化后的粒子的位置得到锚点框的尺寸,包括:根据优化后的粒子的位置得到锚点框的尺度和高宽比;根据以下公式以及尺度和高宽比计算得到锚点框的高和宽:
[0172]
[0173]
[0174] 其中,wk表示第k个特征图上的锚点框的宽,hk表示第k个特征图上锚点框的高,Sk表示锚点框在第k个特征图上的尺度,rk表示锚点框在第k个特征图上的高宽比,每一种特征图对应一个尺度的锚点框。
[0175] 在一个实施例中,计算机程序被处理器执行时所实现的通过锚点框对应的特征图像的像素点确定锚点框的中心点位置,包括:根据以下公式确定锚点框的中心点位置:
[0176]
[0177]
[0178] 其中,(y1,y2)表示锚点框中心点坐标,|fk|表示第k个特征图的尺寸,(a,b)表示第k个特征图像素点的坐标值。
[0179] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
[0180] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0181] 以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。