本发明涉及数据采集领域,尤其涉及一种人脸图像采集方法、系统及设备。
背景技术:
目前,人脸识别技术作为当前人工智能产业的主流支柱,已普遍落地于金融、社保、平安城市、社区、教育等各个领域中。而当前人脸识别算法的准确率在实际场景中仍然面临巨大的挑战,其主要受限于真实环境中的人脸大小、人脸角度等因素。通常,一个高质量的人脸数据集应用于人脸识别算法使得模型具有更强大的泛化能力。但是,当前主流的人脸识别算法所采用的数据集通常来自于公开的大规模数据集,而公开的大规模数据集中的场景与真实特定的场景存在着一定的差异,这在一定程度上对人脸识别算法提出了更高的要求。
当前主流的人脸图像采集方案,主要是利用人脸检测算法或人脸识别算法对待录制的人员进行过滤,对符合要求的人脸图像保存至本地存储库。即在一个开放的人员聚集环境下,使用固定的录制设备,提前设置好各个相机参数以及角度,录制不同的时间段路过的行人。
但是,现有技术使用固定的相机点位和固定的角度拍摄行人具有很大的局限性,由于其没有考虑人脸角度的信息,如果行人在相机拍摄的角度内具有左顾右盼的行为,将会导致拍摄到的人脸图像具有较大的差异,这是因为人脸的正脸和侧脸之间的特征并不是很相似,从而不利于人脸识别算法模型的学习。
技术实现要素:
本发明提供了一种人脸图像采集方法、系统和设备,本发明在采集人脸图像的过程中考虑了行人的人脸角度信息,使得所采集到的人脸图像的信息更精细化,并且能够有效降低图像采集过程中行人因左顾右盼造成的干扰,降低人脸图像采集失效的情况,有利于后期数据集的制作。
为了解决上述技术问题,本发明实施例提供了一种人脸图像采集方法,包括以下步骤:
获取摄像头拍摄的每张行人图像中每个行人所在地面网格的图像像素位置以及每个行人人脸高度的图像像素位置;其中,每张行人图像为通过摄像头拍摄每个行人在通过两侧封闭的过道时的图像,每张行人图像中将摄像头拍摄区域内的过道地面划分为n个大小相同的地面网格,每个地面网格的中心均包含有一个尺寸小于地面网格的十字架;
基于每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表,确定每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度;其中,每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表基于每个地面网格的十字架以及三维标定法建立得到;
根据每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度,计算每张行人图像中每个行人的人脸角度数据;
从每张行人图像中提取出每个行人的人脸图像,将每个行人的人脸图像以及每张行人图像所对应的人脸角度数据进行保存。
优选的,至少使用两个垂直高度不同的摄像头拍摄行人在通过过道不同区域时的图像。
优选的,基于每个地面网格的十字架以及三维标定法,建立每个地面网格到摄像头的水平距离查询表的具体过程为:
通过摄像头拍摄过道地面上包含有地面网格的查询图像;
提取查询图像中每个地面网格内十字架的边界,根据提取到的边界计算每个地面网格内十字架的横支架图像像素长度以及纵支架图像像素长度;
根据每个地面网格内十字架的横支架实际长度和每个地面网格内十字架的横支架图像像素长度分别计算每个地面网格的第一比例值;
根据每个地面网格内十字架的纵支架实际长度和每个地面网格内十字架的纵支架图像像素长度分别计算每个地面网格的第二比例值;
基于每个地面网格的第一比例值和第二比例值,计算每个地面网格距离摄像头的实际横向长度和每个地面网格距离摄像头的实际纵坐标;
根据所述每个地面网格距离摄像头的实际横向长度和每个地面网格距离摄像头的实际纵向长度计算每个地面网格到摄像头在水平方向上实际距离;
获取查询图像中每个地面网格的图像像素范围,根据每个地面网格到摄像头在水平方向上实际距离以及每个地面网格的图像像素范围建立每个地面网格到摄像头的水平距离查询表。
优选的,基于每个地面网格的第一比例值和第二比例值,计算每个地面网格距离摄像头的实际横向长度和每个地面网格距离摄像头的实际纵坐标的具体过程为:
根据摄像头到每个地面网格图像像素横向距离之间的每个地面网格的横向长度以及摄像头到每个地面网格图像像素横向距离之间的每个地面网格的第一比例值计算每个地面网格距离摄像头的实际横向长度;
根据摄像头到每个地面网格图像像素纵向距离之间的每个地面网格的纵向长度以及摄像头到每个地面网格图像像素纵向距离之间的每个地面网格的第二比例值计算每个地面网格距离摄像头的实际纵向长度。
优选的,基于每个地面网格的十字架以及三维标定法,建立每个地面网格的垂直高度查询表的具体过程为:
获取每个地面网格内的十字架在垂直方向特定高度范围内所对应的查询图像的图像像素距离,建立每个地面网格的垂直高度与图像像素距离对应关系,得到每个地面网格的垂直高度查询表。
优选的,获取摄像头拍摄的每张行人图像中每个行人人脸高度的图像像素位置,基于每个地面网格的垂直高度查询表确定每个行人的人脸高度的具体过程为:
使用行人检测算法对每张行人图像进行检测,得到每张行人图像中的行人框;
使用人脸检测算法对每张行人图像中的行人框进行检测,得到每张行人图像中的人脸框;
获取每张行人图像中行人框的下边框中点坐标以及每张行人图像中人脸框的中点坐标;
基于每张行人图像中行人框的下边框中点坐标以及每张行人图像中人脸框的中点坐标得到每个行人人脸高度的图像像素距离,基于每个地面网格的垂直高度查询表确定每个行人的人脸高度。
优选的,人脸角度数据包括人脸俯仰角数据以及人脸偏航角数据。
优选的,根据每个行人到摄像头的水平距离以及每个行人的人脸高度计算每张行人图像中每个行人的人脸俯仰角数据的具体过程为:
获取摄像头的垂直高度;
基于摄像头的垂直高度、每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度计算人脸俯仰角数据。
为了进一步对本发明进行说明,本发明还提供了一种人脸图像采集系统,包括图像像素位置获取模块、水平距离及高度确定模块、角度数据计算模块以及储存模块;
图像像素位置获取模块:获取摄像头拍摄的每张行人图像中每个行人所在地面网格的图像像素位置以及每个行人人脸高度的图像像素位置;其中,每张行人图像为通过摄像头拍摄每个行人在通过两侧封闭的过道时的图像,每张行人图像中将摄像头拍摄区域内的过道地面划分为n个大小相同的地面网格,每个地面网格的中心均包含有一个尺寸小于地面网格的十字架;
水平距离及高度确定模块:基于每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表,确定每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度;其中,每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表基于每个地面网格的十字架以及三维标定法建立得到;
角度数据计算模块:根据每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度,计算每张行人图像中每个行人的人脸角度数据;
储存模块:从每张行人图像中提取出每个行人的人脸图像,将每个行人的人脸图像以及每张行人图像所对应的人脸角度数据进行保存。
为了进一步对本发明进行说明,本发明还提供了一种人脸图像采集设备,包括处理器以及存储器;
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行上述的一种人脸图像采集方法。
相比于现有技术,本发明实施例具有如下有益效果:
1、本发明提供了一种人脸图像采集方法、系统和设备,通过利用两侧封闭的人行通道约束行人的行为,从而提高行人在人脸图像采集过程中的配合度,能够有效降低图像采集过程中行人因左顾右盼造成的干扰,降低人脸图像采集失效的情况,有利于后期数据集的制作,并且本发明在采集人脸图像的过程中考虑了行人的人脸角度信息,通过计算出每张行人图像中行人的人脸角度数据,从而使得所采集到的人脸图像的信息更精细化。
2、本发明实施例在采集行人图像的过程中,至少使用两个垂直高度不同的摄像头拍摄行人在通过过道不同区域时的图像,利用不同高度的摄像头拍摄位于不同区域的行人图像,从而覆盖了更大幅度的俯仰角角度,提供具有更丰富俯仰角的人脸图像。
附图说明
图1:为本发明实施例提供的一种人脸图像采集方法的流程图。
图2:为本发明实施例提供的一种人脸图像采集方法的流程图。
图3:为本发明实施例提供的人脸图像拍摄场景示意图。
图4:为本发明实施例提供的使用两个垂直高度不同的摄像头采集行人图像的示意图。
图5:为本发明实施例提供的将摄像头拍摄区域内的过道地面划分为n个大小相同的地面网格的示意图。
图6:为本发明实施例提供的使用图像处理方法提取查询图像中每个地面网格内十字架的边界的示意图。
图7:为本发明实施例提供的计算每张行人图像中每个行人的人脸的偏航角数据的示意图。
图8:为本发明实施例提供的一种人脸图像采集系统的系统结构图。
图9:为本发明实施例提供的一种人脸图像采集设备的设备框架图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
请参照图1,为本发明实施例提供的一种人脸图像采集方法的流程图,所述方法适用于预先通过摄像头拍摄每个行人在通过两侧封闭的过道时的图像,其中,需要进一步说明的是,目前常见的人脸图像采集方案一般是将摄像头放置在人群较多的出入口进行人脸图像的拍摄,但是这种拍摄方式最大的缺点是被拍摄的路人人脸姿势不固定。针对这种情况,本实施例选定一个新的人脸图像拍摄方案,该方案的特点是拍摄的区域在封闭的过道之间,由于过道两边没有太多干扰物,大部分人通过时不会左顾右盼,且会正视前方,从而在一定程度上保证了被采集人员的固定姿势的连续人像序列。
本发明实施例提供的一种人脸图像采集方法包括以下步骤:
s101:获取摄像头拍摄的每张行人图像中每个行人所在地面网格的图像像素位置以及每个行人人脸高度的图像像素位置;其中,每张行人图像为通过摄像头拍摄每个行人在通过两侧封闭的过道时的图像,每张行人图像中将摄像头拍摄区域内的过道地面划分为n个大小相同的地面网格,每个地面网格的中心均包含有一个尺寸小于地面网格的十字架;
需要进一步说明的是,在本发明实施例中,需先由技术人员预先在摄像头的视域范围内的地平面上画上矩形网格,并以摄像头视觉水平方向和垂直方向作为矩形网格的水平方向和垂直方向。然后,根据定位精度的要求,将所述矩形网格划分为n个地面网格,例如,以摄像头的视域范围包含5*10米的矩形范围,定位精度为1米以内,则根据定位精度将每个地面网格的尺寸设置为1*1米。在根据定位精度将矩形网格划分成n个地面网格后,以同一个十字架为例子,将尺寸不大于地面网格尺寸的十字架依次放置到每个地面网格的中心;
s102:基于每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表,确定每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度;其中,每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表基于每个地面网格的十字架以及三维标定法建立得到;
其中,需要进一步说明的是,通过建立每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表,在获知了某一地面网格的图像像素位置后,即可根据水平距离查询表查找到该地面网格到摄像头的水平距离,在获知了某一地面网格的某一垂直高度的图像像素距离后,即可根据垂直高度查询表得到该地面网格该垂直度的实际高度。
因此,在得到了每张行人图像中每个行人所在的地面网格的图像像素位置以及每个行人人脸高度的图像像素位置后,即可根据上述步骤所得到的每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表,通过每个行人所在的地面网格的图像像素位置,即可查询得到该地面网格到摄像头的水平距离,从而得到行人道摄像头的水平距离,通过行人人脸高度的图像像素位置,即可查询得到该垂直高度的实际高度,从而得到每个行人的人脸高度。
s103:根据每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度计算每张行人图像中每个行人的人脸角度数据;通过计算人脸角度数据使得本实施例在采集人脸图像的过程中考虑了行人的人脸角度信息,从而使得所采集到的人脸图像更精细化;
s104:从每张行人图像中提取出每个行人的人脸图像,将每个行人的人脸图像以及每张行人图像所对应的人脸角度数据进行保存,待所有行人的人脸图像保存完毕后,完成所有人脸图像的采集过程。
本发明实施例提供了一种人脸图像采集方法、系统和设备,通过利用两侧封闭的人行通道约束行人的行为,从而提高行人在人脸图像采集过程中的配合度,能够有效降低图像采集过程中行人因左顾右盼造成的干扰,提高所采集到人脸图像的一致性,降低人脸图像采集失效的情况,有利于后期数据集的制作,并且本发明在采集人脸图像的过程中考虑了行人的人脸角度信息,通过计算出每张行人图像中行人的人脸角度数据,从而使得所采集到的人脸图像更精细化。
实施例二
为了进一步对本发明的技术方案进行说明,如图2所示,本实施例提供了一种人脸图像采集方法的流程图,所述方法适用于预先通过摄像头拍摄每个行人在通过两侧封闭的过道时的图像,其中,需要进一步说明的是,目前常见的人脸图像采集方案一般是将摄像头放置在人群较多的出入口进行人脸图像的拍摄,但是这种拍摄方式最大的缺点是被拍摄的路人人脸姿势不固定。如图3所示,针对这种情况,本实施例选定一个新的人脸图像拍摄方案,该方案的特点是拍摄的区域在封闭的过道之间,由于过道两边没有太多干扰物,大部分人通过时不会左顾右盼,且会正视前方,从而在一定程度上保证了被采集人员的固定姿势的连续人像序列。
需要进一步说明的是,本实施例至少使用两个垂直高度不同的摄像头拍摄行人在通过过道不同区域时的图像,利用不同高度的摄像头拍摄位于不同区域的行人图像,从而对人脸识别可识别的过道区域进行划分,使用高位相机采集大角度的人脸,低位相机采集小角度的人脸,从而覆盖了更大幅度的俯仰角角度,提供具有更丰富俯仰角的人脸图像。
如图4所示,为方便叙述,假设在一个长度为10m的过道,不考虑行人身高的前提下,设置高位摄像头的高度为2m,即图4中的o1。需要采集5°~45°俯仰角的行人图像,经计算可以低位摄像头的高度为0.87m,即图4中的02。l点为过道拐弯处,因此低位摄像头能拍摄的最大角度为∠olo2=23.5°,同理可得到高位摄像头能拍摄的最大角度为∠olo1=45°。为保证高位摄像头与低位摄像头采集图像行人图像无重叠,使得o3l∥o1m。因此,低位摄像头的拍摄行人的角度为5°~23.5°,高位摄像头的拍摄行人的角度为23.5°~45°,总覆盖角度可得到5°~45度。
本发明实施例提供的一种人脸图像采集方法包括以下步骤:
s201:将摄像头拍摄区域内的过道地面划分为n个大小相同的地面网格;其中,每个地面网格的中心均包含有一个尺寸小于地面网格的十字架;
如图5所示,在本发明实施例中,需先由技术人员预先在摄像头的视域范围内的地平面上画上矩形网格,并以摄像头视觉水平方向和垂直方向作为矩形网格的水平方向和垂直方向。然后,根据定位精度的要求,将所述矩形网格划分为n个地面网格,例如,以摄像头的视域范围包含5*10米的矩形范围,定位精度为1米以内,则根据定位精度将每个地面网格的尺寸设置为1*1米。在根据定位精度将矩形网格划分成n个地面网格后,以同一个十字架为例子,将尺寸不大于地面网格尺寸的十字架依次放置到每个地面网格的中心;
s202:基于每个地面网格的十字架以及三维标定法,建立每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表;其中,需要进一步说明的是,通过建立每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表,在获知了某一地面网格的图像像素位置后,即可根据水平距离查询表查找到该地面网格到摄像头的水平距离,在获知了某一地面网格的某一垂直高度的图像像素距离后,即可根据垂直高度查询表得到该地面网格该垂直度的实际高度。
需要进一步说明的是,基于每个地面网格的十字架以及三维标定法,建立每个地面网格到摄像头的水平距离查询表的具体过程为:
通过摄像头拍摄过道地面上包含有地面网格的查询图像;
使用图像处理方法提取查询图像中每个地面网格内十字架的边界,在提取到十字架的边界后,即可根据提取到的边界计算每个地面网格内十字架的横支架图像像素长度以及纵支架图像像素长度,如图6所示;
根据每个地面网格内十字架的横支架实际长度和每个地面网格内十字架的横支架图像像素长度分别计算每个地面网格的第一比例值,公式如下所示:
其中,i和j代表第i行第j列的地面网格,x为十字架的横支架图像像素长度,x为十字架的横支架实际长度,
根据每个地面网格内十字架的纵支架实际长度和每个地面网格内十字架的纵支架图像像素长度分别计算每个地面网格的第二比例值,公式如下所示:
其中,i和j代表第i行第j列的地面网格,y为十字架的纵支架图像像素长度,y为十字架的纵支架实际长度,
根据摄像头到每个地面网格图像像素横向距离之间的每个地面网格的图像像素横向长度以及摄像头到每个地面网格图像像素横向距离之间的每个地面网格的第一比例值计算每个地面网格距离摄像头的实际横向长度;即计算出每个地面网格和摄像头之间总的图像像素横向距离之后,根据第一比例值即可换算出每个地面网格距离摄像头的实际横向长度;
根据摄像头到每个地面网格图像像素纵向距离之间的每个地面网格的图像像素纵向长度以及摄像头到每个地面网格图像像素纵向距离之间的每个地面网格的第二比例值计算每个地面网格距离摄像头的实际纵向长度;即计算出每个地面网格和摄像头之间总的图像像素纵向距离之后,根据第一比例值即可换算出每个地面网格距离摄像头的实际纵向长度;
根据所述每个地面网格距离摄像头的实际横向长度和每个地面网格距离摄像头的实际纵向长度计算每个地面网格到摄像头在水平方向上实际距离,具体的计算公式如下所示:
其中,m、n分别为十字架所在的地面网格行与列,从而能够可以得到每个网格到采集点在水平方向的欧式距离;
s203:获取查询图像中每个地面网格的图像像素范围,根据每个地面网格到摄像头在水平方向上实际距离以及每个地面网格的图像像素范围建立每个地面网格到摄像头的水平距离查询表。需要进一步说明的是,在得到每个地面网格的图像像素范围后,即可构建每个地面网格图像像素与每个地面网格到摄像头在水平方向上实际距离之间的映射关系,并根据映射关系建立每个地面网格到摄像头的水平距离查询表。
需要进一步说明的是,建立每个地面网格的垂直高度查询表的具体过程为:
获取每个地面网格内的十字架在垂直方向特定高度范围内所对应的查询图像的图像像素距离,建立每个地面网格的垂直高度与图像像素距离的对应关系,得到每个地面网格的垂直高度查询表。例如,记录每个地面网格内的十字架在垂直方向上1.5m~2m范围内所对应的查询图像的图像像素距离,即从1.5m开始记录,每增加10cm,记录该地面网格内的十字架高度对应的图像像素距离,建立每个地面网格的垂直高度查询表与图像像素距离的映射关系,得到每个地面网格的垂直高度查询表。
获取摄像头拍摄的每张行人图像中每个行人所在地面网格的图像像素位置以及每个行人人脸高度的图像像素位置,基于每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表,确定每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度;
需要进一步说明的是,获取摄像头拍摄的每张行人图像中每个行人人脸高度的图像像素位置,基于每个地面网格的垂直高度查询表确定每个行人的人脸高度的具体过程为:
使用行人检测算法对每张行人图像进行检测,得到每张行人图像中的行人框;
使用人脸检测算法对每张行人图像中的行人框进行检测,得到每张行人图像中的人脸框;
获取每张行人图像中行人框的下边框中点坐标z1以及每张行人图像中人脸框的中点坐标z2;
将每张行人图像中行人框的下边框中点坐标z1以及每张行人图像中人脸框的中点坐标z2进行相减,得到每个行人人脸高度的图像像素距离,之后查询每个地面网格的垂直高度查询表即可确定每个行人的人脸高度。
s204:根据每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度计算每张行人图像中每个行人的人脸角度数据;通过计算人脸角度数据使得本实施例在采集人脸图像的过程中考虑了行人的人脸角度信息,从而使得所采集到的人脸图像更精细化。其中,人脸角度数据包括优选的,人脸角度数据包括人脸俯仰角数据以及人脸偏航角数据。
需要进一步说明的是,计算每张行人图像中每个行人的人脸俯仰角数据的具体过程为:
获取摄像头的垂直高度;
基于摄像头的垂直高度、每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度计算人脸俯仰角数据,具体计算公式如下:
其中,θ1为人脸俯仰角,h为摄像头的垂直高度,h为行人的人脸高度,d为每个行人到摄像头的水平距离。
如图7所示,计算每张行人图像中每个行人的人脸的偏航角数据的具体过程如下:
其中,α为每张行人图像中每个行人与摄像头正方向的垂直距离,d与俯仰角一致,为每个行人到摄像头的水平距离。
s205:从每张行人图像中提取出每个行人的人脸图像,将每个行人的人脸图像以及每张行人图像所对应的人脸角度数据进行保存至本地,待所有行人的人脸图像保存完毕后,完成所有人脸图像的采集过程。
本发明实施例提供了一种人脸图像采集方法、系统和设备,通过利用两侧封闭的人行通道约束行人的行为,从而提高行人在人脸图像采集过程中的配合度,能够有效降低图像采集过程中行人因左顾右盼造成的干扰,提高所采集到人脸图像的一致性,降低人脸图像采集失效的情况,有利于后期数据集的制作,并且本发明在采集人脸图像的过程中考虑了行人的人脸角度信息,通过计算出每张行人图像中行人的人脸角度数据,从而使得所采集到的人脸图像更精细化。
本发明实施例在采集行人图像的过程中,至少使用两个垂直高度不同的摄像头拍摄行人在通过过道不同区域时的图像,利用不同高度的摄像头拍摄位于不同区域的行人图像,从而覆盖了更大幅度的俯仰角角度,提供具有更丰富俯仰角的人脸图像。
实施例三
为了进一步对本发明进行说明,本发明实施例还提供了一种人脸图像采集系统,如图8所示,包括图像像素位置获取模块301、水平距离及高度确定模块302、角度数据计算模块303以及储存模块304;
图像像素位置获取模块301:获取摄像头拍摄的每张行人图像中每个行人所在地面网格的图像像素位置以及每个行人人脸高度的图像像素位置;其中,每张行人图像为通过摄像头拍摄每个行人在通过两侧封闭的过道时的图像,每张行人图像中将摄像头拍摄区域内的过道地面划分为n个大小相同的地面网格,每个地面网格的中心均包含有一个尺寸小于地面网格的十字架;
水平距离及高度确定模块301:基于每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表,确定每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度;其中,每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表基于每个地面网格的十字架以及三维标定法建立得到;
角度数据计算模块303:根据每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度,计算每张行人图像中每个行人的人脸角度数据;
储存模块304:从每张行人图像中提取出每个行人的人脸图像,将每个行人的人脸图像以及每张行人图像所对应的人脸角度数据进行保存。
为了进一步对本发明进行描述,本实施例还提供了一种人脸图像采集设备,如图9所示,一种人脸图像采集设备40,所述设备包括处理器400以及存储器401;
所述存储器401用于存储程序代码402,并将所述程序代码402传输给所述处理器;
所述处理器400用于根据所述程序代码402中的指令执行上述的一种人脸图像采集方法实施例中的步骤。
示例性的,所述计算机程序402可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器401中,并由所述处理器400执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序402在所述终端设备40中的执行过程。
所述终端设备40可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器400、存储器401。本领域技术人员可以理解,图7仅仅是终端设备40的示例,并不构成对终端设备40的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器400可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器401可以是所述终端设备40的内部存储单元,例如终端设备40的硬盘或内存。所述存储器401也可以是所述终端设备40的外部存储设备,例如所述终端设备40上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述存储器401还可以既包括所述终端设备40的内部存储单元也包括外部存储设备。所述存储器401用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器401还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步的详细说明,应当理解,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围。特别指出,对于本领域技术人员来说,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
1.一种人脸图像采集方法,其特征在于,包括以下步骤:
获取摄像头拍摄的每张行人图像中每个行人所在地面网格的图像像素位置以及每个行人人脸高度的图像像素位置;其中,每张行人图像为通过摄像头拍摄每个行人在通过两侧封闭的过道时的图像,每张行人图像中将摄像头拍摄区域内的过道地面划分为n个大小相同的地面网格,每个地面网格的中心均包含有一个尺寸小于地面网格的十字架;
基于每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表,确定每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度;其中,每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表基于每个地面网格的十字架以及三维标定法建立得到;
根据每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度,计算每张行人图像中每个行人的人脸角度数据;
从每张行人图像中提取出每个行人的人脸图像,将每个行人的人脸图像以及每张行人图像所对应的人脸角度数据进行保存。
2.根据权利要求1所述的一种人脸图像采集方法,其特征在于,至少使用两个垂直高度不同的摄像头拍摄行人在通过过道不同区域时的图像。
3.根据权利要求1所述的一种人脸图像采集方法,其特征在于,每个地面网格到摄像头的水平距离查询表基于每个地面网格的十字架以及三维标定法建立得到的具体过程为:
通过摄像头拍摄过道地面上包含有地面网格的查询图像;
提取查询图像中每个地面网格内十字架的边界,根据提取到的边界计算每个地面网格内十字架的横支架图像像素长度以及纵支架图像像素长度;
根据每个地面网格内十字架的横支架实际长度和每个地面网格内十字架的横支架图像像素长度分别计算每个地面网格的第一比例值;
根据每个地面网格内十字架的纵支架实际长度和每个地面网格内十字架的纵支架图像像素长度分别计算每个地面网格的第二比例值;
基于每个地面网格的第一比例值和第二比例值,计算每个地面网格距离摄像头的实际横向长度和每个地面网格距离摄像头的实际纵坐标;
根据所述每个地面网格的实际横向长度和每个地面网格的实际纵向长度计算每个地面网格到摄像头在水平方向上实际距离;
获取查询图像中每个地面网格的图像像素范围,根据每个地面网格到摄像头在水平方向上实际距离以及每个地面网格的图像像素范围建立每个地面网格到摄像头的水平距离查询表。
4.根据权利要求3所述的一种人脸图像采集方法,其特征在于,基于每个地面网格的第一比例值和第二比例值,计算每个地面网格距离摄像头的实际横向长度和每个地面网格距离摄像头的实际纵坐标的具体过程为:
根据摄像头到每个地面网格图像像素横向距离之间的每个地面网格的图像像素横向长度以及摄像头到每个地面网格图像像素横向距离之间的每个地面网格的第一比例值计算每个地面网格距离摄像头的实际横向长度;
根据摄像头到每个地面网格图像像素纵向距离之间的每个地面网格的图像像素纵向长度以及摄像头到每个地面网格图像像素纵向距离之间的每个地面网格的第二比例值计算每个地面网格距离摄像头的实际纵向长度。
5.根据权利要求4所述的一种人脸图像采集方法,其特征在于,每个地面网格的垂直高度查询表基于每个地面网格的十字架以及三维标定法建立得到的具体过程为:
获取每个地面网格内的十字架在垂直方向特定高度范围内所对应的查询图像的图像像素距离,建立每个地面网格的垂直高度与图像像素距离对应关系,得到每个地面网格的垂直高度查询表。
6.根据权利要求1所述的一种人脸图像采集方法,其特征在于,获取摄像头拍摄的每张行人图像中每个行人人脸高度的图像像素位置,基于每个地面网格的垂直高度查询表确定每个行人的人脸高度的具体过程为:
使用行人检测算法对每张行人图像进行检测,得到每张行人图像中的行人框;
使用人脸检测算法对每张行人图像中的行人框进行检测,得到每张行人图像中的人脸框;
获取每张行人图像中行人框的下边框中点坐标以及每张行人图像中人脸框的中点坐标;
基于每张行人图像中行人框的下边框中点坐标以及每张行人图像中人脸框的中点坐标得到每个行人人脸高度的图像像素距离,基于每个地面网格的垂直高度查询表确定每个行人的人脸高度。
7.根据权利要求1至权利要求6任一项所述的一种人脸图像采集方法,其特征在于,所述人脸角度数据包括人脸俯仰角数据以及人脸偏航角数据。
8.根据权利要求6所述的一种人脸图像采集方法,其特征在于,根据每个行人到摄像头的水平距离以及每个行人的人脸高度计算每张行人图像中每个行人的人脸俯仰角数据的具体过程为:
获取摄像头的垂直高度;
基于摄像头的垂直高度、每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度计算人脸俯仰角数据。
9.一种人脸图像采集系统,其特征在于,包括图像像素位置获取模块、水平距离及高度确定模块、角度数据计算模块、角度数据计算模块以及储存模块;
图像像素位置获取模块:获取摄像头拍摄的每张行人图像中每个行人所在地面网格的图像像素位置以及每个行人人脸高度的图像像素位置;其中,每张行人图像为通过摄像头拍摄每个行人在通过两侧封闭的过道时的图像,每张行人图像中将摄像头拍摄区域内的过道地面划分为n个大小相同的地面网格,每个地面网格的中心均包含有一个尺寸小于地面网格的十字架;
水平距离及高度确定模块:基于每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表,确定每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度;其中,每个地面网格到摄像头的水平距离查询表以及每个地面网格的垂直高度查询表基于每个地面网格的十字架以及三维标定法建立得到;
角度数据计算模块:根据每张行人图像中每个行人到摄像头的水平距离以及每个行人的人脸高度,计算每张行人图像中每个行人的人脸角度数据;
储存模块:从每张行人图像中提取出每个行人的人脸图像,将每个行人的人脸图像以及每张行人图像所对应的人脸角度数据进行保存。
10.一种人脸图像采集设备,其特征在于,包括处理器以及存储器;
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行权利要求1至权利要求8中任一项所述的一种人脸图像采集方法。
技术总结