PCA在图像压缩和图像识别的区别

PCA(principle component analysis)主要用于数据降维,消除数据间的相关性,通过协方差求得特征空间,将数据集映射到特征空间,可实现图像压缩和提取特征的目的。

1、图像压缩

一幅图像可通过像素堆叠的方式来用高维数组来表示,如m*n大小的图像可用mn大小的数组表示。mn*1 x 1*mn相乘得到的协方差矩阵为mn * mn ,远远大于原图像大小,因此不能实现压缩目的。为此,将图像分为8*8 的小块,共k块。得到的数据为k*64,64*k X k*64得到64*64大小的协方差矩阵,协方差矩阵求特征值和对应特征向量,如50%压缩,则取特征值最大的前50%,得到特征空间,原数据k*64  X 64*33(特征向量矩阵,后几列向量补零)则得到压缩后的k*33图像。只需保存64*64的矩阵即可实现重建。

重建步骤,先将压缩后图像k*33通过补零扩展到k*64,然后[k*64] X 特征向量构成的矩阵。

2、图像识别

人脸识别:

20副人脸图像构建样本集,得到MN*20的矩阵。20*MN X MN*20,得到20* 20 的协方差矩阵,求特征空间,特征向量为p个,特征矩阵20*p,该p维空间即可大部分消除20个样本件的相关性,完全表示样本集。将样本集映射到p维空间,MN*20 X 20*p,得到MN*p的特征样本空间——p个特征脸,每一列是一个特征脸。

重构:MN*p X p*MN X MN*1(fig_test):先将测试图像映射到特征样本空间,得到特征系数,然后系数乘以向量线性求和得到重构图像。

识别:fig_test映射到特征样本空间得到特征系数,训练集同样映射到特征样本空间,分布比较测试特征系数和训练特征系数的余弦距离,距离近的即为识别结果。


区别:压缩目的是提取主成分,在特征空间里表示一张图像,消除像素间的相关性,实现减小存储的目的。人脸识别是多个人脸消除人脸间的相关性,在特征空间得到特征脸,用以在特征空间表示样本集里的人脸图像。

你可能感兴趣的:(image,processing)