(1)测试人脸归一化。
读入待识别人脸图像,按照人脸采集步骤选取人脸双眼,然后对测试人脸进行几何归一化和灰度归一化,形成与训练样本相同尺寸的人脸图像区域。
这个地方仍然可以使用方法一或者方法二
(2)向特征脸空间进行投影。
将测试人脸展开为1×N矩阵testFaceMat,N为一个图像所有像素按列相连的像素值。计算规格化后的识别样本矩阵normTestFaceMat:
normTestFaceMat = normTestFaceMat –meanFaceMat
1
将normTestFaceMat向特征脸空间投影:
eigen_test_sample = normTestFaceMat * eigenface
1
得到eigen_test_sample为待识别人脸的投影样本矩阵,大小为1×m。
(3)计算eigen_test_sample与eigen_train_sample中各样本的距离
计算eigen_test_sample与eigen_train_sample中各样本(每行)的欧式距离,距离最小的那个样本则可以认为与待识别样本为同一人。
在numpy中同样也提供了计算欧式距离的方法,大家可以百度一下,学习如何使用numpy计算出欧氏距离,当然大家可以不用numpy实现的方法,可以自己写一段计算欧氏距离的代码。
原文链接:https://blog.csdn.net/qq_46213352/article/details/118744697