Matlab基础--郑州大学
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
^
矩阵(Matrix)乘方,(?与按照矩阵乘法一次次算的结果相同)①当x是矩阵,p是标 量时,如有[V,D]=eig(x),则有x^p=V*D.^p/V②当x是标量,p是矩阵时,x^p将根据p的特 mpower(A,B) 征值和特征向量计算标量x的矩阵幂 矩阵转置
Байду номын сангаас
‘
Matlab标点符号
名称 空格 逗号 点号 分号 冒号 注释 , . ; : % 标点 功能 不同输入量之间的分隔符,数组元素分隔符 指令分隔符,显示结果,输入量之间的分割符,数组元素分隔符 数值中的小数点 不同指令间的分隔符,不显示结果,数组行间分隔符 用于生成一维数组,下标引用时,表示维上的全部 它后面的内容为非执行的注释内容
Matlab为科学研究、工程设计以及必须进行有效数值计 算的众多科学领域提供了一种全面的解决方案,幵在很 大程度上摆脱了传统非交互式程序设计语言(如C、 Fortran)的编辑模式,代表了当今国际科学计算软件的 先进水平。
Matlab窗口简介
命令窗口(Command window): MATLAB的主要交互窗口。用 于输入MATLAB 命令、函数、数组、表达式等信息,并显示 图形以外的所有计算结果。 工作空间窗口(Workspace Window):用于储存各种变量和结 果的空间,又称为内存浏览器,用于显示变量的名称、大小、 字节数及数据类型,对变量进行观察、编辑、保存和删除。 当前目录浏览器(Current Directory ):用于显示及设置当前工 作目录,同时显示当前工作目录下的文件名、文件类型及目录 的修改时间等信息。 命令历史窗口(Command History):记录已运行过的所有的 MATLAB命令历史,包括已输入和运行过的命令、函数、表达 式等信息。
int16
int32 single char logical
16位有符号整数,范围-32 768~32 767。占用内存空间2字节
32位有符号整数,范围-2 147 483 648~2 147 483 647。占用4字节 字符型变量,占用2字节 布尔型变量,占用1字节。也可使用boolean,与logical等效
4.函数式M文件中,变量都是局部变量; 脚本式M文件中,变量都是全局变量
数据文件I/O
支持mat文件,文本文件,音视频文件,图像,表格等的读写,仅调用 相应函数即可,操作十分方便。见表格 如: %产生100*2随机矩阵 dates=rand(100,2); xlswrite(„wf.xlsx‟,dates);%向excel表格中写数据 %往表格2中写,还可指定行列如B1:C100 xlswrite(„wf.xlsx‟,dates,„Sheet2‟);
图像处理初步
Matlab图像转换: rgb图转换为灰度:rgb2gray 创建二值图:im2bw 等
图像基本操作: 1.读取图像:A=imread(Filename,FMT);%FMT为图像扩展 名 2.写入图像:imwrite(A,MAP,Filename,FMT)%MAP是合法的 Matlabb颜色索引表 3.显示图像:imshow
单引号对 '
圆括号 续行号 () …
字符串记述符
数组元素引用符 表示下一行为本行的续行
趣味Matlab
1.囧函数 q=[-3:0.01:3]; r=1./(q.^2-1); plot(q,r); axis([-3 3 -3 3]); %%限定坐标范围 2.足球: %%足球 % Define the variables. [B,V] = bucky; H = sparse(60,60); k = 31:60; H(k,k) = B(k,k); % Visualize the variables. gplot(B-H,V,'b-'); hold on gplot(H,V,'r-'); hold off axis off equal 3.心形图: [x,y,z]=meshgrid(linspace(-1.5,1.5)); f=@(x,y,z)(x.^2+(9/4)*y.^2+z.^2-1).^3-... x.^2.*z.^3-(9/80)*y.^2.*z.^3; p=patch(isosurface(x,y,z,f(x,y,z),0)); view(3);axis equal; set(p,'FaceVertexCData',jet(size(get(p,'faces'),1)) ,... 'FaceColor', 'flat', 'EdgeColor', 'none')
属性 FramesPerTrigger TriggerReapeat FramesAcquired VideoResolution 说明 每次触发硬件获得的帧数(相当于手机的几连拍),默认10 再次触发需要的时间,默认 Inf 一个图像获取硬件所获得帧数(拍了几张?) 图像分辨率
4. set(obj,'TriggerRepeat',inf) %设置拍照时间间隔为无穷 set(obj,'FramesPerTrigger',1) %单连拍 % preview(obj) %预览窗口
图像处理初步—摄像头的调用
1.使用Image Acquisition Toolbox工具箱 2. % imaqhwinfo %查看本机中的图像获取资源列表 3. obj=videoinput('winvideo'); %建立videoinput对象 % get(obj) %返回属性 % imaqhelp videoinput %返回所有属性、函数及说明 表 常用属性
Matlab常用快捷键
1.使用“Ctrl+C”组合键能够强制从运行的或进入死循环的Matlab 程序中退出;如:while 1 end; 2.选择需要注释的语句块以后,使用“Ctrl+R”可以进行Matlab语 句注释;使用“Ctrl+T”可以进行语句块的解注释; 3. Ctrl+I--自动缩进(即自动排版,对多行有效)
(5)在线帮助页:命令doc后加关键字,MATLAB会自动定位到相 关页码,在线帮助页包括所有的字体、图形和图像都可以直接打印。
Matlab预定义变量
ans eps exp Inf或inf i或j pi NaN或nan nargin nargout realmax realmin lasterr lastwarning computer version 计算结果的默认变量名 浮点运算相对精度(计算机最小数) 自然对数的底数e 无穷大值,如1/0 虚数单位,i=j=sqrt(-1) 圆周率 不定量,如0/0 函数输入变量数目 函数输出变量数目 最大可用正实数 最小可用正实数 最近的错误信息 最近的错误警告信息 计算机类型(PCWIN64) Matlab版本(7.13.0.564 (R2011b) )
含义 短格式,4位有效数字 长格式,15位有效数字 5位科学记数 15位科学记数 十六进制格式
Matlab数据类型
数据类型 double 说明
uint8 uint16 uint32 int8
8位无符号整数,范围0~255,占用内存空间为1字节 16位无符号整数,范围是0~65535,占用内存空间2字节 32位无符号整数,范围0~4 294 967 295。占用内存空间4字节 8位有符号整数,范围-128~127。占用内存空间1字节
图像处理初步
一个简单的视觉传感器举例: 灰度图像存储器初始化-> 打开通信通道-> 定义变量数组(传感器坐标用)-> 定义变量数组(机器人坐标用)-> 定义变量数组(工件重心位置用-> 定义2值存储器-> 从摄像头读入图像,存入图像存储器 ->2值化->除去2值化孤立点-> 2值图像的收缩处理->2值图像的膨胀处理-> 标号处理,工件位置重心计算-> 从传感器坐标系到机器人坐标系的坐标变换-> 传送在机器人坐标系下的工件位置(x,y,ɵ)
图像处理初步
数字图像分类: 按特性分: 1.位图:BMP,JPG,GIF等,图像视为二维函数f(x,y),x、y为坐 标,函数值为灰度、亮度或强度 2.矢量图:PNG等,由矢量数据库表示。 按像素代表信息分: 1.二值图像:只有黑白两种颜色的图像 2.灰度图像:在二值图像中进一步加入许多介于黑色和与白色 之间的颜色深度 3.RGB图像:三原色(红绿蓝)组合而成。 4.索引图像
.^
.' * / \
阵列(Array)乘方,对矩阵的每一个元素进行指定幂次的乘方
阵列转置(无共轭转置) 矩阵(Matrix)乘法 矩阵(Matrix)右除,B/A=B*inv(A) 矩阵(Matrix)左除,A\B=inv(A)*B
power(A,B)
mtimes(A,B) mrdivide(A,B) mldivide(A,B)
Matlab基础 --刘尊
Matlab简介
Matlab是Matrix Laboratory(矩阵实验室)的缩写
MATLAB是由美国mathworks公司发布的主要面对科学 计算可视化以及交互式程序设计的高科技计算环境。每 半年更新一次,目前已是Matlab R2012b(8.0版本) Matlab将数值分析、矩阵计算、科学数据可视化以及非 线性动态系统的建模和仿真等诸多强大功能集成在一个 易于使用的视窗环境中。
Matlab帮助
(1)help 命令:命令窗口输入help,将显示所有的HELP topics: (2)lookfor 命令:可以根据用户提供的完整或不完整的关键词, 搜索出一组与之相关的命令或函数。例:lookfor integral
(3)模糊查询:(fuzzy Inquiry) 用户只须输入命令的前几个字母, 然后键入Tab键 MATLAB 就会列出所有以这个字母开始的命令。 例: 在命令窗口键入plot 然后按Tab键 (4)帮助台:(doc)帮助台比帮助命令及帮助窗口提供更多的帮 助信息。键入命令helpdesk或doc可进入帮助台。
数值显示格式
默认以短格式显示,但单数值的实际存储和运算精度都是 以双精度进行的。 如:输入a=1;b=2;a/b则答案为0.500。不必担心C中会出 现0的情况。输入whos可查看a,b的数据类型。
表 Matlab中常用数值显示格式:
格式指令 format short format long format short e format long e format hex
串口的调用
s = serial('COM1'); set(s,'BaudRate',4800); fopen(s); fprintf(s,'*IDN?') out = fscanf(s); fclose(s) delete(s) clear s
详见help 最好配合GUI使用
LOGO
4. F12――设置或取消断点
5. F5――运行程序
几个注意事项
1.在进行三角函数运算时,Matlab使用的是“弧度制”而不是“角度 制”; 2.解线性方程组AX=B:X=A\B或X=inv(A)*B 若线性方程组为XA=B; X=B/A或X=B*inv(A) 3. Matlab数组的下标是从“1”开始的,这点与C语言不同;
Matlab运算符
符号 + .* ./ .\ : 说明 加或正号 减或负号 阵列(Array)乘法,对应元素相乘。参与运算的两个矩阵必须拥有同样的大小。 阵列(Array)右除,A./B→A(i,j)/B(i,j) 阵列(Array)左除,A.\B→B(i,j)/A(i,j) 向量的省略表达法(如A=0:pi/4:pi)或代表矩阵的全行或列元素(如A(:,end)) 对应函数 plus(A,B) minus(A,B) times(A,B)