模式识别讲义

2020-02-22 14:24

模式识别实验讲义

目 录

MATLAB 基础 ...................................... 1 实验一 感知器算法实验 ............................ 6 实验二 模式聚类算法实验 .......................... 8 实验三 图像识别实验 ............ 错误!未定义书签。1

MATLAB 基础

1.矩阵定义

由m行n列构成的数组称为(m×n)阶矩阵。

用\方括号定义矩阵,其中方括号内\逗号或\空格号分隔矩阵列数值, \分号或\回车键分隔矩阵行数值。 例:a=[a11 a12 a13;a21 a22 a23]或a=[a11,a12,a13;a21,a22,a23]定义了一个2*3阶矩阵a。 a=

a11 a12 a13 a21 a22 a23

aij可以为数值、变量、表达式或字符串,如为数值与变量得先赋值,表达式和变量可以以任何组合形式出现,字符串须每一行中的字母个数相等 ,调用时缺省状态按行顺序取字母,如a(1)为第一行第一个字母。

下标引用:

单下标方式:a(1)= a11 a(4)= a22 (以列的方式排列a11 a21 a12 a22 a13

a23)

双下标方式:a(1,1)= a11 a(2,1)= a21

2.矩阵的加减运算

两矩阵相加减,是对应元素的加减,要求两矩阵具有相同的行数,相同的列数。 MATLAB表达式形式:C=A+B 和 C=A-B ,其中Cij=Aij±Bij。

3 向量乘积和转置

两矩阵A,B相乘,要求两个矩阵的相邻阶数相等,一般情况下不满足交换律。MATLAB表达式形式:C=A*B 其中第i行j列元素Cij为A的第i行的m个元素与B的第j列的n个对应元素的乘积之和。

矩阵的转置就是把矩阵的第I行就j列的元素放在第j行第i列的位置上。在MATLAB中,对于实矩阵的转置用单引号“’”表示:C=A’。

4 图像文件操作

imread()函数从图像文件中读入图像数据, 格式:A=imread(文件名,‘图像文件格式’) 如:A=imread(“lena.bmp”,’bmp’)

A 为无符号8位整数(unit8)。如果文件为灰度函数,则A为一个二维数组,如果文件是一个真彩色RGB图像,则A是一个三维数组(m×n×3)。

imwrite()函数将图像写入图像文件

格式:imwrite(A,文件名,‘图像文件格式’)

1

如:imwrite(A,“lenabak.bmp”,‘bmp’)

imwrite函数将变量A中图像按‘图像文件格式’指定的保存格式写入文件名指定的文件中。如果A是一个无符号8位整数表示的灰度图像或真彩色图像,imwrite直接将数组A中值写入文件。如果A为双精度浮点数,imwrite首先使用uint8(round(255*A))自动将数组中的值变换为无符号8位整数,即将[0,1]范围内的浮点数变换为[0,255]范围内8位整数,然后写入文件。

5 图像显示

imshow()函数用于图像显示 格式:imshow(I,n) imshow(I,[low,high])

格式1,imshow函数可使用n个灰度级显示灰度图像I。如果缺省n,则使用256级灰度。

格式2,imshow函数可将I显示为灰度图像,灰度级范围为[low,high]。

6 MATLAB的M文件

MATLAB中的M文件实际上就是一个由一些MATLAB所允许的语句组成的批处理文件。它是一个ASCII码文本文件,所有文本编辑器都可对它进行编辑,但一般我们在MATLAB的集成环境中编辑修改并运行。

在MATLAB的命令主窗口中点击File->New->M-file,即可打开如图A-3所示的MATLAB编辑/调试窗口。根据用户需要键入MATLAB各种命令语句,即可完成系统M文件的输入。注意%后的内容为注释内容。

程序控制:

(1) for 循环语句 格式如下:

for t=表达式1:表达式2:表达式3 语句体 end

其中,表达式1的循环的初值,表达式2的值为步长,表达式3的值为循环的终值。如果表达式2省略,则默认步长为1。 例: for n=1:5 for m=1:n

r(n,m)= m*n end end

(2)while 循环语句 格式如下: while 表达式 语句体

2

end

当表达式的值为真时,执行语句体;当表达式的值为假时,终止该循环。

(3)if 条件判断语句 格式如下: if 逻辑表达式1 语句体1

elseif逻辑表达式2 语句体2

elseif逻辑表达式3 语句体3 ?? else 语句体 end

(4)switch 语句 switch 表达式 case 值1 语句体1 case 值2 语句体2 ?? otherwise 语句体 end

(5)子函数

每个函数文件可以包含多个函数。在函数文件的第一行定义的函数为主函数,当调用文件名时,调用主函数。在函数文件中,除第一行定义的函数外,其余的函数称为子函数。子函数只能被该文件里的其他函数和主函数调用。 function output = fact(n)

% FACT Calculate factorial of a given positive integer. output = 1; for i = 1:n,

output = output*i; end

(6)MATLAB中的运算符和特殊字符说明 符号 + - .* * ^ 符号用途说明 加 减 点乘 详细说明help arith 矩阵相乘 矩阵求幂 3


模式识别讲义.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:K5B计算机联锁系统 基本操作与维护

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: