模式识别方法大作业实验报告

模式识别方法大作业实验报告
模式识别方法大作业实验报告

《模式识别导论》期末大作业2010-2011-2学期第 3 组

《模式识别》大作业人脸识别方法一

---- 基于PCA 和欧几里得距离判据的模板匹配分类器

一、 理论知识

1、主成分分析

主成分分析是把多个特征映射为少数几个综合特征的一种统计分析方法。在多特征的研究中,往往由于特征个数太多,且彼此之间存在着一定的相关性,因而使得所观测的数据在一定程度上有信息的重叠。当特征较多时,在高维空间中研究样本的分布规律就更麻烦。主成分分析采取一种降维的方法,找出几个综合因子来代表原来众多的特征,使这些综合因子尽可能地反映原来变量的信息,而且彼此之间互不相关,从而达到简化的目的。主成分的表示相当于把原来的特征进行坐标变换(乘以一个变换矩阵),得到相关性较小(严格来说是零)的综合因子。

1.1 问题的提出

一般来说,如果N 个样品中的每个样品有n 个特征12,,n x x x ,经过主成分分析,将

它们综合成n 综合变量,即

11111221221122221122n n n n

n

n n nn n y c x c x c x y c x c x c x y c x c x c x

=+++??

=+++??

?

?=+++? ij c 由下列原则决定:

1、i y 和j y (i j ≠,i,j = 1,2,...n )相互独立;

2、y 的排序原则是方差从大到小。这样的综合指标因子分别是原变量的第1、第2、……、

第n 个主分量,它们的方差依次递减。

1.2 主成分的导出

我们观察上述方程组,用我们熟知的矩阵表示,设12n x x X x ??????=

??????

是一个n 维随机向量,12n y y Y y ??????=??????

是满足上式的新变量所构成的向量。于是我们可以写成Y=CX,C 是一个正交矩阵,满足CC ’=I 。

坐标旋转是指新坐标轴相互正交,仍构成一个直角坐标系。变换后的N 个点在1y 轴上

有最大方差,而在n y 轴上有最小方差。同时,注意上面第一条原则,由此我们要求i y 轴和j y 轴的协方差为零,那么要求

T

YY

1

2

n λλλ?????

?Λ=?????

?

令T R XX =,则T T RC C =Λ

经过上面式子的变换,我们得到以下n 个方程

111111212112111221122111121211()0()0

()0

n n n n n n nn n r c r c r c r c r c r c r c r c r c λλλ-+++=+-++=+++-=

1.3 主成分分析的结果

我们要求解出C ,即解出上述齐次方程的非零解,要求ij c 的系数行列式为0。最后得出

结论i λ是||0R I λ-=的根,i y 的方差为i λ。然后选取前面p 个贡献率大的分量,这样就实现了降维。也就是主成分分析的目标。

二、 实现方法

1、 获取数据。在编程时具体是把一幅二维的图像转换成一维的;

2、 减去均值。要使PCA 正常工作,必须减去数据的均值。减去的均值为每一维的平均,

所有的x 值都要减去,同样所有的y 值都要减去,这样处理后的数据都具有0均值;

3、 计算协方差矩阵;

4、 计算协方差矩阵的特征矢量和特征值。因为协方差矩阵为方阵,我们可以计算它的特征

矢量和特征值,它可以告诉我们数据的有用信息;

5、选择成分组成模式矢量

现在可以进行数据压缩降低维数了。如果你观察上一节中的特征矢量和特征值,会注意到那些特征值是十分不同的。事实上,可以证明对应最大特征值的特征矢量就是数据的主成分。

对应大特征值的特征矢量就是那条穿过数据中间的矢量,它是数据维数之间最大的关联。

一般地,从协方差矩阵找到特征矢量以后,下一步就是按照特征值由大到小进行排列,这将给出成分的重要性级别。现在,如果你喜欢,可以忽略那些重要性很小的成分,当然这

会丢失一些信息,但是如果对应的特征值很小,你不会丢失很多信息。如果你已经忽略了一些成分,那么最后的数据集将有更少的维数,精确地说,如果你的原始数据是n维的,你选择了前p个主要成分,那么你现在的数据将仅有p维。

现在要做的是你需要组成一个模式矢量,这只是几个矢量组成的矩阵的一个有意思的名字而已,它由你保持的所有特征矢量构成,每一个特征矢量是这个矩阵的一列。

6、获得新数据

这是PCA最后一步,也是最容易的一步。一旦你选择了须要保留的成分(特征矢量)并组成了模式矢量,我们简单地对其进行转置,并将其左乘原始数据的转置:其中rowFeatureV ector是由特征矢量作为列组成的矩阵的转置,因此它的行就是原来的特征矢量,而且对应最大特征值的特征矢量在该矩阵的最上一行。rowdataAdjust是减去均值后的数据,即数据项目在每一列中,每一行就是一维。FinalData是最后得到的数据,数据项目在它的列中,维数沿着行。

FinalData = rowFeatureV ector * rowdataAdjust

这将仅仅给出我们选择的数据。我们的原始数据有两个轴(x和y),所以我们的原始数据按这两个轴分布。我们可以按任何两个我们喜欢的轴表示我们的数据。如果这些轴是正交的,这种表达将是最有效的,这就是特征矢量总是正交的重要性。我们已经将我们的数据从原来的xy轴表达变换为现在的单个特征矢量表达。如果我们已经忽略了一些特征矢量,则新数据将会用我们保留的矢量表达。

三、matlab编程

matlab程序分为三部分。程序框图如下图所示。

四、总结

从书里看我觉得最让人明白模板匹配分类器的一段话,就是“譬如A类有10个训练样

品,就有10个模板,B类有8个训练样品,就有8个模板。任何一个待测样品在分类时与这18个模板都算一算相似度,找出最相似的模板,如果该模板是B类中的一个,就确定待测样品为B类,否则为A类。”意思很简单吧,算相似度就是算距离。就是说,模板匹配就要用你想识别的样品与各类中每个样品的各个模板用距离公式计算距离,距离最短的那个就是最相似的。实验结果表明识别率达90%。

这样的匹配方法明显的缺点就是在计算量大,存储量大,每个测试样品要对每个模板计算一次相似度,如果模板量大的时候,计算量就十分的大。

五、参考文献

【1】边肇其,张学工.模式识别【M】.第2版.北京.:清华大学出版社,2000

【2】周杰,卢春雨,张长水,李衍达,人脸自动识别方法综述【J】.电子学报,2000,5(4):102-106

六、附录(matlab 程序代码)

第一部分:CreatDatabase.m

function T = CreatDatabase(TrainDatabasePath)

%一系列人脸(训练样本T1,T2,……,TM)

%函数描述:这个函数将所有训练样本的二维图像转换成一维列向量。接着,它把这些一维列向量组合到一行里面构造出二维向量T,即每个单元的信息量是一幅图片

%参数:TrainDatabasePath --- 训练数据库的路径

%返回值:T ---

%一个二维矩阵,包含了所有一维向量。假设所有在训练样本的P幅图像拥有相同的大小(M*N)。因此,这些一维向量的长度是M*N而且T将是一个MN*P的二维

%矩阵

%%%%%%%%%%%%%%文件处理%%%%%%%%%%%%%%%%%

TrainFiles = dir(TrainDatabasePath);

Train_Number = 0;

for i = 1:size(TrainFiles,1)

t = size(TrainFiles,1);

if

not(strcmp(TrainFiles(i).name,'.')|strcmp(TrainFiles(i).name,'..')|strcmp(TrainFiles(i).name,'Thumb s.db'))

Train_Number = Train_Number + 1;

end

end

%%%%%%%%%从一维数组构造成二维数组%%%%%%%%%%%%

T = [];

for i = 1: Train_Number

str = int2str(i);

str = strcat('\',str,'.pgm');

str = strcat(TrainDatabasePath,str);

img = imread(str);

[irow icol] = size(img);

temp = reshape(img',irow*icol,1);%将二维数组变成一维数组

T = [T temp];

end

第二部分:EigenfaceCore.m

function [m,A,Eigenfaces] = EigenfaceCore(T)

%利用主成分分析(PCA)的方法在各张人脸中决定最明显的特征

%描述:这个方程首先得到二维数组,包括所有的训练样本向量并且从训练样本中返回3个输出量

%参数:T --- 一个二维矩阵,包含了所有一维向量。假设所有在训练样本的P 幅图像拥有相同的大小(M*N)。因此,这些一维向量的长度是M*N而且T将是一个MN*P 的二维

%矩阵

%返回值:m ---(M*Nx1)训练样本的均值

% Eigenfaces --- (M*Nx(P-1))训练样本协方差矩阵的特征向量

% A--- (M*NxP)中心向量的矩阵

%%%%%%%%%计算均值%%%%%%%%%%%

m = mean(T,2); %计算样本平均值m = (1/P)*sum(Tj's)

Train_Number = size(T,2);

%%%%%%%%%计算每个图像与均值的差%%%%%%%%%

%%%要使PCA正常工作,必须减去数据的均值。减去的均值为每一维的平均,所有的x 值都要减去,同样所有的y值都要减去%%%

%%%这样处理后的数据都具有0均值%%%

A = [];

for i = 1 : Train_Number

temp = double(T(:,i)) - m;

A = [A temp]; %再次合并矩阵

end

%%%%%%%计算协方差矩阵%%%%%%%%%%

%%%%%%%计算协方差矩阵的特征矢量和特征值%%%%%%%%

L = A'*A; %L代表协方差矩阵 C = A*A'.

[V D] = eig(L);%计算矩阵A的特征值D(eigenvalues)和特征矩阵V(eigenvectors) %%%%%%选择成分组成模式矢量%%%%%%%%%%%

L_eig_vec = [];

for i = 1:size(V,2)

if(D(i,i)>1)

L_eig_vec = [L_eig_vec V(:,1)];

end

end

%%%%%%计算协方差矩阵的特征向量%%%%%%%%%%

Eigenfaces = A * L_eig_vec;

第三部分:Recognition.m

function OutputName = Recognition(TestImage, m, A, Eigenfaces)

%函数描述:这个函数将源图像提取成特征脸,然后比较它们之间的欧几里得距离

%输入量: TestImage ---测试样本的路径

% m ---(M*Nx1)训练样本的均值

% Eigenfaces --- (M*Nx(P-1))训练样本协方差矩阵的特征向量

% A--- (M*NxP)中心向量的矩阵

%返回值:OutputName ---在训练样本中的被识别的图像的名字%%%%%%%%%%从中心向量中提取特征脸%%%%%%%%%%%%%%

ProjectedImages = [];

Train_Number = size(Eigenfaces,2);

for i = 1:Train_Number

temp = Eigenfaces' * A(:,i)

ProjectedImages = [ProjectedImages temp];

end

%%%%%%%%%%%%%%%%从测试样本中提取PCA特征%%%%%%%%%%%%%%% InputImage = imread(TestImage);

temp = InputImage(:,:,1);

[irow icol] = size(temp);

InImage = reshape(temp',irow*icol,1);

Difference = double(InImage) - m;

ProjectedTestImage = Eigenfaces'*Difference;

%%%%%%%%%%%%%计算欧几里得几何距离%%%%%%%%%%%%%%%%%%%%%% Euc_dist = [];

for i = 1 : Train_Number,

q = ProjectedImages(:,i);

temp = (norm(ProjectedTestImage - q))^2;

Euc_dist = [Euc_dist temp];

end

%找出A中最小元素及其索引,把最小值返回给C,最小值索引返回给I。

%如果有几个相同的最小值,那么返回第一个被发现的索引。

[Euc_dist_min, Recognized_index] = min(Euc_dist);

OutputName = strcat(int2str(Recognized_index),'.pgm');

主程序

clear all

clc

close all

TrainDatabasePath = uigetdir('C:\MA TLAB7\work\PCA', 'Select training database path' ); TestDatabasePath = uigetdir('C:\MA TLAB7\work\PCA', 'Select test database path');

prompt = {'Enter test image name(a number between 1 to 10):'};

dlg_title = 'Input of PCA_Based Face Recognition System';

num_lines = 1;

def = {'1'};

TestImage = inputdlg(prompt,dlg_title,num_lines,def);

TestImage = strcat(TestDatabasePath,'\',char(TestImage),'.pgm');

im = imread(TestImage);

T = CreatDatabase(TrainDatabasePath);

[m, A, Eigenfaces] = EigenfaceCore(T);

OutputName = Recognition(TestImage, m, A, Eigenfaces);

SelectedImage = strcat(TrainDatabasePath,'\',OutputName);

SelectedImage = imread(SelectedImage);

imshow(im)

title('Test Image');

figure, imshow(SelectedImage);

title('Equivalent Image');

str = strcat('Matched image is : ', OutputName);

disp(str)

《模式识别》大作业人脸识别方法二 ---- 基于PCA 和FLD 的人脸识别的线性分类器

一、理论知识

1、 fisher 概念引出

在应用统计方法解决模式识别问题时,为了解决“维数灾难”的问题,压缩特征空间的维数非常必要。fisher 方法实际上涉及到维数压缩的问题。fisher 分类器是一种几何分类器, 包括线性分类器和非线性分类器。线性分类器有:感知器算法、增量校正算法、LMSE 分类算法、Fisher 分类。

若把多维特征空间的点投影到一条直线上,就能把特征空间压缩成一维。那么关键就是找到这条直线的方向,找得好,分得好,找不好,就混在一起。因此fisher 方法目标就是找到这个最好的直线方向以及如何实现向最好方向投影的变换。这个投影变换恰是我们所寻求的解向量*W ,这是fisher 算法的基本问题。

样品训练集以及待测样品的特征数目为n 。为了找到最佳投影方向,需要计算出各类均值、样品类内离散度矩阵i S 和总类间离散度矩阵w S 、样品类间离散度矩阵b S ,根据Fisher 准则,找到最佳投影准则,将训练集内所有样品进行投影,投影到一维Y 空间,由于Y 空间是一维的,则需要求出Y 空间的划分边界点,找到边界点后,就可以对待测样品进行进行一维Y 空间的投影,判断它的投影点与分界点的关系,将其归类。

Fisher 法的核心为二字:投影。

二、 实现方法

(1) 计算给类样品均值向量i m ,i m 是各个类的均值,i N 是i ω类的样品个数。

11,2,...,i

i X i

m X i n

N ω∈=

=∑

(2) 计算样品类内离散度矩阵

i

S 和总类间离散度矩阵

w

S

1

()()

1,2,...,i T

i i i X w i

i S X m X m i n

S S

ω∈==--==

(3) 计算样品类间离散度矩阵b S

1212()()

T

b S m m m m =--

(4) 求向量*W

我们希望投影后,在一维Y 空间各类样品尽可能地分开,也就是说我们希望两类样品均值之差(12m m -)越大越好,同时希望各类样品内部尽量密集,即希望类内离散度越小越好,因此,我们可以定义Fisher 准则函数:()T

b F T

w W S W J W W S W

=

使得()F J W 取得最大值的*

W 为 *

1

12()

w W

S m m -=-

(5) 将训练集内所有样品进行投影

*()T

y W X

=

如果w S 是非奇异的,则要获得类间离散度与类内离散度的比值最大的投影方向()

F J W 的满足下式:

12()max

[,,]T

b F m T w W S W J W ar

c w w w W S W

==

其中12[,,]m w w w 是满足下式的b S 和w S 对应的m 个最大特征值所对应的特征向量。

注意到该矩阵最多只有C-1个非零特征值,C 是类别数。

2、程序中算法的应用

Fisher 线性判别方法(FLD )是在Fisher 鉴别准则函数取极值的情况下,求得一个最佳判别方向,然后从高位特征向量投影到该最佳鉴别方向,构成一个一维的判别特征空间。

将Fisher 线性判别推广到C-1个判决函数下,即从N 维空间向C-1维空间作相应的投影。利用这个m 维的投影矩阵M 将训练样本n 维向量空间转化为m 维的MEF 空间并且获得在MEF 空间上的最佳描述特征,即

1120,,()

1,2,,i i i T

m i i y y y y M x m m i N

==--=

由这N 个MEF 空间上的最佳描述特征可以求出12,,N y y y 的样品类内离散度矩阵w

S 和总类间离散度矩阵b S ,取1

w b S S -的K 个最大的特征可以构成FLD 投影矩阵W 。将MEF

空间上的最佳描述特征12,,N y y y 在FLD 投影矩阵W 上进行投影,将MEF 空间降维到MDF 空间,并获得对应的MDF 空间上的最佳分类特征,即

12(,,)1,2,,i i i

i k i

Z Z Z Z W y i N

===

通过计算12,,k Z Z Z 的欧氏距离,可以将训练样本分为C (C 等于1

w b S S -的秩)

,完成对训练样本集的分类

1、 matlab 编程

1、fisher 判别法人脸检测与识别流程图

2、matlab 程序分为三部分。程序框图如下图所示。

2、

总结

从计算成本来看,PCA+LDA 方法的好处在于对高维空间的降维,避免了类内离散度矩

阵不可逆的情况。然而,从识别性能来看,由于主成分只是代表图像的灰度特征,是从能量的角度衡量主成分大小的,应用PCA 之后,舍弃的对应较小特征值的次要成分有可能对LDA 来说重要的分类信息,有可能降低分类识别性能。 而且,在实际应用中,特别是在人脸图像识别中,由于“维数灾难”的存在,FLD 通常会遇到两个方面的困难:

(1) 类内离散度矩阵w S 总是奇异的。这是由于w S 的秩最多为N-C ,(N 是用于训练样本

的图像数目,C 是人脸的类别数)。而一般情况下,用于训练的图像数目N 是远小

于每幅图像的像素数目,即“小样本问题“经常出现。

(2) 计算的复杂度。在高维空间中,要得出一个分类向量的复杂度远远高于计算一个低

维空间中的分类向量。

3、 参考文献

【1】边肇其,张学工.模式识别【M 】.第2版.北京.:清华大学出版社,2000

【2】周杰,卢春雨,张长水,李衍达,人脸自动识别方法综述【J 】.电子学报,2000,5(4):102-106

4、 附录(matlab 程序代码)

1、第一部分:CreatDatabase.m

function T = CreatDatabase(TrainDatabasePath) TrainFiles = dir(TrainDatabasePath); Train_Number = 0;

%%%%%%%%统计文件数%%%%%%%%%%%%% for i = 1:size(TrainFiles,1) if

not(strcmp(TrainFiles(i).name,'.')|strcmp(TrainFiles(i).name,'..')|st rcmp(TrainFiles(i).name,'Thumbs.db')) Train_Number = Train_Number + 1; end end

%%%%%%%%二维转一维%%%%%%%%%%%% T = [];

for i = 1 : Train_Number

str = int2str(i);%把文件索引转换为字符串格式 str = strcat('\',str,'.pgm'); str = strcat(TrainDatabasePath,str); img = imread(str); [irow icol] = size(img);

temp = reshape(img',irow*icol,1); T = [T temp]; end

T = double(T);

2、第二部分:FisherfaceCore

function[m_database V_PCA V_Fisher ProjectedImages_Fisher Class_number Class_population] = FisherfaceCore(T)

%%%%%%%%返回值注释%%%%%%%%%%%

%m_database --- (M*Nx1)维的训练样本均值

%V_PCA --- (M*Nx(P-C)训练样本协方差的特征向量

%V_Fisher --- ((P-C)x(C-1)) 最大的(C-1)维J = inv(Sw) * Sb的特征矩阵%ProjectedImages_Fisher --- ((C-1)xP)维训练样本,这些样本从fisher线性空间中提取

%%%%%基本量赋值 %%%%%%%%%

Class_number=(size(T,2))/9; 类的数目,除以8取决于样本中有多少类人

Class_population = 9;%每一类的图像数目

P = Class_population * Class_number; %总训练样本的数目

%%%%%计算均值%%%%%

m_database = mean(T,2);%°包含T每一行均值的列向量

%%%%计算方差%%%%%

A = T - repmat(m_database,1,P);

%%%%%计算特征脸的算法%%%%%%

L = A' * A;

[V D] = eig(L);

V = fliplr(V);

%%%%筛选小的特征值%%%%%

L_eig_vec = [];

dig = fliplr(max(D));

for i = 1 : Class_number

L_eig_vec = [L_eig_vec V(:,i)/sqrt(dig(i))];

end

%%%%计算特征矩阵的协方差矩阵C%%%%%

V_PCA = A * L_eig_vec;%V_PCA就是降维后的协方差矩阵

ProjectedImages_PCA = [];

for i = 1 : P

temp = V_PCA'*A(:,i);

ProjectedImages_PCA = [ProjectedImages_PCA temp];

end

%%%%%fisher分类器的设计方法%%%%

%%%%%计算在特征空间里面每一个类的均值%%%%%

m_PCA = mean(ProjectedImages_PCA,2) %特征空间总的均值

m = zeros( Class_number, Class_number );

Sw = zeros( Class_number, Class_number);

Sb = zeros( Class_number, Class_number);

for i = 1 : Class_number

m(:,i) =

mean( ( ProjectedImages_PCA(:,((i-1)*Class_population+1):i*Class_popu lation) ), 2 )'; %每一类的样本分别求均值

S = zeros(Class_number, Class_number);

for j = ((i-1) * Class_population + 1) : ( i*Class_population ) S = S + ( ProjectedImages_PCA(:,j) - m(:,i)) *

(ProjectedImages_PCA(:,j) - m(:,i))';

end

Sw = Sw + S;

Sb = Sb + (m(:,i) - m_PCA) * (m(:,i) - m_PCA)'

end

%%%%%%?计算fisher判别准则,目标是获取最大类间离散度和最小类内离散度%%%%%% %%%%%%?ò??μ???±êê?£o??è?×?′óàà??à?é¢?èoí×?D?μ?àà?úà?é¢?è?£

[J_eig_vec, J_eig_val] = eig(Sb,Sw);

J_eig_val = max(J_eig_val);

J_eig_vec = fliplr(J_eig_vec);

%%%%%%去除0特征根和排序

for i = 1 : Class_number - 1

V_Fisher(:,i) = J_eig_vec(:,i);%fisher判别法将N维映射到C-1维

end

%%%%%从fisher线性空间中提取图像%

Yi = V_Fisher' * V_PCA' * (Ti - m_database)

for i = 1: Class_number * Class_population

ProjectedImages_Fisher(:,i) = V_Fisher' * ProjectedImages_PCA(:,i); end%由PCA过渡到FLD

%img_fisher = w_fisher' * pca_img;

%ProjectedImages_Fisher = V_Fisher' * ProjectedImages_PCA;

3、第三部分:Recognition.m

function OutputName = Recognition(TestImage, m_database, V_PCA, V_Fisher, ProjectedImages_Fisher, Class_number, Class_population)

%函数描述:这个函数将源图像提取成特征脸,然后比较它们之间的欧几里得距离

%输入量: TestImage ---测试样本的路径

%%V_PCA --- (M*Nx(P-C)训练样本协方差的特征向量

%V_Fisher --- ((P-C)x(C-1)) 最大的(C-1)维J = inv(Sw) * Sb的特征矩阵

%ProjectedImages_Fisher --- ((C-1)xP)维训练样本,这些样本从fisher线性空

间中提取

%Class_number---类的数目

%Class_population---每一类图像的数目

%返回值:OutputName ---在训练样本中的被识别的图像的名字

Train_Number = size(ProjectedImages_Fisher,2); %%%%%%%%%%%%%%%%%%%%%%%%从测试样本中提取PCA特征%%%%%%%%%%%%%%%%%%% InputImage = imread(TestImage);

temp = InputImage(:,:,1);

[irow icol] = size(temp);

InImage = reshape(temp',irow*icol,1);

Difference = double(InImage)-m_database;

ProjectedTestImage = V_Fisher' * V_PCA' * Difference; %%%%%%%%%%%%%%%%%%%%%%%%计算欧几里得几何距离%%%%%%%%%%%%%%%%

Euc_dist = [];

for i = 1 : Train_Number

q = ProjectedImages_Fisher(:,i);

temp = ( norm( ProjectedTestImage - q ))^2 ;

Euc_dist = [Euc_dist temp];

end

Euc_dist2 = [];

for i=1 : Class_number

dist =

mean(Euc_dist(((i-1)*Class_population+1):(i*Class_population))); Euc_dist2 = [Euc_dist2 dist];

end

[Euc_dist_min ,Recognized_index] = min(Euc_dist2);

Recognized_index = (Recognized_index - 1) * Class_population + 1; OutputName = strcat(int2str(Recognized_index),'.pgm');

vb大作业 实验报告

软件技术实验报告 学号2009300186 姓名赵佶男班级010109卓 越 大作业机房管理系统 课题基本目标要求: 1)可在系统中由系统管理员按班级指定时间进行上机课时安排,安排上机不得与其他已安排机时冲突。 2)在指定上机课时段,除了上机班级学生可以登录外,其余无关学生一律不得登录,除非系统管理员授权。预定上机时间结束时,自动 提前5分钟提示,待真正结束时即自动锁屏。 3)除上机课时安排以外,可以在机动时间段接受学生凭个人一卡通上机,且上机实施计时自动收费(即扣除学生一卡通上因上机而应缴 纳的上机服务费) 4)在接受零散学生付费上机时,可自动为其分配空闲机器并授权使用,在分配机器时应考虑机器的使用情况分布均匀,即每次分配机器是 前一时段未曾使用的机器,当学生一卡通上的余额,不足以支付1 小时上机服务费时,应提示其下机充值,并实施锁屏。 实验步骤: 首先,根据大作业的要求,我建立了机器表,流水表,学生基本情况表,上课表,以及一卡通表五个数据库表。机器表用来按照使用情况,选择空闲时间最长的机器。流水表用来记录现在机器以及人员使用的情况,是个

动态表,用来方便的取用和修改数据。学生基本情况表用来存放学生的学号,密码,班级等基本情况,以实现学生上课登录和自由登录。上课表存放各个班级的上课下课时间,以实现排课功能。一卡通表记录了每个学生一卡通内的金额,用来帮助实现上下机的扣费,以及余额不够支付一小时时间情况下得强制下机。 然后,我进行了窗体的设计。经过筛选优化,我设计了五个窗体,分别是主选择窗体,注册窗体,登录窗体,上课安排窗体,实时计费和下机窗体。 主选择窗体可以用来进行上课登录、学生自由登录、管理员登录和机器的推荐。注册窗体是用来进行学生登录密码的注册。登录窗体限制学生的学号和密码必须匹配才能登录。上课安排窗体可以输入班号、上下课时间并选择星期值。实时计费和下机窗体用来扣费并方便学生随时下机。 接下来,要按照要求进行代码的编写。 A)可在系统中由系统管理员按班级指定时间进行上机课时安排,安排上机不得与其他已安排机时冲突。 此功能我在排课窗体下用select选择出全体班级的上下课以及星期值,并将管理员希望的上下课时间转换为时间类型数值,进行循环比较,用do until 语句逐个比较,使得上下课时间点都不得在其他班级的上课时间段内。如果时间不冲突,就实施修改数据库的功能,并更新保存。 B)在指定上机课时段,除了上机班级学生可以登录外,其余无关学生一律不得登录,除非系统管理员授权。预定上机时间结束时,自动提前5分钟提示,待真正结束时即自动锁屏。 在主选择窗体内有上课登录按钮和自由登录按钮。点击上课登录,输入学

模式识别大作业02125128(修改版)

模式识别大作业 班级 021252 姓名 谭红光 学号 02125128 1.线性投影与Fisher 准则函数 各类在d 维特征空间里的样本均值向量: ∑∈= i k X x k i i x n M 1 ,2,1=i (1) 通过变换w 映射到一维特征空间后,各类的平均值为: ∑∈= i k Y y k i i y n m 1,2,1=i (2) 映射后,各类样本“类内离散度”定义为: 22 ()k i i k i y Y S y m ∈= -∑,2,1=i (3) 显然,我们希望在映射之后,两类的平均值之间的距离越大越好,而各类的样本类内离 散度越小越好。因此,定义Fisher 准则函数: 2 1222 12||()F m m J w s s -= + (4) 使F J 最大的解* w 就是最佳解向量,也就是Fisher 的线性判别式. 从 )(w J F 的表达式可知,它并非w 的显函数,必须进一步变换。 已知: ∑∈= i k Y y k i i y n m 1,2,1=i , 依次代入上两式,有: i T X x k i T k X x T i i M w x n w x w n m i k i k === ∑∑∈∈)1 (1 ,2,1=i (5) 所以:2 21221221||)(||||||||M M w M w M w m m T T T -=-=- w S w w M M M M w b T T T =--=))((2121 (6)

其中:T b M M M M S ))((2121--= (7) b S 是原d 维特征空间里的样本类内离散度矩阵,表示两类均值向量之间的离散度大 小,因此,b S 越大越容易区分。 将(4.5-6) i T i M w m =和(4.5-2) ∑∈= i k X x k i i x n M 1代入(4.5-4)2i S 式中: ∑∈-= i k X x i T k T i M w x w S 22)( ∑∈?--? =i k X x T i k i k T w M x M x w ))(( w S w i T = (8) 其中:T i X x k i k i M x M x S i k ))((--= ∑=,2,1=i (9) 因此:w S w w S S w S S w T T =+=+)(212221 (10) 显然: 21S S S w += (11) w S 称为原d 维特征空间里,样本“类内离散度”矩阵。 w S 是样本“类内总离散度”矩阵。 为了便于分类,显然 i S 越小越好,也就是 w S 越小越好。

模式识别第二次上机实验报告

北京科技大学计算机与通信工程学院 模式分类第二次上机实验报告 姓名:XXXXXX 学号:00000000 班级:电信11 时间:2014-04-16

一、实验目的 1.掌握支持向量机(SVM)的原理、核函数类型选择以及核参数选择原则等; 二、实验内容 2.准备好数据,首先要把数据转换成Libsvm软件包要求的数据格式为: label index1:value1 index2:value2 ... 其中对于分类来说label为类标识,指定数据的种类;对于回归来说label为目标值。(我主要要用到回归) Index是从1开始的自然数,value是每一维的特征值。 该过程可以自己使用excel或者编写程序来完成,也可以使用网络上的FormatDataLibsvm.xls来完成。FormatDataLibsvm.xls使用说明: 先将数据按照下列格式存放(注意label放最后面): value1 value2 label value1 value2 label 然后将以上数据粘贴到FormatDataLibsvm.xls中的最左上角单元格,接着工具->宏执行行FormatDataToLibsvm宏。就可以得到libsvm要求的数据格式。将该数据存放到文本文件中进行下一步的处理。 3.对数据进行归一化。 该过程要用到libsvm软件包中的svm-scale.exe Svm-scale用法: 用法:svmscale [-l lower] [-u upper] [-y y_lower y_upper] [-s save_filename] [-r restore_filename] filename (缺省值:lower = -1,upper = 1,没有对y进行缩放)其中,-l:数据下限标记;lower:缩放后数据下限;-u:数据上限标记;upper:缩放后数据上限;-y:是否对目标值同时进行缩放;y_lower为下限值,y_upper为上限值;(回归需要对目标进行缩放,因此该参数可以设定为–y -1 1 )-s save_filename:表示将缩放的规则保存为文件save_filename;-r restore_filename:表示将缩放规则文件restore_filename载入后按此缩放;filename:待缩放的数据文件(要求满足前面所述的格式)。缩放规则文件可以用文本浏览器打开,看到其格式为: y lower upper min max x lower upper index1 min1 max1 index2 min2 max2 其中的lower 与upper 与使用时所设置的lower 与upper 含义相同;index 表示特征序号;min 转换前该特征的最小值;max 转换前该特征的最大值。数据集的缩放结果在此情况下通过DOS窗口输出,当然也可以通过DOS的文件重定向符号“>”将结果另存为指定的文件。该文件中的参数可用于最后面对目标值的反归一化。反归一化的公式为: (Value-lower)*(max-min)/(upper - lower)+lower 其中value为归一化后的值,其他参数与前面介绍的相同。 建议将训练数据集与测试数据集放在同一个文本文件中一起归一化,然后再将归一化结果分成训练集和测试集。 4.训练数据,生成模型。 用法:svmtrain [options] training_set_file [model_file] 其中,options(操作参数):可用的选项即表示的涵义如下所示-s svm类型:设置SVM 类型,默

C大作业图书管理系统实验报告

附件1: 学号:00126 《面向对象程序设计》 大作业 题目学生成绩管理系统 学院文法学院 专业教育学 班级教育学1201 姓名杨欣 指导教师鄢红国 2013 年12 月20 日

目录 一设计目的 (1) 二大作业的内容 (2) 三大作业的要求与数据 (3) 四大作业应完成的工作 (4) 五总体设计(包含几大功能模块) (5) 六详细设计(各功能模块的具体实现算法——流程图) (6) 七调试分析(包含各模块的测试用例,及测试结果) (7) 八总结 (8) 十参考资料 (9)

一大作业的目的 《面向对象程序设计》是一门实践性很强的课程,通过大作业不仅可以全方位检验学生知识掌握程度和综合能力,而且还可以进一步加深、巩固所学课程的基本理论知识,理论联系实际,进一步培养自己综合分析问题和解决问题的能力。更好地掌握运用C++语言独立地编写、调试应用程序和进行其它相关设计的技能。 二大作业的内容 对图书信息(包括编号、书名、总入库数量、当前库存量、已借出本数等)进行管理,包括图书信息的输入、输出、查询、删除、排序、统计、退出.将图书的信息进行记录,信息内容包含:(1)图书的编号(2)图书的书名(3)图书的库存量。假设,现收集到了一个图书馆的所有图书信息,要求用C语言编写一个简单的图书管理系统,可进行录入、查询、修改和浏览等功能。学习相关开发工具和应用软件,熟悉系统建设过程。 三大作业的要求与数据 1、用C语言实现系统; 2、对图书信息(包括编号、书名、总入库数量、当前库存量、已借出本数)进行管理,包括图书信息的输入、输出、查询、删除、排序、统计、退出. 3、图书信息包括:其内容较多,为了简化讨论,要求设计的管理系统能够完成以下功能: (1) 每一条记录包括一本图书的编号、书名、库存量 (2) 图书信息录入功能:(图书信息用文件保存,可以一次完成若干条记录 的输入。) (3) 图书信息显示浏览功能:完成全部图书记录的显示。 (4) 查询功能:完成按书名查找图书记录,并显示。 (5) 图书信息的删除:按编号进行图书某图书的库存量. (6) 借书登记系统:可以输入读者编号和所借书号来借书。 (7) 还书管理系统:可以输入读者编号和所借书号来还书。 (8)、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!

大工19秋《数据挖掘》大作业题目及要求答案

网络教育学院 《数据挖掘》课程大作业 题目:题目一:Knn算法原理以及python实现 姓名: XXX 报名编号: XXX 学习中心:奥鹏XXX 层次:专升本 专业:计算机科学与技术 第一大题:讲述自己在完成大作业过程中遇到的困难,解决问题的思路,以及相关感想,或者对这个项目的认识,或者对Python与数据挖掘的认识等等,300-500字。 答: 数据挖掘是指从大量的数据中通过一些算法寻找隐藏于其中重要实用信息的过程。这些算法包括神经网络法、决策树法、遗传算法、粗糙集法、模糊集法、关联规则法等。在商务管理,股市分析,公司重要信息决策,以及科学研究方面都有十分重要的意义。数据挖掘是一种决策支持过程,它主要基于人工智能、机器学习、模式识别、统计学、数据库、可视化技术,从大量数据中寻找其肉眼难以发现的规律,和大数据联系密切。如今,数据挖掘已经应用在很多行业里,对人们的生产生活以及未来大数据时代起到了重要影响。

第二大题:完成下面一项大作业题目。 2019秋《数据挖掘》课程大作业 注意:从以下5个题目中任选其一作答。 题目一:Knn算法原理以及python实现 要求:文档用使用word撰写即可。 主要内容必须包括: (1)算法介绍。 (2)算法流程。 (3)python实现算法以及预测。 (4)整个word文件名为 [姓名奥鹏卡号学习中心](如 戴卫东101410013979浙江台州奥鹏学习中心[1]VIP ) 答: KNN算法介绍 KNN是一种监督学习算法,通过计算新数据与训练数据特征值之间的距离,然后选取K(K>=1)个距离最近的邻居进行分类判(投票法)或者回归。若K=1,新数据被简单分配给其近邻的类。 KNN算法实现过程 (1)选择一种距离计算方式, 通过数据所有的特征计算新数据与

模式识别特征选择与提取

模式识别特征选择与提取 中国矿业大学计算机科学与技术学院电子信息科学系 班级:信科11-1班,学号:08113545,姓名:褚钰博 联系方法(QQ或手机):390345438,e-mail:390345438@https://www.360docs.net/doc/ae18609014.html, 日期:2014 年06月10日 摘要 实际问题中常常需要维数约简,如人脸识别、图像检索等。而特征选择和特征提取是两种最常用的维数约简方法。特征选择是从某些事物中提取出本质性的功能、应用、优势等,而特征提取是对特征空间进行变换,将原始特征空间映射到低维空间中。 本文是对主成分分析和线性判别分析。 关键词:特征选择,特征提取,主成分分析,线性判别分析 1.引言 模式识别的主要任务是利用从样本中提取的特征,并将样本划分为相应的模式类别,获得好的分类性能。而分类方法与分类器设计,都是在d(变量统一用斜体)维特征空间已经确定的前提下进行的。因此讨论的分类器设计问题是一个选择什么准则、使用什么方法,将已确定的d维特征空间划分成决策域的问题。对分类器设计方法的研究固然重要,但如何确定合适的特征空间是设计模式识别系统另一个十分重要,甚至更为关键的问题。如果所选用的特征空间能使同类物体分布具有紧致性,即各类样本能分布在该特征空间中彼此分割开的区域内,这就为分类器设计成功提供良好的基础。反之,如果不同类别的样本在该特征空间中混杂在一起,再好的设计方法也无法提高分类器的准确性。本文要讨论的问题就是特征空间如何设计的问题。 基于主成分分析的特征选择算法的思想是建立在这样的基础上的:主成分分析方法将原始特征通过线性变换映射到新的低维空间时,获得的主成分是去了新的物理意义,难以理解,并且主成分是所有原始特征的线性组合。所以将主成分分析与特征选择相结合,设计多种相似性度量准则,通过找到与主成分相关的关键特征或者删除冗余、不相关以及没有意义的特征,将主成分又重新映射到原始空间,来理解成主成分的实际意义。 基于线性判别分析的高维特征选择将单个特征的Fisher准则与其他特征选择算法相结合,分层消除不相关特征与冗余特征。不相关特征滤波器按照每个特征的Fisher评价值进行特征排序,来去除噪音和不相关特征。通过对高维数据特征关联性的分析,冗余特征滤波器选用冗余度量方法和基于相关性的快速过滤器算法。分别在不同情境下进行数据分类实验,验证其性能。

模式识别实验报告

模式识别实验报告

————————————————————————————————作者:————————————————————————————————日期:

实验报告 实验课程名称:模式识别 姓名:王宇班级: 20110813 学号: 2011081325 实验名称规范程度原理叙述实验过程实验结果实验成绩 图像的贝叶斯分类 K均值聚类算法 神经网络模式识别 平均成绩 折合成绩 注:1、每个实验中各项成绩按照5分制评定,实验成绩为各项总和 2、平均成绩取各项实验平均成绩 3、折合成绩按照教学大纲要求的百分比进行折合 2014年 6月

实验一、 图像的贝叶斯分类 一、实验目的 将模式识别方法与图像处理技术相结合,掌握利用最小错分概率贝叶斯分类器进行图像分类的基本方法,通过实验加深对基本概念的理解。 二、实验仪器设备及软件 HP D538、MATLAB 三、实验原理 概念: 阈值化分割算法是计算机视觉中的常用算法,对灰度图象的阈值分割就是先确定一个处于图像灰度取值范围内的灰度阈值,然后将图像中每个像素的灰度值与这个阈值相比较。并根据比较的结果将对应的像素划分为两类,灰度值大于阈值的像素划分为一类,小于阈值的划分为另一类,等于阈值的可任意划分到两类中的任何一类。 最常用的模型可描述如下:假设图像由具有单峰灰度分布的目标和背景组成,处于目标和背景内部相邻像素间的灰度值是高度相关的,但处于目标和背景交界处两边的像素灰度值有较大差别,此时,图像的灰度直方图基本上可看作是由分别对应于目标和背景的两个单峰直方图混合构成。而且这两个分布应大小接近,且均值足够远,方差足够小,这种情况下直方图呈现较明显的双峰。类似地,如果图像中包含多个单峰灰度目标,则直方图可能呈现较明显的多峰。 上述图像模型只是理想情况,有时图像中目标和背景的灰度值有部分交错。这时如用全局阈值进行分割必然会产生一定的误差。分割误差包括将目标分为背景和将背景分为目标两大类。实际应用中应尽量减小错误分割的概率,常用的一种方法为选取最优阈值。这里所谓的最优阈值,就是指能使误分割概率最小的分割阈值。图像的直方图可以看成是对灰度值概率分布密度函数的一种近似。如一幅图像中只包含目标和背景两类灰度区域,那么直方图所代表的灰度值概率密度函数可以表示为目标和背景两类灰度值概率密度函数的加权和。如果概率密度函数形式已知,就有可能计算出使目标和背景两类误分割概率最小的最优阈值。 假设目标与背景两类像素值均服从正态分布且混有加性高斯噪声,上述分类问题可以使用模式识别中的最小错分概率贝叶斯分类器来解决。以1p 与2p 分别表示目标与背景的灰度分布概率密度函数,1P 与2P 分别表示两类的先验概率,则图像的混合概率密度函数可用下式表示为

sql大作业实验报告

目录 第一章、需求分析 (2) 1 、需求概述 (2) 2 、功能简介 (2) 第二章、概念结构设计 (3) 1、在员工实体内的E-R图 (3) 2、部门实体内的E-R图 (3) 3、在工资实体内的E-R图 (3) 第三章、逻辑结构设计 (4) 第四章、物理结构设计 (4) 第五章、数据库的实施和维护 (5) 一、数据库的创建 (5) 二、表格的建立 (5) 1、建立Employsse表插入数据并设计相关的完整性约束 (5) 2、建立departments表插入数据并设计相关的完整性约束 (7) 3、建立 salary表插入数据并设计相关的完整性约束 (8) 三、建立视图 (9) 四、建立触发器 (10) 五、建立自定义函数 (12) 六、建立存储过程 (13) 第六章、总结 (14)

第一章、需求分析 1 、需求概述 针对现代化公司管理情况,员工管理工作是公司运行中的一个重环节,是整个公司管理的核心和基础。它的内容对于公司的决策者和管理者来说都至关重要,所以公司管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件工籍,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 公司员工管理系统借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性。 能够进行数据库的数据定义、数据操纵、数据控制等处理功能,进行联机处理的相应时间要短。 具体功能包括:系统应该提供员工数据的插入、删除、更新、查询;员工基本信息查询的功能。 2 、功能简介 员工管理系统它可以有效的管理员工信息情况。具体功能有以下几个方面。基本信息的添加,修改,删除和查询。学生信息管理包括添加、查看学生列表等功能。

模式识别作业(全)

模式识别大作业 一.K均值聚类(必做,40分) 1.K均值聚类的基本思想以及K均值聚类过程的流程图; 2.利用K均值聚类对Iris数据进行分类,已知类别总数为3。给出具体的C语言代码, 并加注释。例如,对于每一个子函数,标注其主要作用,及其所用参数的意义,对程序中定义的一些主要变量,标注其意义; 3.给出函数调用关系图,并分析算法的时间复杂度; 4.给出程序运行结果,包括分类结果(只要给出相对应的数据的编号即可)以及循环 迭代的次数; 5.分析K均值聚类的优缺点。 二.贝叶斯分类(必做,40分) 1.什么是贝叶斯分类器,其分类的基本思想是什么; 2.两类情况下,贝叶斯分类器的判别函数是什么,如何计算得到其判别函数; 3.在Matlab下,利用mvnrnd()函数随机生成60个二维样本,分别属于两个类别(一 类30个样本点),将这些样本描绘在二维坐标系下,注意特征值取值控制在(-5,5)范围以内; 4.用样本的第一个特征作为分类依据将这60个样本进行分类,统计正确分类的百分 比,并在二维坐标系下将正确分类的样本点与错误分类的样本点用不同标志(正确分类的样本点用“O”,错误分类的样本点用“X”)画出来; 5.用样本的第二个特征作为分类依据将这60个样本再进行分类,统计正确分类的百分 比,并在二维坐标系下将正确分类的样本点与错误分类的样本点用不同标志画出来; 6.用样本的两个特征作为分类依据将这60个样本进行分类,统计正确分类的百分比, 并在二维坐标系下将正确分类的样本点与错误分类的样本点用不同标志画出来; 7.分析上述实验的结果。 8.60个随即样本是如何产生的的;给出上述三种情况下的两类均值、方差、协方差矩 阵以及判别函数; 三.特征选择(选作,15分) 1.经过K均值聚类后,Iris数据被分作3类。从这三类中各选择10个样本点; 2.通过特征选择将选出的30个样本点从4维降低为3维,并将它们在三维的坐标系中

Java程序设计大作业实验报告

目录 一、前言 (2) 二、需求分析 (3) 三、系统总体设计 (3) 3.1系统总体设计系统思路 (3) 3.2数据库设计 (4) 3.2.1 login1表的设计和数据 (4) 3.2.2 student表的设计和数据 (5) 3.2.3 course表的设计和数据 (5) 3.2.4 score表的设计和数据 (6) 3.3系统功能模块设计 (6) 四、系统详细设计 (7) 4.1登录模块 (7) 4.2 学生模块 (7) 4.3 教师模块 (8) 4.4 管理员模块 (8) 五、系统测试及运行结果 (9) 5.1 主界面 (9) 5.2 学生管理中心界面 (9) 5.3 教师管理中心界面 (10) 5.4 管理员管理中心界面 (10) 5.5 查询课表界面 (11) 5.6 查询成绩界面 (11) 5.7 查询教学情况界面 (11) 5.8 查询所有学生成绩界面 (12) 5.9 学生信息管理界面 (12) 5.10 学生成绩管理界面 (13) 5.11 用户管理界面 (13) 六、实验总结 (14) 七、参考文献 (14)

一、前言 随着计算机在人们生活中的普及和网络时代的来临,对信息的要求日益增加,学生信息管理业务受到了较为强烈的冲击,传统的手工管理方式传统的手工管理方式已不能适应现在的信息化社会。如何利用现有的先进计算机技术来解决学生信息管理成为当下的一个重要问题,学生信息管理系统是典型的信息管理系统,其开发主要就是针对前台的页面展示以及后台数据的管理。对于前者,要求应用程序功能完备,易于使用,界面简单;而对于后者,则要求数据库具有一致性、完整性,并能够依据前台的操作来对应操作后台数据库达到一定的安全性。 本学生信息管理系统主要采用的纯JAVA代码实现图形界面系统的开发,以及数据库知识进行数据的查询,删除,插入和更新。本系统主要分为三个部分:学生模块、教师模块、管理员模块。其中学生模块实现的功能:查询课表信息和查询成绩。教师模块实现的功能:查询课表信息、查询教学情况和查询所有学生的各科成绩。管理员模块实现的功能:课表信息的管理、学生信息管理、学生成绩管理和用户信息管理。

计算智能大作业.

题目:遗传算法在图像处理中的应用研究课程: 计算智能 姓名: 学号: 专业:模式识别与智能系统

遗传算法在图像处理中的应用 摘要 遗传算法是一种基于生物自然选择与遗传机理的随机搜索与优化方法。近年来,由于遗传算法求解复杂优化问题的巨大潜力,广泛应用在生物信息学、系统发生学、计算科学、工程学、经济学、化学、制造、数学、物理、药物测量学和其他领域之中,这种算法受到了国内外学者的广泛关注,尤其是在计算机科学人工智能领域中。本文介绍了遗传算法基本理论,描述了它的主要特点和基本性质;重点综述遗传算法在图像处理中的主要应用,特别是在图像分割、图像压缩、图像增强等方面的作用;深入研究目前遗传算法在图像处理领域中存在的问题,并结合自己的研究方向,对这些问题提出了一些深刻的见解,展望了今后遗传算法在图像处理应用的发展方向。 关键词:遗传算法,数字图像处理

1.背景介绍 遗传算法(Genetic Algorithm,GA)是一种自适应启发式群体型概率性迭代式的全局收敛搜索算法,其基本思想来源于生物进化论和群体遗传学,体现了适者生存、优胜劣汰的进化原则。使用遗传算法求解科学研究工作和工程技术中各种组合搜索和优化计算问题这一基本思想早在20世纪60年代初期就由美国Michigan大学的Holland教授提出,其数学框架也于20世纪60年代中期形成。由于GA的整体搜索策略和优化计算不依赖于梯度信息,所以它的应用范围非常广泛,尤其适合于处理传统方法难以解决的高度复杂的非线性问题。它在自适应控制、组合优化、模式识别、机器学习、规划策略、信息处理和人工生命等领域的应用中越来越展示出优越性。 图像处理(image processing),用计算机对图像进行分析,以达到所需结果的技术。又称影像处理。图像处理一般指数字图像处理。数字图像是指用数字摄像机、扫描仪等设备经过采样和数字化得到的一个大的二维数组,该数组的元素称为像素,其值为一整数,称为灰度值。图像处理技术的主要内容包括图像压缩,增强和复原,匹配、描述和识别3个部分。常见的处理有图像数字化、图像编码、图像增强、图像复原、图像分割和图像分析等。图像处理一般指数字图像处理。图像处理是计算机视觉中德一个重要研究领域,然而,在图像处理过程中,如扫描、特征提取、图像分割等不可避免地会存在一些误差,从而影响图像的效果。于是,研究者就开始探索怎么样才能使这些误差最小从而使计算机视觉达到实用化的重要要求,最终,遗传算法凭借其在这些图像处理中的优化计算方面独特的优势成为各种算法的佼佼者,得到了广泛的应用。 2.遗传算法的原理和基本步骤 遗传算法是一个不断迭代过程的搜索算法,它的基本处理流程如下图所示。

神经网络大作业

神经网络的基本特征及其在战斗识别领域的应用前景简介 —神经网络原理及应用报告 课程名称:神经网络原理及应用 课程编号: 指导教师: 学院: 班级: 姓名: 学号: 日期:

神经网络的基本特征及其在战斗识别领域的应用前景简介 摘要:在未来的军事对抗上,对军事打击的物理距离越来越大,对打击的反应时间的要求越来越短,对打击的精度要求越来越高。在这种情况下,迅速且精确的敌我识别系统显得尤其重要。传统的战斗识别方式早已遇到了瓶颈,而神经网络因为它在信息、信号处理、模式识别方面有些独到之处,近年来受到各国军界的普遍重视。 关键词:军事,战斗识别,模式识别,敌我识别,神经网络 1 引言 众多科学家预言,21世纪将是“生物”世纪。这说明生物学的研究和应用已进入了空前繁荣的时代。神经网络系统理论就是近十多年来受其影响而得到飞速发展的一个世界科学研究的前沿领域。这股研究热潮必然会影响到军事技术的研究。在现代战争中,因为远程制导武器的广泛应用,绝大多数军事打击都不再依靠肉眼来辨析敌我,战场上的敌我识别变成了一个重要的问题。据统计,1991年的海湾战争期间,美军与友军之间的误伤比例高达24%;在伊拉克战争期间,共发生17起误伤事件,死18人,伤47人。两场战争的伤亡结果表明,单一的敌我识别武器已不能适应现代战争复杂的作战环境和作战要求。所以提高军队战斗识别的效率是现代军事科技研究中一个极其重要的课题。神经网络作为新的热门技术,必然受到军事研究学者们的青睐。本文只选取战斗识别这一领域,简要探讨神经网络技术在战斗识别领域中的应用前景,但求管中一窥,抛砖引玉。 2 神经网络简介 2.1 神经网络的历史 神经网络的研究可以追溯到上个世纪的1890年。但真正展开神经网络理论研究却始于本世纪40年代。1943年,有心理学家McCulloch和数学家Pitts合作提出了形式神经元的数学模型——MP模型,从此开创了神经网络理论研究的新时代。MP模型以集体并行计算结构来描述神经网络及网络的运行机制,可完成有限的逻辑运算。 1949年,Hebb通过对大脑神经的细胞、人的学习行为和条件反射等一系列

虚拟仪器大作业实验报告

东南大学生物科学与医学工程学院 虚拟仪器实验报告 大作业 实验名称:基于MIT-BIH心率失常数据库的心电信号系统的设计专业:生物医学工程 姓名:学号: 同组人员:学号: 实验室: 综合楼716 实验时间:2013/11/28 评定成绩:审阅教师:

目录 一.实验目的 二.实验内容 基于MIT-BIH心率失常数据库的心电信号系统的设计 1.实验要求和说明 2.程序设计流程图 3.程序各版块介绍说明 4.前面板的设计 5.调试过程 6.结果及分析 三.实验收获及小结 四.参考文献

一.实验目的 现代医学表明,心电信号(ECG)含有临床诊断心血管疾病的大量信息,ECG的检测与分析在临床诊断中具有重要价值,是了解心脏的功能与状况、辅助诊断心血管疾病、评估各种治疗方法有效性的重要手段。 本次大作业利用具有直观图形化编程和强大数字信号处理功能的虚拟仪器编程语言LabVIEW作为开发平台,设计一个基于虚拟仪器的简单心电信号分析系统,该系统具有心电信号的读取,处理分析,波形显示、心率显示及报警,波形存储和回放等功能。 二.实验内容 1.实验内容及要求 基于MIT-BIH心率失常数据库的心电信号系统的设计 1. 本次大作业所用原始信号是从MIT-BIH(Massachusettes Institute of and Beth Israel Hospital,美国麻省理工学院和波士顿贝丝以色列医院)心率数据库(https://www.360docs.net/doc/ae18609014.html,/physiobank/database/mitdb/)中选取心电信号作为实验分析的数据。设计的系统要求对原始心电信号进行读取、绘制出其时域波形,利用原始心电数据中的时间数据控制显示时间,并具有保存回放功能,同时具有心率过快或过缓报警提示功能。 2. 心电信号是微弱低频生理电信号,通常频率在0.05Hz~100Hz,幅值不超过 4mV,它通过安装在皮肤表面的电极来拾取。由于实际检测工况的非理想,在ECG 信号的采集过程中往往会受到工频噪声及电极极化等各种随机噪声的影响。噪声的存在降低了诊断的准确性。其中影响最大的是工频干扰和基线漂移噪声。因此,在ECG 信号检测过程中,如何抑制工频干扰和基线漂移等是必须解决的问题。要求选择并设计合适的滤波器,除去所给心电信号的工频干扰和基线漂移。 3. 检测心率:检测信号心电的R波,计算平均心率和实时心率(R-R波时间间隔 的倒数),并显示实时心率和平均心率。 4. 对任一路心电信号滤波前后的信号进行时域分析和频谱分析,分别显示出结 果。

《模式识别》大作业人脸识别方法

《模式识别》大作业人脸识别方法 ---- 基于PCA 和欧几里得距离判据的模板匹配分类器 一、 理论知识 1、主成分分析 主成分分析是把多个特征映射为少数几个综合特征的一种统计分析方法。在多特征的研究中,往往由于特征个数太多,且彼此之间存在着一定的相关性,因而使得所观测的数据在一定程度上有信息的重叠。当特征较多时,在高维空间中研究样本的分布规律就更麻烦。主成分分析采取一种降维的方法,找出几个综合因子来代表原来众多的特征,使这些综合因子尽可能地反映原来变量的信息,而且彼此之间互不相关,从而达到简化的目的。主成分的表示相当于把原来的特征进行坐标变换(乘以一个变换矩阵),得到相关性较小(严格来说是零)的综合因子。 1.1 问题的提出 一般来说,如果N 个样品中的每个样品有n 个特征12,,n x x x ,经过主成分分析,将 它们综合成n 综合变量,即 11111221221122221122n n n n n n n nn n y c x c x c x y c x c x c x y c x c x c x =+++?? =+++?? ? ?=+++? ij c 由下列原则决定: 1、i y 和j y (i j ≠,i,j = 1,2,...n )相互独立; 2、y 的排序原则是方差从大到小。这样的综合指标因子分别是原变量的第1、第2、……、 第n 个主分量,它们的方差依次递减。 1.2 主成分的导出 我们观察上述方程组,用我们熟知的矩阵表示,设12n x x X x ??????= ?????? 是一个n 维随机向量,12n y y Y y ??????=?????? 是满足上式的新变量所构成的向量。于是我们可以写成Y=CX,C 是一个正交矩阵,满足CC ’=I 。 坐标旋转是指新坐标轴相互正交,仍构成一个直角坐标系。变换后的N 个点在1y 轴上

数据库设计大作业

《数据库原理》课程大作业数据库设计与应用开发 课题名称:实验教学管理数据库设计 学号: 101530518 姓名:庞彪 专业年级: 10 级软工四班 成绩:

内容与要求 1. 请结合软件类专业课程实验教学环节设计数据库,实现实验教学的有效管理,具体功能应包括但不限于: (1)教师可以根据不同课程编辑和发布实验内容; (2)学生可以浏览实验内容,同时完成作品的提交; (3)学生可以在规定时间内填写、修改和提交实验报告; (4)教师可以通过应用系统批改实验报告,并提交成绩; (5)学生可以查询个人实验成绩; 2. 给出数据库设计各个阶段的详细设计报告,包括: (1)需求分析 (2)概念结构设计 (3)逻辑结构设计 (4)物理结构设计与实施 3. 写出应用系统的主要功能设计; 4. 写出收获和体会,包括已解决和尚未解决的问题,进一步完善的设想和建议; 5. 独自完成作业,有雷同的平分得分; 6. 也可以自行设计课题。

目录 1 绪论 (1) 2 应用系统功能设计 (2) 2.1 业务操作流程 (3) 2.2 系统功能设计 (3) 3 数据库设计 (4) 3.1 需求分析 (4) 3.2 概念结构设计 (7) 3.3 逻辑结构设计 (7) 3.4 物理结构设计与实施 (9) 4 结束语 (9) 4.1 收获和体会 (9) 4.2 总结与展望 (10)

1 绪论 在日常实验教学过程中,我们会遇到一些各种各样的问题,为了方便广大师生,提高教学效率,我们需要设计一种实验教学管理系统数据库软件,加强教师与学生之间的互动,实现信息化的现代化教育模式。 首先面临的问题是怎样实现教师安排学生进行实验的地点和时间。在遭遇不可预知因素时(例如:停电,教师请假,学生请假,学生设备损坏等),能够使师生交流如何解决这些特殊情况,将实验正常的进行。 其次教师可以利用该软件根据实际情况(如:不同课程等)编辑和发布实验内容,这些实验内容将保存下来,当进行教学评估时能够及时的将其任意内容调用出来。教师也能够对发布过的实验内容进行修改,但学生没有修改的权限。 第三,学生可以通过软件浏览实验当天教师发布的实验内容,也可以查找之前进行过的实验。当实验完成后,学生可以通过该系统进行作业的提交,每个学生只能提交一次作业。学生可以在规定的时间内填写、修改和提交实验报告,如果学生超过规定时间想要修改实验内容,需要向教师申请权限。 第四,教师能够通过该系统查收学生上交的实验报告,对所有的实验报告具有修改其内容的权利。对每个学生的实验成绩进行评估后,教师可以通过该系统提交各个学生的实验成绩,系统将这些内容存储到对应的学生档案数据中,如果出现提交错误的情况:如果在提交当天发现提交错误成绩,教师可以直接对成绩进行修改重新提交;否则教师与学生(成绩错误)需要向教务处申请复查成绩,核实情况后进行修改。 最后,学生可以通过该系统进行个人实验成绩的查询,当发现成绩有误时,可以通过该软件向教师申请成绩复查,教师收到成绩复查请求后,经过核实情况,如果情况属实,则向教务处提交成绩修改请求,核实情况后进行成绩的修改。 该实验教学管理系统最终目的是实现快捷的教学内容安排,方便的学生成绩查询,加强师生互动,最终达到提高教学效率和质量,构建信息化和谐教学模式。

华南理工大学《模式识别》大作业报告

华南理工大学《模式识别》大作业报告 题目:模式识别导论实验 学院计算机科学与工程 专业计算机科学与技术(全英创新班) 学生姓名黄炜杰 学生学号201230590051 指导教师吴斯 课程编号145143 课程学分2分 起始日期2015年5月18日

实验概述 【实验目的及要求】 Purpose: Develop classifiers,which take input features and predict the labels. Requirement: ?Include explanations about why you choose the specific approaches. ?If your classifier includes any parameter that can be adjusted,please report the effectiveness of the parameter on the final classification result. ?In evaluating the results of your classifiers,please compute the precision and recall values of your classifier. ?Partition the dataset into2folds and conduct a cross-validation procedure in measuring the performance. ?Make sure to use figures and tables to summarize your results and clarify your presentation. 【实验环境】 Operating system:window8(64bit) IDE:Matlab R2012b Programming language:Matlab

模式识别实验报告(一二)

信息与通信工程学院 模式识别实验报告 班级: 姓名: 学号: 日期:2011年12月

实验一、Bayes 分类器设计 一、实验目的: 1.对模式识别有一个初步的理解 2.能够根据自己的设计对贝叶斯决策理论算法有一个深刻地认识 3.理解二类分类器的设计原理 二、实验条件: matlab 软件 三、实验原理: 最小风险贝叶斯决策可按下列步骤进行: 1)在已知 ) (i P ω, ) (i X P ω,i=1,…,c 及给出待识别的X 的情况下,根据贝叶斯公式计 算出后验概率: ∑== c j i i i i i P X P P X P X P 1 ) ()() ()()(ωωωωω j=1,…,x 2)利用计算出的后验概率及决策表,按下面的公式计算出采取i a ,i=1,…,a 的条件风险 ∑== c j j j i i X P a X a R 1 )(),()(ωω λ,i=1,2,…,a 3)对(2)中得到的a 个条件风险值) (X a R i ,i=1,…,a 进行比较,找出使其条件风险最小的 决策k a ,即()() 1,min k i i a R a x R a x == 则 k a 就是最小风险贝叶斯决策。 四、实验内容 假定某个局部区域细胞识别中正常(1ω)和非正常(2ω)两类先验概率分别为 正常状态:P (1ω)=; 异常状态:P (2ω)=。 现有一系列待观察的细胞,其观察值为x : 已知先验概率是的曲线如下图:

)|(1ωx p )|(2ωx p 类条件概率分布正态分布分别为(-2,)(2,4)试对观察的结果 进行分类。 五、实验步骤: 1.用matlab 完成分类器的设计,说明文字程序相应语句,子程序有调用过程。 2.根据例子画出后验概率的分布曲线以及分类的结果示意图。 3.最小风险贝叶斯决策,决策表如下: 结果,并比较两个结果。 六、实验代码 1.最小错误率贝叶斯决策 x=[ ] pw1=; pw2=; e1=-2; a1=; e2=2;a2=2; m=numel(x); %得到待测细胞个数 pw1_x=zeros(1,m); %存放对w1的后验概率矩阵 pw2_x=zeros(1,m); %存放对w2的后验概率矩阵

云南大学数据库期末大作业:数据库设计

云南大学软件学院实验报告 课程:数据库原理与实用技术实验学期:任课教师: 专业:学号:姓名:成绩: 期末大作业:Electronic Ventor 数据库设计 一、实验目的 (1)掌握数据库设计的基本方法 (2)掌握各种数据库对象的设计方法 (3)熟练掌握DBA必须具备的技能 二、实验内容 1、根据项目的应用和项目的需求说明文档,进行详细的需求分析,给出需求分析的结果。 (1)客户可以在网站上注册,注册的客户要提供客户的姓名、电话、地址,以方便售后和联系,姓名即作为用户名,和密码一起用于注册和登录,客户编号可唯一识别用户,卡号可网上支付。其中地址、电话以方便联系和寄货; (2)网站管理员可以登记各种商品,供客户查询,订购。登记商品时要提供商品的名称、价格,商店中现有商品量,商品编号可唯一识别商品; (3)类别表示商品所属类别,类别编号可唯一识别类别,其中包含了,商品类别名称和制造厂商,可以对商品进行分类售卖; (4)客户可以在网上下订单,也可以到实体店购物,其在订单上所选择的支付方式不同(信用卡、借记卡、现金,现金代表实体店购物),网站管理员可以查看订单,并及时将订单的处理情况更新(比如货物已寄出的信息,订单状态:0:未处理,1:已处理,2:已发货);订单编号可唯一识别订单,订单中包含订单产生时间,订单状态,支付方式和支付总额; (5)实体商店有自己的店名,卖多种商品,每个商店都有固定的地址,顾客可以到店中买商品,(注:在实体店中购买商品的顾客一律将顾客名默认为佚名),当商店中的库存量小于10时会有提醒到仓库中拿货; (6)配送单中包含查询号可唯一识别配送单,配送人,联系方式; (7)仓库中仓库编号可唯一识别仓库,其中每个仓库都有区号,代表其地址。 (8)各实体间关系 1)一个客户可以购买多种商品,一种商品可以被多个客户购买; 2)一个商品属于且仅属于一种类别,一种类别的商品可以包含多个商品或没有; 3)一种商品放在多个商店中销售,一个商店至少销售一种或销售多种商品; 4)一个订单对应一个客户,一个客户对应多个订单; 5)一个订单对应至少有一件商品或多件,一个商品对应多个订单; 6)一个订单可以有一个商品配送单 7)一个仓库可以存放多种商品,一种商品可以存放在一个仓库;

相关文档
最新文档