免费招聘网站推荐,中国那个公司的网站做的最好看,二维码链接生成器在线,网站头部图片如何做文章目录 FisherFaces算法一、算法原理二、算法优势与局限三、算法实现1. 图像预处理2. 创建FisherFace人脸特征识别器3. 训练模型4. 测试图像 总结 FisherFaces算法
PCA方法是EigenFaces人脸识别的核心#xff0c;但是其具有明显的缺点#xff0c;在操作过程中会损失许多人… 文章目录 FisherFaces算法一、算法原理二、算法优势与局限三、算法实现1. 图像预处理2. 创建FisherFace人脸特征识别器3. 训练模型4. 测试图像 总结 FisherFaces算法
PCA方法是EigenFaces人脸识别的核心但是其具有明显的缺点在操作过程中会损失许多人脸的特征信息。因此在某些特殊的情况下如果损失的信息刚好是用于分类的关键信息必然导致结果预测错误。于是我们推出来新的方法
FisherFaces算法也称为线性判别分析LDA在人脸识别领域的应用是一种经典且有效的人脸识别方法。
一、算法原理
FisherFaces算法基于LDA技术其核心思想是将高维的人脸图像数据投影到低维的最佳矢量空间。
基本原理在低维表示下首先将训练集样本集投影到一条直线A上让投影后的点满足同类间的点尽可能地靠近、异类间的点尽可能地远离以达到抽取重要分类信息和压缩特征空间维度的效果。投影后的模式样本在新的子空间中具有最大的类间距离和最小的类内距离即模式在该空间中有最佳的可分离性。 具体来说算法首先提取人脸图像的特征这些特征可以包括人脸的形状、眼睛、嘴巴、鼻子等部位的几何特征以及纹理、颜色等特征。然后利用这些特征构建类内散度矩阵和类间散度矩阵。类内散度矩阵反映的是同一类人脸特征的相似性而类间散度矩阵反映的是不同类人脸特征的差异性。通过求解这两个矩阵的广义特征问题可以得到投影系数这些投影系数可以将原始的人脸特征投影到低维空间中。 实际应用中FisherFaces算法已经广泛应用于人脸认证、人脸追踪、人脸合成等领域。
二、算法优势与局限
优势 能够有效降低计算复杂度提高识别速度。保持较高的识别准确率。对光照和表情变化具有一定的鲁棒性。 局限 在处理大规模数据集时可能需要较长的训练时间和较高的计算资源。对于极端姿态或遮挡情况下的人脸识别效果可能不佳。
三、算法实现
1. 图像预处理
准备好训练图像以及对应的标签还有待识别图像
注意在使用FisherFaces算法进行人脸识别时传入图像的大小即尺寸需要保持一致。
因为FisherFaces算法基于线性判别分析LDA技术它需要将人脸图像投影到低维空间以提取重要分类信息。在这个过程中如果图像的大小不一致那么转换后的矩阵或向量的维度也会不同这将导致算法无法正确处理这些数据。此外算法在计算类内散度矩阵和类间散度矩阵时也需要所有输入图像的维度保持一致。
import cv2
import numpy as np
def image_re(image):a cv2.imread(image,0)a cv2.resize(a,(75,100))return aimages []
a image_re(f1.jpg)
b image_re(f2.jpg)
c image_re(z1.jpg)
d image_re(z2.jpg)images.append(a)
images.append(b)
images.append(c)
images.append(d)labels [0,0,1,1]
pre_image image_re(f_test.jpg)2. 创建FisherFace人脸特征识别器
recognizer cv2.face.FisherFaceRecognizer_create()3. 训练模型
recognizer.train(images,np.array(labels))4. 测试图像
置信度需要低于五千才有说服力越小越准确。
label,confidence recognizer.predict(pre_image)
dic {0:yifei,1:zrn}
print(这人是,dic[label])
print(置信度,confidence)
aa cv2.putText(cv2.imread(f_test.jpg).copy(),dic[label],(10,30),cv2.FONT_HERSHEY_SIMPLEX,0.9,(0,0,255),2)
cv2.imshow(xx,aa)
cv2.waitKey(0)
-------------------
这人是 yifei
置信度 1806.3739273411293总结
本篇介绍了如何通过FisherFaces算法来实现人脸识别其中需要注意的是
在使用EigenFaces算法进行人脸识别时传入图像的大小即尺寸需要保持一致。训练以及测试图像最好使用大头照减少身体的部分。置信度需要低于五千才有说服力越小越准确。