《MATLAB图像处理超级学习手册》一一2.1 矩阵的创建

简介:

本节书摘来自异步社区出版社《MATLAB图像处理超级学习手册》一书中的第2章,第2.1节,作者:MATLAB技术联盟 , 张岩 更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.1 矩阵的创建

MATLAB图像处理超级学习手册
在MATLAB中,矩阵是进行数据处理和运算的基本元素,矩阵的创建方法主要有4种:直接输入法、利用M文件建立矩阵、利用其他文本编辑器建立矩阵、利用MATLAB内置函数建立矩阵。下面将对这些方法进行介绍。

2.1.1 直接输入法
从键盘直接输入矩阵的元素是最简单的建立矩阵的方法:将矩阵的元素用方括号括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用空格或逗号分隔,不同行的元素之间用分号分隔。

在此方法下创建矩阵需要注意以下规则:

(1)矩阵元素必须在“[ ]”内;

(2)矩阵的同行元素之间用空格(或“,”)隔开;

(3)矩阵的行与行之间用“;”(或回车符)隔开。

【例2-1】下面的例子是用直接输入的方法来创建矩阵的。

>> A=[1 21 3;42 5 6;7 8 91]
A =
   1  21   3
  42   5   6
   7   8  91

也可以写成以下的格式:

>> B=[3  5  6;
  23 56 78;
  99 87  1]
B =
   3   5   6
  23  56  78
  99  87   1

2.1.2 利用M文件建立矩阵
在MATLAB中,可以利用系统自带的文本编辑调试器专门建立一个M文件。

启动有关编辑程序或MATLAB文本编辑器,并输入待建矩阵,例如:

A=[13 21 56;42 5 80;7 76 91]

把输入的内容以纯文本方式存盘(设文件名为mymatrix.m)。

在MATLAB命令窗口中输入mymatrix:

>> mymatrix
A =
  13  21  56
  42   5  80
   7  76  91

运行该M文件,就会自动建立一个名为MYMAT的矩阵,可供以后使用。

2.1.3 利用其他文本编辑器建立矩阵
在MATLAB中,也可以利用其他文本编辑器来创造矩阵。例如,编辑一个文本文件:

16.0   3.0   2.0    9.0
5.0   10.0   11.0   8.0
9.0   6.0    7.0    12.0
4.0   15.0   14.0   1.0

将该文本装入dat或txt等格式的文件。

如果需要该文件,可以在命令窗口输入:

>> load mymatrix.dat 
或
>> load mymatrix.txt

【例2-2】读取矩阵文件trees.tif。

clear all;
load trees
image(X)

运行结果如图2-1所示。

2.1.4 利用MATLAB内置函数建立特殊矩阵
在MATLAB中,系统内置函数可以用于建立特殊矩阵,通过这些函数,可以很方便地得到想要的特殊矩阵。系统内置创建特殊矩阵的函数如表2-1所示。

image

【例2-3】利用几种系统内置特殊函数来创建矩阵。

>> Z = zeros(5,4)% 产生5×4全为0的矩阵
Z =
   0   0   0   0
   0   0   0   0
   0   0   0   0
   0   0   0   0
   0   0   0   0
>> Z = ones (5,4)% 产生5×4全为1的矩阵
Z =
   1   1   1   1
   1   1   1   1
   1   1   1   1
   1   1   1   1
   1   1   1   1
>> Z = eye (5,4)% 产生5×4的单位矩阵
Z =
   1   0   0   0
   0   1   0   0
   0   0   1   0
   0   0   0   1
   0   0   0   0
>> rand (5,4)% 产生5×4的在(0,1)区间均匀分布的随机阵
ans =
  0.9572  0.9157  0.8491  0.3922
  0.4854  0.7922  0.9340  0.6555
  0.8003  0.9595  0.6787  0.1712
  0.1419  0.6557  0.7577  0.7060
  0.4218  0.0357  0.7431  0.0318
>> randn(5,4) % 产生5×4的均值为0,方差为1的标准正态分布随机矩阵
ans =
  -1.0689  -0.7549  0.3192  0.6277
  -0.8095  1.3703  0.3129  1.0933
  -2.9443  -1.7115  -0.8649  1.1093
  1.4384  -0.1022  -0.0301  -0.8637
  0.3252  -0.2414  -0.1649  0.0774
>> hilb(3) % 产生3维的Hilbert阵
ans =
  1.0000  0.5000  0.3333
  0.5000  0.3333  0.2500
  0.3333  0.2500  0.2000
>> Z = magic(3) % 产生3阶的魔方阵
Z =
   8   1   6
   3   5   7
   4   9   2
相关文章
|
7月前
OFDM深入学习及MATLAB仿真(二)
OFDM深入学习及MATLAB仿真
283 1
|
7月前
|
编解码 网络协议 前端开发
OFDM深入学习及MATLAB仿真(一)
OFDM深入学习及MATLAB仿真
805 1
|
7月前
|
索引
matlab--------矩阵重构,重新排列的相关函数说明
matlab--------矩阵重构,重新排列的相关函数说明
186 0
matlab--------矩阵重构,重新排列的相关函数说明
|
7月前
|
索引
matlab日常学习-------矩阵
matlab日常学习-------矩阵
73 0
|
2月前
|
Serverless
MATLAB中的矩阵与向量运算
【10月更文挑战第2天】本文全面介绍了MATLAB中的矩阵与向量运算,包括基本操作、加减乘除、转置、逆矩阵、行列式及各种矩阵分解方法。通过丰富的代码示例,展示了如何利用矩阵运算解决线性方程组、最小二乘法拟合、动态系统模拟和电路分析等问题。掌握这些运算不仅提升编程效率,还能在工程计算和科学研究中发挥重要作用。
62 1
|
7月前
|
机器学习/深度学习 数据安全/隐私保护 计算机视觉
matlab学习(二)
matlab学习(二)
|
4月前
|
计算机视觉
【图像处理】基于灰度矩的亚像素边缘检测方法理论及MATLAB实现
基于灰度矩的亚像素边缘检测方法,包括理论基础和MATLAB实现,通过计算图像的灰度矩来精确定位边缘位置,并提供了详细的MATLAB代码和实验结果图。
103 6
|
4月前
|
计算机视觉
【图像处理】基于Zernike矩的亚像素边缘检测理论及MATLAB实现
基于Zernike矩的亚像素边缘检测理论,并提供了相应的MATLAB代码实现,包括定义7x7的Zernike模板、图像处理、边缘检测和连通域分析等步骤。
112 1
|
6月前
|
机器学习/深度学习 存储 移动开发
MATLAB数据类型和运算符+矩阵创建
MATLAB数据类型和运算符+矩阵创建
64 1
|
6月前
|
机器学习/深度学习 数据可视化 算法
探索MATLAB世界:掌握基础知识与实用技能(1. MATLAB环境与基本操作 2. 数据类型与变量 3. 条件与循环,1. 数据分析与统计 2. 图像处理与计算机视觉 3. 信号处理与控制系统)
探索MATLAB世界:掌握基础知识与实用技能(1. MATLAB环境与基本操作 2. 数据类型与变量 3. 条件与循环,1. 数据分析与统计 2. 图像处理与计算机视觉 3. 信号处理与控制系统)
54 0

热门文章

最新文章