在进行图像的特征提取的过程中,提取的特征维数太多经常会导致特征匹配时过于复杂,消耗系统资源,不得不采用特征降维的方法。所谓特征降维,即采用一个低纬度的特征来表示高纬度。特征降维一般有两类方法:特征选择和特征抽取。特征选择即从高纬度的特征中选择其中的一个子集来作为新的特征;而特征抽取是指将高纬度的特征经过某个函数映射至低纬度作为新的特征。常用的特征抽取方法就是PCA。下面着重介绍PCA。
PCA原理
Matlab PCA实现
函数介绍
Matlab中已经包含了实现了的PCA算法,可以通过princomp函数调用。其形式为:
[COEFF,SCORE, latent]=princomp(X);
其中,参数的含义如下:
函数应用
上图为parto生成的图,当贡献率累加至95%(当要求不是特别严格时,85%以上也可以),以后的维数会不再显示,在没有达到95%的情况下,最多也只显示10维。
所以上述应用最后可以降至2维,即可以只选取SCORE的前两列来表示原始数据。