模式识别作业三——kl变换
实验2_KL变换实验

实验二:KL 变换实验学时:4学时实验目的:1. 掌握特征提取的基本方法。
2. 掌握基于KL 变换的特征提取的方法。
3. 培养学生灵活使用KL 变换进行模式识别的能力。
实验内容:给出ORL 人脸数据库,共有400幅人脸图像(40人,每人10幅,大小为92*112象素)。
其中第一个人的图像如下图:选取数据库中的部分样本(每个人的前5张图片)作为训练样本,其余作为未知的测试样本。
从训练样本中得到KL 变换矩阵,然后对训练样本和测试样本都进行变换,用变换后的数据作最近邻识别,距离可以为对应灰度值之差的平方和,统计识别率。
KL 变换方法简介:设图像数据库图像大小为Width ⨯Height ,令d = Width ⨯Height ,则每幅图像可以用按行或者按列堆成一个d 维向量表示。
令111()()N T T t i i t t i S x m x m N N==--=ΦΦ∑,其中1(,,)t N x m x m Φ=-- 。
特征脸方法(KL 变换方法)是从PCA 方法导出的。
PCA 方法就是要寻找正交归一的变换矩阵12(,,,)d L L W u u u R ⨯=∈ ,1T WW =,使得判别准则()()T t J W tr W S W =达到最大,即arg max ()T t WW tr W S W =。
也就是在T y W x =的正交变换后使得总体散度矩阵y T t t S W S W =的迹最大,即各个样本分离得尽量远,将样本的方差尽量的保留下来,和原样本的均方误差尽量小。
可以证明求得12(,,,)L W u u u = 就是对应于矩阵t S 的前L 个最大的特征值的特征向量。
即12(,,,)L W u u u = 的各列向量是下面特征方程的解:t i i i S u u λ=显然,变换后的y T t t S W S W =是一个对角阵,对角线上的元素为相应的特征值,即1()dt i i tr S λ==∑,也就是说每个特征值都代表了相应的特征向量保留总体散度(方差)的能力。
KL变换和主成分分析

根据经济学知识,斯通给这三个新 变量分别命名为总收入F1、总收入变化 率F2和经济发展或衰退的趋势F3。更有 意思的是,这三个变量其实都是可以直 接测量的。
主成分分析就是试图在力保数据信息丢 失最少的原则下,对这种多变量的数据表进 行最佳综合简化,也就是说,对高维变量空 间进行降维处理。
jd 1
λ j :拉格朗日乘数
g(uj )
uTj Ru j
j
(u
T j
u
j
1)
jd 1
jd 1
用函数 g(u j ) 对 u j 求导,并令导数为零,得
(R j I )u j 0 j d 1, ,
——正是矩阵 R 与其特征值和对应特征向量的关系式。
• 如果这些数据形成一个椭圆形状的 点阵(这在变量的二维正态的假定下 是可能的).
3.2 PCA: 进一步解释
• 椭圆有一个长轴和一 个短轴。在短轴方向上, 数据变化很少;在极端的 情况,短轴如果退化成一 点,那只有在长轴的方向 才能够解释这些点的变化 了;这样,由二维到一维 的降维就自然完成了。
分为: 连续K-L变换 离散K-L变换
1.K-L展开式 设{X}是 n 维随机模式向量 X 的集合,对每一个 X 可以
用确定的完备归一化正交向量系{u j } 中的正交向量展开:
X a juj j 1
d
用有限项估计X时 :Xˆ a juj j 1
aj:随机系数;
引起的均方误差: E[( X Xˆ )T ( X Xˆ )]
总样本数目为 N。将 X 变换为 d 维 (d n) 向量的方法:
模式识别 基于K-L变换的特征提取

1 ⎡⎛ −5 ⎞ ⎛ −5 ⎞ m = ⎢⎜ ⎟ + ⎜ ⎟ + 10 ⎣⎝ −5 ⎠ ⎝ −4 ⎠
⎛ 4 ⎞⎤ ⎛ 0 ⎞ + ⎜ ⎟⎥ = ⎜ ⎟ ⎝ 5 ⎠⎦ ⎝ 0 ⎠
无需作坐标系平移。 2、求自相关矩阵
1 ⎡⎛ −5 ⎞ R = ⎢ ⎜ ⎟ ( −5 − 5 ) + 10 ⎣⎝ −5 ⎠
二、离散K-L展开式
x 假设 x 为 n 维的随机向量, 可以用 n 个正交基向量的加权和来
表示:
x = ∑ α iϕi
i =1
n
α ϕ 式中,i 为加权系数;i 为正交基向量,满足
⎧1 当 i = j ϕ ϕj = ⎨ ⎩0 当 i ≠ j
T i
将 x 用矩阵形式表示为
x = (ϕ1 ,ϕ 2 ,
3、求出 R的本征值λ1 , λ2 , , λn及其对应的本征向 量 ; λ1 ≥ λ2 ≥ ≥ λm ≥ ≥ λn 4、将本征值按从大到小排序,如
ϕ1 ,ϕ2 , ,ϕ n
,
取前 m 个大的本征值所对应的本征向量构成变换矩阵
A = (ϕ1 ,ϕ 2 ,
,ϕm )
;
5、将 n 维的原向量变换成 m 维的新向量
所以
b j = E{α j }
如果在K-L变换前,将模式总体的均值向量作为新坐标系的 原点,即在新坐标系中 E[ x] = 0 则有
b j = E[α j ] = E[ϕ T x] = ϕ T E[ x] = 0 j j
此时均方误差变为
ε =
2
j = m +1
∑
n
n
E[α ] =
利用K-L变换法进行人脸识别

(2)原理详解(包括详细步骤)
利用K-L变换法进行人脸识别
K-L变换的重要应用——人脸识别
分类器设计: – 搜集要识别的人的人脸图像,建立人脸图像库; – 利用K-L变换确定人脸基图像; – 用这些基图像对人脸图像库中的有人脸图像进行K-L变换, 从而得到每幅图像的参数向量,并将每幅图的参数向量存 起来,形成人脸分类器。 识别: – 对所输入的待识别人脸图像进行必要的规范化; – 进行K-L变换分析,得到其参数向量; – 将这个参数向量与库中每幅图的参数向量进行比较,找到 最相似的参数向量,也就等于找到最相似的人脸,从而认 为所输入的人脸图像就是库内该人的一张人脸,完成了识 别过程。
特征值按照从大到小进行排序λ1≥λ2≥…≥λn 。
(4)取出前 d 个最大特征值及其对应的正交化、归一化特征 向量a1, a2, …, ad 。分别将这 d 个特征向量化为 p 行 q 列矩阵, 得到 d 幅图像,称为“特征脸”。由“特征脸” a1, a2, …, ad 张成一个降维的特征子空间。
对应前30个最大特 征值的特征向量的
d
O
0.5d
1.5d
d
d
利用K-L变换法进行人脸识别
由于人脸结构的相似性,当把很多人脸图像规一化后, 这些图像在这一超高维空间中不是随机或散乱分布的,而是 存在某种规律。因此,可以通过K-L变换用一个低维子空间
描述人脸图像,同时又能保存所需要的识别信息。
利用K-L变换法进行人脸识别
第二步:利用K-L变换进行人脸识别 – 设训练样本集为 X {x1, x2 ,, xN } ,包含N 个人脸图像。 N为训练样本的总数,xi 为第i个训练样本图像向量。
图像——“特征脸”
利用K-L变换法进行人脸识别
现代数字信号处理及其应用论文——KL变换的应用

Karhunen-Loeve 变换的应用摘要:本文对Karhunen-Loeve 变换的原理进行了说明,重点分析了K-L 变换的性质,结合K-L 变换的性质,对K-L 变换的具体应用进行了展示。
利用K-L 变换在人脸识别、遥感图像特征提取、地震波噪声抑制、数字图像压缩、语音信号增强中的具体利用,深入总结了K-L 变换在模式识别、噪声抑制和数据压缩领域的重要性。
关键字: Karhunen-Loeve 变换 K-L 变换 K-L 展开1、 Karhunen-Loeve 变换定义1.1Karhunen-Loeve 变换的提出在模式识别和图像处理等现实问题中,需要解决的一个主要的问题就是降维,通常我们选择的特征彼此相关,而在识别这些特征时,数据量大且效率低下。
如果我们能减少特征的数量,即减少特征空间的维数,那么我们将以更少的存储和计算复杂度获得更好的准确性。
于是我们需要一种合理的综合性方法,使得原本相关的特征转化为彼此不相关,并在特征量的个数减少的同时,尽量不损失或者稍损失原特征中所包含的信息。
Karhunen-Loeve 变换也常称为主成分变换(PCA)或霍特林变换,就可以简化大维数的数据集合,而且它的协方差矩阵除对角线以外的元素都是零,消除了数据之间的相关性。
所以可以用于信息压缩、图像处理、模式识别等应用中。
Karhunen-Loeve 变换,是以矢量信号X 的协方差矩阵Ф的归一化正交特征矢量q 所构成的正交矩阵Q ,来对该矢量信号X 做正交变换Y=QX ,则称此变换为K-L 变换(K-LT 或KLT ),K-LT 是Karhuner-Loeve Transform 的简称,有的文献资料也写作KLT 。
可见,要实现KLT ,首先要从信号求出其协方差矩阵Ф,再由Ф求出正交矩阵Q 。
Ф的求法与自相关矩阵求法类似。
1.2Karhunen-Loeve 展开及其性质设零均值平稳随机过程u(n)构成的M 维随机向量为u(n),相应的相关矩阵为R ,则向量u(n)可以表示为R 的归一化特征向量M 21q ,q ,q 的线性组合,即iMi i q c n u ∑==1)(,此式称为u(n)的Karhunen-Loeve 展开式,展开式的系数i c 是由内积 )(c i n u q Hi =M ,1,2,i =定义的随机变量,且有{}0E =i c ,{}⎩⎨⎧≠==l i li c c i li ,0,E *λ。
k变换

K_L变换,SVD变换在图像处理中实际应用讨论一.K_L变换在人脸识别中的实际应用模式识别中一个最基本的问题就是特征抽取, 抽取有效的鉴别特征是解决识别问题的关键。
K-L 变换是特征抽取的最有效的方法之一。
基于K -L 变换的特征抽取有四种最为经典和常用的技术, 其中主分量分析( PCA, 或称以总体散布矩阵为产生矩阵的K-L 变换) 被广泛地应用在人脸等图像识别领域。
主分量分析在处理图像识别问题时, 其弱点也很明显: 首先, 将图像矩阵转化为图像向量后, 造成图像向量的维数一般较高, 比如, 图像的分辨率为100×100, 所得图像向量的维数高达10000, 在如此高维的图像向量上完成PCA 是非常耗时的。
尽管在PCA 中利用奇异值分解定理可加速总体散布矩阵的本征向量的求解速度, 但整个特征抽取过程所耗费的计算量相当可观; 其次, 主分量分析的训练是非监督的,即PCA 无法利用训练样本的类别信息。
另一种经典的K-L 变换方法, 即包含在类平均向量中判别信息的最优压缩技术, 其识别性能优于非监督的主分量分析方法。
受Hong代数特征抽取思想的启发, 本研究提出了一种直接基于图像矩阵的包含在类平均图像中判别信息的最优压缩方法——广义K-L 变换, 它克服了传统主分量分析的弱点。
在ORL 标准人脸库上的试验结果表明, 广义K-L变换方法不仅在识别性能上优于Eigenfaces 方法和Fisherfaces 方法, 且特征抽取的速度提高了近19 倍。
1. 1基本思想定义1: 设X 表示n 维列向量, 将m×n 的图像矩阵A 通过以下线性变换直接投影到X 上。
Y= A X ( 1)得到一个m 维列向量Y, X 为投影轴, Y 为图像A的投影特征向量。
设有C 个已知的模式类别, ni 表示第i 类的训练样本数, N 表示各类的训练样本总数。
第i 类的第j 个训练样本图像为m×n 的矩阵Aj ( i=1, 2, ⋯, C; j = 1, 2, ⋯, ni) 。
模式识别(三)课后上机作业参考解答

“模式识别(三).PDF”课件课后上机选做作业参考解答(武大计算机学院袁志勇, Email: yuanzywhu@) 上机题目:两类问题,已知四个训练样本ω1={(0,0)T,(0,1)T};ω2={(1,0)T,(1,1)T}使用感知器固定增量法求判别函数。
设w1=(1,1,1)Tρk=1试编写程序上机运行(使用MATLAB、 C/C++、C#、JA V A、DELPHI等语言中任意一种编写均可),写出判别函数,并给出程序运行的相关运行图表。
这里采用MATLAB编写感知器固定增量算法程序。
一、感知器固定增量法的MATLAB函数编写感知器固定增量法的具体内容请参考“模式识别(三).PDF”课件中的算法描述,可将该算法编写一个可以调用的自定义MATLAB函数:% perceptronclassify.m%% Caculate the optimal W by Perceptron%% W1-3x1 vector, initial weight vector% Pk-scalar, learning rate% W -3x1 vector, optimal weight vector% iters - scalar, the number of iterations%% Created: May 17, 2010function [W iters] = perceptronclassify(W1,Pk)x1 = [0 0 1]';x2 = [0 1 1]';x3 = [1 0 1]';x4 = [1 1 1]';% the training sampleWk = W1;FLAG = 0;% iteration flagesiters = 0;if Wk'*x1 <= 0Wk =Wk + x1;FLAG = 1;endif Wk'*x2 <= 0Wk =Wk + x2;FLAG = 1;endif Wk'*x3 >= 0Wk=Wk-x3;FLAG = 1; endif Wk'*x4 >= 0Wk =Wk -x4; FLAG = 1; enditers = iters + 1; while (FLAG) FLAG = 0; if Wk'*x1 <= 0Wk = Wk + x1; FLAG = 1; endif Wk'*x2 <= 0Wk = Wk + x2; FLAG = 1; endif Wk'*x3 >= 0 Wk = Wk - x3; FLAG = 1; endif Wk'*x4 >= 0 Wk = Wk - x4; FLAG = 1; enditers = iters + 1; endW = Wk;二、程序运行程序输入:初始权向量1W , 固定增量大小k ρ 程序输出:权向量最优解W , 程序迭代次数iters 在MATLAB 7.X 命令行窗口中的运行情况: 1、初始化1[111]T W = 初始化W 1窗口界面截图如下:2、初始化1kρ=初始化Pk 窗口界面截图如下:3、在MATLAB 窗口中调用自定义的perceptronclassify 函数由于perceptronclassify.m 下自定义的函数文件,在调用该函数前需要事先[Set path…]设置该函数文件所在的路径,然后才能在命令行窗口中调用。
模式识别课件--特征提取_KL变换

求稳定点:
L 2Ru 2u 0 u
Ru u
稳定点有很多个,但都是R的特征向量。 uT Ru uT u 最小,则u 要使得 必须为R最小特征根对应的特征向量。
结
if Ru j j u j then
j d 1
论
uT Ru j取得极值 j
对新样本也作变换,看与哪个y最接近。 与实际比较确定是否识别正确,统计识别率。
Matlab相关的函数
读取图像的函数:I=imread(‘D:\a.jpg’); 提供自定义函数读取整个目录的图像: com_ReadDB。 求特征向量与特征根:[V,D] = eig(R);
作 业
需要利用奇异值分解定理。
1 St N
( xi m)( xi m)T
i 1
N
1 t t T , t ( x1 m, , xN m) N
根据奇异值分解定理(SVD) d N 维的矩阵 t 存在两个正交 , 矩阵 U 和 V ,使得 t U V T ,其中 U 和 V 的列向量分别是 t t T ( d d 维)和 t T t ( N N 维)的特征向量, 是相应的特征值
把新样本的类别归为距离最近的那个已知样本的类别。
可以拿每个人的前几幅图像作为已知的样本数据,后几 幅图像作为未知样本,统计识别率。
用PCA进行数据压缩
PCA (Principle Component Analysis)方法: 进行特征降维变换,不能完全地表示原有的对象,
能量总会有损失。希望找到一种能量最为集中的变
第9章 特征提取
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
模式识别作业报告
组员:
2011302265 孔素瑶
2011302268 马征
2011302273 周昳慧
一、实验要求
用FAMALE.TXT 和MALE.TXT 的数据作为本次实验使用的样本集,利用K-L 变换对该样本集进行变换,与过去用Fisher 线性判别方法或其它方法得到的分类面进行比较,从而加深对所学内容的理解和感性认识。
二、具体做法
1. 不考虑类别信息对整个样本集进行K-L 变换(即PCA ),并将计算出的新特征方向表示在
二维平面上,考察投影到特征值最大的方向后男女样本的分布情况并用该主成分进行分类。
2. 利用类平均向量提取判别信息,选取最好的投影方向,考察投影后样本的分布情况并用
该投影方向进行分类。
3. 将上述投影和分类情况与以前做的各种分类情况比较,考察各自的特点和相互关系。
三、实验原理
设n 维随机向量T n x x x x ),,(21⋯=,其均值向量][x E u =,相关矩阵][T
x xx E R =,协方差矩阵]))([(T
x u x u x E C --=,x 经正交变换后产生向量T n y y y y ),,(21⋯=。
设有标准正交变换矩阵)),,((21n t t t T T ⋯=,(即I T T T
=)
T
n T n y y y x t t t x T y ),,(),,(2121⋯=⋯==,x t y T
i i = (1,2
,)i n =
∑=-===n
i i i T
t y y T y T x 11
(称为 x 的K-L 展开式)
取前m 项为x 的估计值1
ˆm
i i i x
y t ==∑ 1m n ≤<其均方误差为
∑∑+=+=∧
∧=
=
--=n
m i i
i n
m i i
T
y y E y
E x x x x E m 1
'1
2
][][)]()[()(ξ
∑∑∑+=+=+==
==
n
m i i x i
n
m i i
n
m i i
i t R t
t
x x E t y y E m 1
'1
''
1
'
)(][)(ξ
在I T T ='
的约束条件下,要使均方误差
min )]()[()(1
''
→=
--=∑+=∧
∧n
m i i x i
t R t
x x x x E m ξ
为此设定准则函数∑∑+=+=--
=
n
m i i T
i i n
m i i x T
i t t t R t J 1
1
)1(λ
由
0i
J
t ∂=∂可得()0x i i R I t λ-= 1,...,i m n =+ 即x i i i R t t λ= 1,...,i m n =+
表明: λi 是x R 的特征值,而i t 是相应的特征向量。
利用上式有:
∑∑∑+=+=+==
=
=
n
m i i
n
m i i i T i
n
m i i x T i
t t
t R t
m 1
1
1
)(λ
λξ
用“截断”方式产生x 的估计时,使均方误差最小的正交变换矩阵是其相关矩阵R x 的前m 个特征值对应的特征向量构成的。
四、实验内容
实验中,训练样本集的身高和体重数据构成二维特征向量。
利用K-L 变换,找出合适的投影方向,将原坐标系中的二维向量变为新坐标系中的一维向量,根据变换后的数据进行分类及为实验目的。
(1).不考虑性别信息的特征提取
根据训练样本集数据,计算样本均值)(x E u =和协方差矩阵]))([(T
x u x u x E C --=,式中,
T x x x ),(21=是二维特征列向量。
令产生矩阵=ψ]))([(T
x u x u x E C --=计算ψ的特征值,则最大特征值对应的特征向量即为要求的新坐标系。
将原来的二维坐标系中的数据投影到一维坐标系之后,给定适当的阈值即可实现对样本数据得分类。
(2).利用类均值向量的特征提取
根据训练样本集数据,分别计算两个样本的均值i u 和协方差矩阵i ∑。
在给定先验概率)(i P ω的情况下可以计算出类内离散度矩阵∑=∑
=
2
1
)(i i
i
w P S ω以及类间离散度矩阵
∑=--=2
1
))()((i T i i i b x x x x P S ω,其中i x 和x 分别代表各类均值与总体均值。
w S 是K-L 坐标
系的产生矩阵,变换后表征分类性能的函数
j
w T
j j b T
j j u S u u S u x J =
)(
可见()j J x 是类间离散度与类内离散度在j u 这坐标的分量之比,()j J x 越大,表明在新坐标系中该坐标轴包含较多可分性信息。
为了降低特征空间的维数,可以将各分量按()j J x 大小重新排列,使:
)()()(21D x J x J x J ≥⋯≥≥
并且与前面d 个最大的()j J x 值相对应的特征向量j u ,j=1,……,d 作为特征空间的基向量。
五、程序框图
1.不考虑性别信息
2.利用类均值向量的特征提取
六、实验结果
(1).不考虑性别信息的特征提取
实验中不考虑类别信息,用FAMALE.TXT和MALE.TXT的数据作为本次实验使用的样本集,建立基于K-L变换的分类器,记录错误率,并与Fisher线性分类器的分类结果作比较。
表1
男误判为女女误判为男
K-L104
Fisher84
不考虑性别信息的特征提取中,Fisher线性分类器略胜一筹
(2).利用类均值向量的特征提取
实验中考虑类别信息,设定男女先验概率分别为0.75和0.25,建立基于K-L变换的分类器,记录分类错误率并与Fisher线性分类器的分类错误率进行比较。
表2
男误判为女女误判为男
K-L103
Fisher84
利用类均值向量的特征提取中,分类效果会受到先验概率的影响
七、实验心得
有了前两次的实验经验,这次的实验完成起来要熟络得多。
我们先对之前学过的知识进行了系统的回顾,对KL变换有了更深一步的了解,此外,我们在选取先验概率时,考虑到前面Fisher分类器采用的是0.75对0.25,所以为了减少工作量,我们依旧选取0.75对0.25,整个过程相比于前两次显得较为轻松。