基于主成分分析的人脸识别:
主成分分析(Principal Component Analysis,简称PCA)是最常用的一种降维方法。
我们首先从人脸数据库中读取图片,并把图片转换为数据存在矩阵中,然后把每一张图片的矩阵拉成列向量,把所有列向量装在一个矩阵里面。
然后用PCA对这个矩阵进行降维,即让矩阵中的每一个数据都减去数据的均值,然后对新形成的矩阵求它的协方差矩阵,再对这个协方差矩阵进行特征值分解得到特征值和特征向量,让特征向量按照特征值的大小进行从大到小的顺序排列,然后取前k个特征向量组成一个矩阵,让这个矩阵的转置左乘原来的协方差矩阵,得到的新矩阵就是降维后的数据。
然后分别读取一定数量的列向量(即图片)作为训练集图片,读取一定数量的作为测试集图片。之后用测试集里面的一张图片和训练集里面每一张图片的数据做差取绝对值,然后把得到的这些绝对值按从小到大的顺序进行排列。
之后用k近邻学习(k-Nearest Neighbor,简称kNN),选择排列在前k个最小距离所对应的图片序号,选择出现次数最多的图片序号,如果没有重复出现的,那么选择距离最小的,即排列第一的。
2022-04-07 09:09:39
780KB
机器学习