第1次课 Matlab应用图像处理基础(用)_第1页
第1次课 Matlab应用图像处理基础(用)_第2页
第1次课 Matlab应用图像处理基础(用)_第3页
第1次课 Matlab应用图像处理基础(用)_第4页
第1次课 Matlab应用图像处理基础(用)_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一.Matlab简介

二.计算单元:向量与矩阵

三.计算单元的基本操作

四.Matlab图像处理基础

Matlab应用图像处理基础1、概述(“矩阵实验室”)1984年,美国Mathworks公司成立,正式将Matlab推向市场。起初,Matlab是专门用于矩阵数值计算的数学软件,随着市场化,功能逐步强大。目前,已经在多学科、多领域内都取得良好的应用。如:自动控制理论、信号处理系统、图像处理、数理统计、时间序列分析、动态系统仿真。基本教学工具,本、硕士、博士基本技能设计研究单位和工业部门一.Matlab简介2、语言特点语言简洁、库函数丰富图形功能强大,较强的编辑图形界面的能力功能强大的工具箱。功能性工具箱和学科性工具箱源程序的开放性一.Matlab简介3、通用命令cd显示或改变当前工作目录dir显示当前目录或指定目录下的文件Disp显示变量或文字内容Clc清除工作窗中所有显示的内容Clear清理内存变量Exit退出MatlabSave保存内存变量到指定文件一.Matlab简介4.程序运行方式命令窗口直接输入命令,回车M文件一.Matlab简介二.计算单元:向量与矩阵MATLAB作为一个高性能的科学计算平台,主要面向高级科学计算。MATLAB的基本计算单元是矩阵与向量,向量为矩阵的特例。【例】矩阵,行向量B=[123],列向量,在MATLAB中可以分别表示为

>>A=[123;456]>>B=[123]>>C=[4;5;6]注意:

MATLAB中所有的矩阵与向量均包含在中括号[]之中。如果矩阵的大小为1×1,则它表示一个标量,如

>>a=[3] %a表示一个数说明:1、 MATLAB中分号“;”的作用有两点:①作为矩阵或向量的分行符。②作为矩阵或向量的输出开关控制符。2、冒号操作符“:”的应用>>B=2:5 %对向量进行赋值B=2345>>B(1:3)=2%向量B从第1到第3个元素全

部赋值为2B= 2225>>C=6:-2:0 %将向量C进行递减赋值,初

始值为6,终止值为0,步长为-2C=64201.矩阵加法与减法2.矩阵的乘法与除法3.矩阵的转置4.矩阵的点运算三.计算单元的基本操作1.矩阵加法与减法如果矩阵A与矩阵B具有相同的维数,则可以定义矩阵的加法与减法,其结果为矩阵相应元素作运算所构成的矩阵。矩阵加法与减法在MATLAB中的表达方式为>>C=A+B; %C为矩阵A与B之和>>D=A-B;%D为矩阵A与B之差三.计算单元的基本操作【例】若,,则

>>C=A+B1446109>>D=A-B102203

矩阵与标量的加法与减法是指标量本身与矩阵所有元素进行相应运算,如:

若b=1,则>>C=A+bC=2345672.矩阵的乘法与除法如果矩阵A的列数等于矩阵B的行数,则矩阵A、B可以相乘。【例】若

>>C=A*BC=711 1629

在MATLAB中,矩阵除法有两种形式,即左除(\)和右除(/)。如果A是一个非奇异方阵,那么>>A\B%表示A的逆与B的左乘,即inv(A)*B>>B/A%表示A的逆与B的右乘,即B*inv(A)

矩阵的左除和右除运算还可以用来求解矩阵方程AX=B的解:>>X=A\B3.矩阵的转置转置是一种重要的矩阵运算,在MATLAB中由撇号表示:>>A’ %矩阵A的转置

如果,则。4.矩阵的点运算两矩阵进行点运算是指它们的对应元素进行相关运算,要求两矩阵的维参数相同。点运算符有.*、./、.\和.^。【例】若

>>A.*B= %矩阵对应元素相乘74-10>>B./A= %矩阵对应元素相除71-10>>B.^2= %矩阵元素乘方运算49410>>A.^B= %矩阵对应元素幂运算14-11四.Matlab图像处理基础

主要内容:4、基本的二维图形绘制命令2、图像的读取和显示3、图像类型转换1、matlab支持的图像类型和常用格式5、M文件与MATLAB函数图像的概念(根据图像的性质):①矢量图(图形)矢量图由图形元素构成,能无限放大、缩小而不失真;不需将图像中的每一点记录下来,所占空间较小。②图像(位图)由不同强度或颜色属性的点组成;大分辨率的清晰图像占用大量空间;很难表达动态图像。1、matlab支持的图像类型和格式图像的采样与量化1、matlab支持的图像类型和格式采样:将在空间上连续的图像转换成离散的采样点(即像素,pixel)集的操作在x轴和y轴两个方向上进行设图像变成每行有M个像素,每列有N个像素,则全图是MxN个点的集合图像的采样与量化量化定义:将各个像素所含的明暗信息离散化后,用数字来表示。一般量化值用整数来表示。充分考虑到人眼的识别能力之后,目前非特殊用途的图像均为8bit量化,即用0~255描述“黑~白”间的变化1、matlab支持的图像类型和格式Matlab图像类型(根据表示的数据)①索引图像直接把像素值作为RGB调色板下标的图像。包括一个数据矩阵及一个颜色映像矩阵。索引图像可把像素值“直接映射”为调色板数值。调色板通常与索引图像存储在一起,装载图像时,调色板将和图像一同自动装载。1、matlab支持的图像类型和格式Matlab图像类型①索引图像

1、matlab支持的图像类型和格式RGB02550010255020025532552550Matlab图像类型②灰度图像是包含灰度级(量度)的图像。仅包含一个数据矩阵,其中数据矩阵中的每一个数据代表了一定范围内的灰度值。(0~255)1、matlab支持的图像类型和格式Matlab图像类型③RGB图像真彩图像。用RGB三原色表示图像色彩信息。每一个像素值由三个数值来指定红、绿和蓝颜色分量。1、matlab支持的图像类型和格式Matlab图像类型④二进制图像显示黑、白信息的图像,每个像素只取0,1两个灰度值。1、matlab支持的图像类型和格式图像的常用格式1、matlab支持的图像类型和格式①BMP:BMP文件是一种与硬件设备无关的位图文件,是Microsoft公司在Windows操作系统中采用的标准图像文件格式。BMP具有很强的通用性和设备无关性,几乎所有的图像处理软件、图像显示设备都可以打开它。通常不采压缩措施,所以BMP文件比较大。②GIF:图像互换格式,GIF图像文件采用了可变长度等压缩算法,压缩率一般在50%左右。几乎所有相关软件都支持GIF,它既可以表示静态图像,也可以表示动态图像。1、matlab支持的图像类型和格式③JPEG:联合图像专家组格式,是联合图像专家组提出的一种静态图像压缩方法,文件后辍名为“.jpg”或“.jpeg”。

JPEG采用有损压缩算法,具有较高的压缩比,是目前网络上最流行的图像格式,也普遍应用于需要连续色调的图像。④PNG:便携式网络图形格式,是网上流行的新图像文件格式,是由GIF开发团队针对GIF格式的缺点改良而来。它同时提供24位和48位真彩色图像支持以及其他诸多技术性支持。由于PNG非常新,所以并不是所有的程序都可以用它来存储图像文件。1、matlab支持的图像类型和格式⑤TIFF:标签图像文件格式,是一般图像软件和排版所支持的,具有非破坏性的文件格式,非常适用于印刷输出。TIFF格式灵活易变,它又定义了四类不同的格式:TIFF-B适用于二值图像;TIFF-G适用于黑白灰度图像;TIFF-P适用于带调色板的彩色图像;TIFF-R适用于RGB真彩图像。TIFF支持多种编码方法,其中包括RGB无压缩、RLE压缩及JPEG压缩等。①图像的读取FILENAME指定图像文件的完整路径和文件名,文件名一定要带扩展名。如果在work工作目录下只需提供文件名。2、图像的读取、显示和写入A=imread(FILENAME)①图像的读取不同类型的图像读取略有差别:灰度图像:I=imread(filename)真彩色图像:RGB=imread(filename)2、图像的读取、显示和写入索引图像:[x,map]=imread(filename)X:存储图像数据的矩阵名。MAP:该图像的调色板。Example:RGB=imread(‘flowers.tif’)[X,map]=imread(‘canoe.tif’)2、图像的读取、显示和写入②图像的显示灰度图像:Imshow(I);imshow(I,[low,high]);imshow(I,[])真彩色图像:Imshow(RGB)索引图像:imshow(x,map)imshow2、图像的读取、显示和写入②图像的显示figure(i)%创建第i个新的图像窗口;

subplot(m,n,p)%打开一个有m行n列图像位置的窗口,并将焦点位于第p个位置上title%为图像命名几个常用函数2、图像的读取、显示和写入③图像的写入函数imwrite()可以将一幅图像写成一个Matlab支持的格式图像文件。

imwrite(f,Filename)

Filename:扩展名的输出文件名。

写入索引图像:

imwrite(X,MAP,Filename)X:图像变量名MAP:调色板Imwrite可以有其他的参数,取决于所选的文件格式,如:imwrite(f,Filename,‘quality’,q)%q属于[0100]2、图像的读取、显示和写入功能:将索引色图像转换为真彩色图像用法:RGB=ind2rgb(x,map);例:

>>[x,map]=imread(‘2.gif’);%读取索引图像>>RGB=ind2rgb(x,map);%转换为真彩色图像3、图像类型转换常用命令:ind2rgb3、图像类型转换功能:将其他图像转换为二值图像用法:BW=im2bw(I,level);%将灰度图转换为二值图BW=im2bw(X,map,level);%将索引图转换为二值图BW=im2bw(RGB,level);%将真彩色图转换为二值图其中,Level为二值化阈值,[0,1]im2bw常用命令:例:I=imread(‘1.jpg’)%读取一幅灰度图像>>bw=im2bw(I,0.3);%结果显示>>subplot(1,2,1);imshow(I);>>subplot(1,2,2);imshow(bw);常用命令:3、图像类型转换功能:将彩色图像转换为灰度图像用法:I=rgb2gray(RGB)例子:>>RGB=imread('3.jpg');>>I=rgb2gray(RGB);rgb2gray4.基本的二维图形绘制命令(1) plot(x,y):输出以向量x为横坐标,以向量y为纵坐标且按照x,y元素的顺序有序绘制的图形。(2) plot(x1,y1,'str1‘,x2,y2,'str2‘,…):用'str1'指定的方式,输出以x1为横坐标,y1为纵坐标的图形。用'str2'指定的方式,输出以x2为横坐标,y2为纵坐标的图形。若省略'str',则MATLAB自动为每条曲线选择颜色与线型。'str'选项中的部分参数如表所示。表plot命令选项颜色'g'绿色' .'粗点线'--'虚线'y'黄色':'点线'-.'点划线'r'红色'*'星线'-'实线'b'蓝色'o'圆圈'+'加号'm'品红色'x'叉's'方形'y'黄色'd'菱形'p'五角星'k'黑色'^'上三角'h'六角星4.基本的二维图形绘制命令线型【例】用MATLAB绘制正弦函数在[0,2π]中的图形。解:在MATLAB命令行下输入>>x=0:0.1:2*pi; >>y=sin(x);>>plot(x,y,'*');简单的图形控制命令

(1)grid:自动在各个坐标轴上加上虚线型的网格。

(2)holdon:保持当前的图形,允许在当前图形状态下绘制其它图形,即在同一图形窗口中绘制多幅图形。

(3)holdoff:释放当前图形窗口,绘制的下一幅图形将覆盖原来图形。这是MATLAB的缺省状态。

(4)hold:在holdon与holdoff之间进行切换。【例】在一个图形窗口绘制两个函数的图像其中

5.M文件与MATLAB函数

1)M文件编辑器M文件编辑器不仅仅是一个文字编辑器,它还具有一定的程序调试功能在MATLAB命令行下输入

>>edit

则弹出如图所示的M文件编辑器窗口。图M文件编辑器

MATLAB中有两种M文件:一种称为脚本文件(批处理语句),另一种是M函数。新建M文件,保存时系统会自动将文件保存成*.m文件。然后便可以在MATLAB命令窗口或其它M文件中使用。其特点是按照脚本中语句的顺序执行,生成的变量放在当前的工作区之中(如果从命令行运行,则放在基本工作区)。

5.M文件与MATLAB函数

①脚本文件脚本文件是由一系列MATLAB的命令、内置函数以及M文件等构成的文件,它可以由一般的编辑器进行编制,其结果保存在相应的M文件中。M脚本文件的实质为命令的集合,执行时,MATLAB从文件中读取命令执行。

5.M文件与MATLAB函数

【例】编写一个M文件绘制函数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论