1.一种轻量级快速人脸识别方法,其特征在于,基于预处理组件和索引组件,由预处理组件提取人脸图像的特征值和特征向量;之后预处理组件将具有相似特征值和特征向量的图像分组到一个聚类中;在索引组件中,基于聚类结果并以自下而上的方式构建二叉树索引,当用户启动识别任务时,将过滤掉无效的集群并将所需的面部图像返回给用户;具体包括以下步骤:
(1)提取特征,将面部图像视为一个m*n矩阵a,通过2dpca(二维主分量分析)算法进行特征提取;
(2)对于具有n个图像的人脸数据集f={f1,f2,……fn},每个面部图像fi(i∈[1,n])是由m个特征向量构成(e1,e2,……,em);然后,利用聚类算法将人脸数据集划分为k个集群;形成集群的方法是:以2的幂取k值,以构建一个平衡的二叉树,再最小化集群中每个点到集群中点距离的平方和,以增强聚类结果;
(3)在上一个组件形成的集群上构建二叉树索引,索引的叶节点是k个簇;每个二叉树索引的中间节点c具有两个且仅有两个子节点,c表示两个子节点集群的中心节点;
(4)进行人脸识别:从二叉树索引的根节点开始向下索引;对于想要识别的人脸图像x,分别计算当前节点的两个子节点与x之间的距离,如果距离差大于阈值δ,将判断范围限定在更接近的子节点中;否则,说明面部图像位于两个簇的边界;当面部图像在边界或面部图像在叶节点中时,将停止判断;并返回当前节点表示的所有集群;最后在返回的集群中,计算人脸图像x与集群中每个人脸的距离差,最小的距离差的人脸就是识别的人脸。
2.根据权利要求1所述一种轻量级快速人脸识别方法,其特征在于,在二叉树索引中,给定叶簇c=c1,c2,……,ck,对于任何面部图像f,f都可以被分到一个且仅有一个簇中;对于任何节点x、y,x是y的父节点,则y表示的范围都包含在x的范围内。
3.根据权利要求1所述一种轻量级快速人脸识别方法,其特征在于,所述索引组件采用两级存储架构:整个索引存储在内存中,人脸数据集以文件的形式保存在磁盘中;对于每个人脸图像,都有一个相应的文本文件,记录特征值信息;每个图像及其相应的文本文件存储在同一文件夹中,该文件夹有唯一的标识;同时,被分到在同一集群中的图像存储在同一父类文件夹中,父类文件夹的名称定义为集群的中心节点c。