1.一种视频人脸识别方法,其特征在于,所述方法包括:
获取待跟踪视频的图像帧,对待跟踪视频中的图像帧一帧一帧地进行读取;其中所述图像帧包括初始图像帧和普通图像帧;
对当前图像帧进行人脸检测;
若当前图像帧包含有人脸特征,则获得当前图像帧的人脸特征,并执行下一步骤,否则,获取待跟踪视频的下一个图像帧,并返回上一步;
将当前图像帧的人脸特征与人脸数据库中的人脸特征进行对比识别;
若人脸数据库中不存在与当前图像帧的人脸特征相同的人脸特征,则将当前图像帧的人脸特征输入人脸数据库保存;
重复上述步骤直至完成待跟踪视频的所有图像帧的人脸跟踪;
所述若人脸数据库中不存在与当前图像帧的人脸特征相同的人脸特征,则将当前图像帧的人脸特征输入人脸数据库保存的步骤,包括:判断当前图像帧的类型;
若为初始图像帧,则将当前图像帧的人脸特征输入人脸数据库保存;
若为普通图像帧,则遍历当前图像帧的人脸特征,并计算出所述当前图像帧的人脸特征与比较图像帧的人脸特征的第一余弦距离最大值,以及在所述第一余弦距离最大值时的当前图像帧的人脸特征的宽高比;其中,所述比较图像帧的人脸特征是指通过变量暂存的方式暂存的当前图像帧的前一帧图像的各个人脸特征;
当第一余弦距离最大值满足预设条件时,将当前图像帧的人脸特征识别为待加入人脸数据库的人脸特征;
所述若当前图像帧包含有人脸特征,则获得当前图像帧的人脸特征,并执行下一步骤,否则,获取待跟踪视频的下一个图像帧,并返回上一步的步骤之后,还包括:根据人脸特征中的两眼关键点的直线和水平线的角度获得正余弦值;
根据所述正余弦值对包含此检测人脸的图像帧作仿射变换,将人脸摆正到竖直方向;
根据所述仿射变换的仿射矩阵对检测人脸的检测框作矩阵变换,得到对齐人脸的新检测框;
以所述新检测框宽高的最大值和所述新检测框的中心点,计算出最大对齐人脸的正方形范围,并输出此正方形正脸。
2.根据权利要求1所述的方法,其特征在于,所述当第一余弦距离最大值满足预设条件时,将当前图像帧的人脸特征识别为待加入人脸数据库的人脸特征的步骤,包括:若第一余弦距离最大值小于0.4,则遍历人脸数据库每个ID最后加入的人脸特征,并计算出与当前图像帧人脸特征的第二余弦距离最大值;
当第二余弦距离最大值且当前图像帧的人脸特征的宽高比满足预设条件时,将当前图像帧的人脸特征加入新ID或将当前图像帧的人脸特征放入与人脸数据库余弦距离最大的ID;若第一余弦距离最大值大于0.5,则遍历人脸数据库中每个ID各自所有人脸的特征,并与当前图像帧人脸特征求得第三余弦距离最大值,以及统计所述第三余弦距离最大值大于0.8的个数;
当第三余弦距离最大值大于0.8的个数且当前图像帧的人脸特征的宽高比满足预设条件时,将当前图像帧的人脸特征放入人脸数据库中对应的ID。
3.根据权利要求2所述的方法,其特征在于,所述当第二余弦距离最大值且当前图像帧的人脸特征的宽高比满足预设条件时,将当前图像帧的人脸特征加入新ID或将当前图像帧的人脸特征放入与人脸数据库余弦距离最大的ID的步骤,包括:若第二余弦距离最大值大于0.8且当前图像帧人脸的宽高比大于0.5,则将当前图像帧的人脸特征放入与人脸数据库余弦距离最大的ID;
若第二余弦距离最大值小于0.4且当前图像帧人脸的宽高比大于0.5,则将当前图像帧的人脸特征加入新ID,并保存在人脸数据库中。
4.根据权利要求3所述的方法,其特征在于,所述若第二余弦距离最大值小于0.4且当前图像帧人脸的宽高比大于0.5,则为当前图像帧人脸加入新ID,并保存在人脸数据库中的步骤之后,还包括:将人脸数据库中的ID依次序反向排序;
遍历ID,并计算出任何两个ID之间所有人脸的特性的余弦相似度,并统计所述余弦相似度大于0.8的人脸数量;
若所述余弦相似度大于0.8的人脸个数大于1,则判定该两个ID为同一个人的不同场景人脸,并将这两个ID合并为一个ID;
将合并之后的ID反向排序回到正常顺序。
5.根据权利要求2所述的方法,其特征在于,所述当第三余弦距离最大值大于0.8的个数且当前图像帧的人脸特征的宽高比满足预设条件时,将当前图像帧的人脸特征放入人脸数据库中对应的ID的步骤,包括:若第三余弦距离最大值大于0.8的个数大于对应ID的人脸个数的十分之一,且当前图像帧人脸的宽高比大于0.5,则将当前图像帧的人脸特征放入人脸数据库中对应的ID。
6.根据权利要求1所述的方法,其特征在于,所述若人脸数据库中不存在与当前图像帧的人脸特征相同的人脸特征,则将当前图像帧的人脸特征输入人脸数据库保存的步骤之后,还包括:遍历当前图像帧的所有人脸特征和人脸数据库中的所有ID,计算出它们之间的余弦相似度,并统计余弦相似度大于0.4的个数;
当余弦相似度大于0.4的个数大于相比较的ID对应的人脸个数的1/10,则输出当前图像帧的所有人脸的ID类别和对应的人脸检测框的坐标。
7.一种视频人脸识别系统,其特征在于,所述系统包括:
视频模块,用于获取待跟踪视频的图像帧作为当前图像帧;
人脸检测模块,用于对当前图像帧进行人脸检测,并提取当前图像帧中的人脸特征;
判断模块,用于判断当前图像帧是否包含有人脸特征,若包含有人脸特征,则获得当前图像帧的人脸特征,否则,获取待跟踪视频的下一个图像帧;
对比模块,用于将当前图像帧的人脸特征与人脸数据库中的人脸特征进行对比识别,保存模块,用于根据将当前图像帧的人脸特征与人脸数据库中的人脸特征进行对比识别的结果,将当前图像帧的人脸特征输入人脸数据库保存;
所述系统还用于判断当前图像帧的类型;若为初始图像帧,则将当前图像帧的人脸特征输入人脸数据库保存;若为普通图像帧,则遍历当前图像帧的人脸特征,并计算出所述当前图像帧的人脸特征与比较图像帧的人脸特征的第一余弦距离最大值,以及在所述第一余弦距离最大值时的当前图像帧的人脸特征的宽高比;其中,所述比较图像帧的人脸特征是指通过变量暂存的方式暂存的当前图像帧的前一帧图像的各个人脸特征;当第一余弦距离最大值满足预设条件时,将当前图像帧的人脸特征识别为待加入人脸数据库的人脸特征;
以及,所述系统用于根据人脸特征中的两眼关键点的直线和水平线的角度获得正余弦值;根据所述正余弦值对包含此检测人脸的图像帧作仿射变换,将人脸摆正到竖直方向;根据所述仿射变换的仿射矩阵对检测人脸的检测框作矩阵变换,得到对齐人脸的新检测框;以所述新检测框宽高的最大值和所述新检测框的中心点,计算出最大对齐人脸的正方形范围,并输出此正方形正脸。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述方法的步骤。