文档库 最新最全的文档下载
当前位置:文档库 › 第二讲_MATLAB图形处理

第二讲_MATLAB图形处理

第二讲_MATLAB图形处理
第二讲_MATLAB图形处理

常用的数学函数

acos(x)———反余弦函数cos(x)———余弦函数

acot(x)———反余切函数cot(x)———余切函数

asin(x)———反正弦函数sin(x)———正弦函数

atan(x)———反正切函数tan(x)———正切函数

exp(x)———自然指数函数pow2(x)———以2为底的指数函数

log(x)———自然对数函数sqrt(x)———根号函数

log2(x)———以2为底的对数函数floor(x)———向下取整数

log10(x)———以10为底的对数函数ceil(x)———向上取整数

mod(x)———x对y的模round(x)———四舍五入函数

rem(x,y)———x除以y的余数sign(x)———符号函数

3.2.7选择输出格式

MA TLAB中的所有计算都是以双精度方式完成的,但是显示输出可以是具有4个小数位的定点输出。例如,对于向量x = [1/3 0.00002]

MA TLAB有下列输出:x= 0.3333 0.0000

如果在矩阵中至少有一个元素不是严格的整数,则有4种可能的输出格式。显示的输出量可以利用下列命令加以控制:

format short

format long

format short e

format long e

一旦调用了某种格式,则这种被选用的格式将保持,直到对格式进行了改变为止。

format short和format long是经常采用的格式。一旦调用了MATLAB,即使没有输入格式命令,MATLAB 也将以format short格式显示数值结果。如果矩阵或向量的所有元素都是严格的整数,则format short和format long的结果是相同的。

MA TLAB操作桌面的file菜单中打开preferences窗口,选择命令窗口界面,就可以方便地进行格式选择。注:复数和复数矩阵(Complex and complex matrix)

复数用特殊字符i或j 表示。i=sqrt(-1), 其值在工作空间显示为0+1.0000i.

例:输入 z=3+4i 或z=3+4j 结果一样。

MA TLAB 中复数有下面的语句生成办法:

z=a+b*i 或z=r*exp(i*θ)其中r为复数的模,θ为复数辐角的弧度数。

复数的两种输入方法:

(1)a=[1 2;3 4]+i*[5 6;7 8]

(2)a=[1+5i 2+6i; 3+7i 4+8i]

结果相同: a =

1.0000 + 5.0000i

2.0000 + 6.0000i

3.0000 + 7.0000i

4.0000 + 8.0000i

注:(1) 当复数的虚部(image)为一个确定的数(而不是变量或矩阵)时,可省略―*‖,如1+2*i可写成1+2i, 但a+b*i 不能写成a+bi, [1 2]+[3 4]*i不能写成[1 2] + [3 4]i

(2) 当复数作为矩阵元素时,复数内不能留有空格,如1 +5i, MA TLAB中任何矩阵的元素内部都不能留有空格,否则会被当作两个元素处理而出错。

第二讲MATLAB图形处理

MA TLAB在数据可视化方面的表现力很强。它的能力不仅功能强大,而且充分考虑了不同层次用户的不同需求,系统具有两个层次的绘图指令:一个层次是直接对图形句柄进行操作的底层绘图指令,它具有控制和表现数据图形能力强,控制灵活多变等优点,对于有较高或特殊需求的用户而言,该层次能够完全满足他们的需求;另一层次是在底层指令基础上建立的高层绘图指令,它的指令简单明了,易于掌握,适用于普通用户。Matlab的图形命令格式简单,可以使用不同的线形,色彩、数据点标记和标注等来修饰。

常用的MA TLAB绘图语句有figure、plot、subplot、stem等,图形修饰语句有title、axis、text等。

基本绘图函数

figure———创建一个图的窗口

plot———绘制图形

subplot———绘制子图

loglog———x、y轴均取对数标度建立图形

stairs———绘制序列的方波图形

stem———绘制离散点序列

semilogx———x轴用对数标度、y轴用线性标度绘制图形

semilogy———y轴用线性标度、x轴用对数标度绘制图形

以下函数是将标题、坐标轴标记、网格线及文字注释加到图上。

title———给图形加标题

xlabel———给x轴加标记

ylabel———给y轴加标记

text———在图形指定位置上加文本字符串

gtext———用鼠标在图上放文本字符串

legend———图的注释

grid———打开网格线

hold———图是否重叠打印

axis———命令对坐标轴重新设定

2.1 figure 语句

figure有两种用法。当只用一句figure命令时,程序会创建一个新的图形窗口,并返回一个整数型的窗口编号。当采用figure(n)时,表示将第n号图形窗口作为当前的图形窗口,并将其显示在所有窗口的最前面。如果该图形窗口不存在,则新建一个窗口,并赋以编号n。

2.2 plot 语句

线型绘图函数。用法为plot(x, y, ‘s‘)。参数x为横轴变量,y为纵轴变量,s用以控制图形的基本特征如颜色、粗细等,通常可以省略,常用方法如表2-1所示。

表2-1 plot 命令的参数及其含义

【例2.1】plot([1,3,4,2,5])%长度为5的向量

【例2.2】在区间0≤X≤2 内,绘制正弦曲线Y=SIN(X),其程序为:

x=0:pi/100:2*pi;

y=sin(x);

plot(x,y) ;

grid on %x,y的长度相等

【例2.3】同时绘制正、余弦两条曲线Y1=SIN(X)和Y2=COS(X),其程序为:

x=0:pi/100:2*pi;

y1=sin(x);

y2=cos(x);

plot(x,y1,'r+',x,y2,'kp')

plot函数还可以为plot(x,y1,x,y2,x,y3,…)形式,其功能是以公共向量x为X轴,分别以y1,y2,y3,…为Y轴,在同一幅图内绘制出多条曲线。

2.3 stem 语句

绘制离散序列图,常用格式stem(y)和stem(x,y),分别和相应的plot 函数的绘图规则相同,只是用stem 命令绘制的是离散序列图。

【例2.4】用stem命令正弦曲线的绘制离散序列图

x=0:pi/100:2*pi;

stem(x,sin(x))

2.4 subplot 语句

subplot(m,n,i) 是分割显示图形窗口命令,它把一个图形窗口分为m行n列共m×n个小窗口,并指定第i 个小窗口为当前窗口。

2.5 绘图修饰命令

在绘制图形时,我们通常需要为图形添加各种注记以增加可读性。在plot语句后使用title(?标题‘)可以在图形上方添加标题,使用xlabel(?标注‘)或ylabel(?标注‘)为X轴或Y轴添加说明,使用text(X值、Y值、?想加的标注‘)可以在图形中(X值,Y值)处添加标注,使用axis([xmin xmax ymin ymax])设置坐标轴的最小最大值,gtext(?string‘) 利用鼠标添加说明性文本信息;grid on (/off) 给当前图形标记添加(/取消)网格。【例2.4】用MA TLAB 语句绘正弦图,其运行结果见图2-1:

x=0:0.1*pi:2*pi; %定义x向量

subplot(2,2,1); %将窗口划分为2行,2列,在第1个窗口中作图

plot(x,sin(x)); %画图

t=title('正弦线') %给图形加标题

subplot(2,2,2); %在第2个窗口中作图

plot(x,sin(x),'r'); %画一正弦波,红色

xlabel('X'); %给x轴加说明

ylabel('SIN(X)'); %给y轴加说明

subplot(2,2,3); %在第2个窗口中作图

plot(x,sin(x),'--'); %画一正弦波,破折线

subplot(2,2,4); %在第2个窗口中作图

plot(x,sin(x),'r+'); %画一正弦波,红色破折线

text(4,0,'注记');

图2-1 例2.4 运行结果

2.6 图例函数legend()

基本格式: legend('string1','string2',... pos)

功能:给图加图例,对于每个已画的曲线,可以配置想要的图例。

参数:'string1','string2',... —解释图例的字符串

pos —决定放置图例的位置

pos = -1 将图例放在轴边距外右边

pos = 0 将图例放在轴边距内右边占用尽量少的点

pos = 1 将图例放在轴的右上方(缺省值)

pos = 2 将图例放在轴左上方

pos = 3 将图例放在轴左下方

pos = 4 将图例放在轴

【例2.5】legend 用法举例

x = -pi:pi/20:pi;

plot(x,cos(x),'-ro',x,sin(x),'-.b')

h = legend('cos','sin',2)

图2-2 例2.5 运行结果

注:如何把图形复制到word 文档

确定信号分析

一、周期信号的傅里叶级数 1、基本原理 若一周期信号

()()

f t f t kT =+,其中

k 为整数,T 成为信号的周期。若周期信号在

一个周期内可积,则可通过傅立叶级数对该信号进行展开。其傅立叶展开式如下:

()2s j nf t n n f t F e π∞

=-∞

=

∑(2-1)

其中,()/2

2/21s T j nf t n T F f t e dt

T π--=?,T 为信号最小周期;

1/s

f T =;n F 为傅立叶展开系

数,其物理意义为频率分量

s nf 的幅度和相位。

式2-1表明:信号可以展开成一系列频率为1/s f T =的整数倍的正弦、余弦信号的加权叠加,其中相

应频率分量的加权系数即为n F ,因此可以用周期信号的傅立叶展开来重构该周期信号,其逼进程度与展

开式的项数有关。 2、举例

设周期信号一个周期的波形为

()1,0/2

1/2t T f t T t T ≤

-≤

MATLAB 画出傅里叶级数展开后的波形,并通过展开式项数的变化考察其对()

f t 的逼近程度,考察

其物理意义。 解:

()()20

00111

[22]0

s T j nf t

n T F f t e dt

T F f t dt T T T T

π-===-=??

()20

1s T j nf t n F f t e dt

T π-=?

2222

021*********s s j T T j nf t j nf t T j n j n s s j n j n s s n e dt e dt T e e T j nf j nf e e T j nf nf e j πππππππππππ-------??=- ???

??--=- ?--????--=- ?--??

??

()2

22

2

2

1()

22

sin(2)2

s 22in /2j n j n j n j n j n j s n e e e e T j n j n n e

n c n e

f ππππππππππ-------==--?==

傅立叶展开式为:()2s j nf t n n f t F e π∞

=-∞

=

源代码:

clear all;

N=100;%取展开式的项数为2N+1项 T=1; fs=1/T;

N_sample=128;%为了画波形,设置每个周期的采样点数 dt=1/ N_sample;%时间分辨率 t=0:dt:10*T-dt; n=-N:N;

Fn=sinc(n/2).*exp(-j*n*pi/2);%求傅立叶系数 Fn(N+1)=0; ft=zeros(1,length(t)); for m=-N:N

ft=ft+Fn(m+N+1)*exp(j*2*pi*m*fs*t) ;%Fn 是一个数组,其序号是从1开始的,到2N +1结束,故该语句中为Fn(m+N+1)

%而当n=0时,Fn=0,在数组中的位置为第N+1个元素,故%令Fn(N+1)=0 end plot(t,ft) xlabel('t'); ylabel('f(t)'); 仿真结果:

012345678910

-1.5

-1

-0.5

0.5

1

1.5

N =500时叠加的s (t )

012345678910

N =100时叠加的s (t )

012345678910

-1.5

-1

-0.5

0.5

1

1.5

N =10时叠加的s (t )

012345678910

-1.5

-1

-0.5

0.5

1

1.5

N =5时叠加的s (t )

二、信号的傅里叶变换及其反变换

1、基本原理 对于非周期信号

()s t ,满足绝对可积的条件下,可利用傅里叶变换对其进行频域分析。

()()2j ft

S f s t e

dt π∞

--∞

=?,

()()2j ft

s t S f e

df

π∞

-∞

=?

其中, ()s f 称为信号()s t 傅里叶变换,表示了该信号的频谱特性。

2、举例

设信号为

()1,0/21/2t T s t T t T ≤

-≤

解:()2220

2

T

T

j ft

j ft T S f e

dt e dt ππ--=-??

()

22

22

1112

2

2

2

2222

12211222211sin sin 222

21422j fT j fT j fT j fT j fT j fT j fT j fT j fT j fT j fT

j fT e e e j f j f e e e e j f j f j f e e e

j f

fT fT f j T e e j fT f j T f e ππππππππππππππππππππππππ-------------=------=-=????-?? ????

???

=

???? ? ?

?????

???

?==-=()2

sin /2j fT c fT π-

在数字信号处理中,需要利用离散傅立叶变换(DFT )计算信号的傅里叶变换,现在考察一下信号

()s t 的傅里叶变换与其离散傅立叶变换之间的关系。

将信号

()

s t 按照时域均匀抽样定理进行等间隔抽样后,得到序列

{}

,0,1,2,,

1n s n N =

- ,

()

n s s n t =?,其中,

t ?为抽样间隔,则

由数字信号处理的知识可知,序列

n s 的离散傅立叶变换为

()

21

0,1,2,,1N j

nk N

k n n S s e

k N π

--===-∑

()s t 在一段时间[0,]T 内的傅立叶变换为

()()20

T

j ft S f s t e dt

π-=?

()()1

20

21

/21

lim lim lim N j fn t N n N t T N

N j nfT N

n N j

nfT N

N n n s n t e t

T

s n T

s e N t e N πππ

--?→∞

=-?=-→∞=--→∞==???=∑∑=

∑令

我们得到

()s t 在一段时间[0,]T 内的傅立叶变换是连续谱()s f ,而对()s t 进行离散傅

立叶变换得到的是离散谱

k S ,为了比较它们之间的关系,对()s f 也进行等间隔抽样,且抽样间隔

1f T ?=,即其频率分辨率,则在频率范围[0,(1)]N f -?内, ()21

lim N j nfT N

n N n T

S k f s e

N π

--→∞=?=∑

()21

lim lim 0,1,2,,1N j nk N k N

n N n T

N T S k s e N N π

-→-→=∞∞===-∑

可以看到, ()s t 的离散傅里叶变换与()s t 在一段时间[0,]T 内的傅立叶变换的抽样成正比。

由于

*k k m N S S +=,故信号()s t 连续谱的负半轴部分可以通过对k S 的平移得到。

需要注意的是信号

()s t 的离散傅立叶变换只和信号()s t 在一段时间[0,]T 内的傅立叶变换有关,而由公式2-1,

()s t 的频谱是在时间[,]-∞∞上得到的。所以上述计算所得到的并不是真正

的信号频谱,而是信号加了一个时间窗后后的频谱。当信号

()s t 是随时间衰减的或是时限信号,只要时

间窗足够长,可以通过这种方法获得信号的近似频谱。

因此,用DFT计算的信号频谱精度依赖于信号、抽样的时间间隔和时间窗的大小。一般情况下,对于时限信号,在抽样时间间隔小,即抽样频率高的情况下能获得较为精确的信号频谱。

计算信号的离散傅里叶变换在数字信号处理中有一种高效算法,即快速傅里叶变换FFT,Matlab中也有专门的工具,下面简要介绍:

fft(x),x是离散信号,或对模拟信号取样后的离散值。

ifft(x),,x是对信号进行快速傅里叶变换后的离散谱

fftshift(x),将信号的频谱进行移位,与原点对称

源代码一:

利用fft,fftshift定义函数T2F计算信号的傅立叶变换

function [f,sf]=T2F(t,st)

dt=t(2)-t(1) ;

T=t(end) ;

df=1/T ;%频率分辨率

N=length(st) ;%离散傅立叶变换长度

f=-N/2*df :df :N/2*df-df ;%设定频谱区间,关于原点对称

sf=fft(st);

sf=T/N*fftshift(sf);%信号的频谱与离散傅立叶变换之间的关系

源代码二:

利用ifft,fftshift定义函数F2T计算信号的傅立叶反变换

function [t,st]= F2T (f,sf)

df=f(2)-f(1) ; %频率分辨率

Fmx=f(end)-f(1)+df ;

dt=1/Fmx ; %时间分辨率

N=length(sf) ;

T=dt*N; %信号持续时间

t=0:dt:T-dt;

%离散傅立叶反变换,是T2F的逆过程

sff=fftshift(sf); %平移后同T2F中的sf

st=Fmx*ifft(sff); %由于T2F中求信号频谱在DFT基础上乘了一个因子T/N,反变换求信号时要乘以其倒数即N / T=1/dt

%正好等于Fmx。

源代码三:

主程序:

clear all

T=1;

N_sample=128;%为了画波形,设置每个周期的采样点数

dt=1/ N_sample;%时间分辨率

t=0:dt:T-dt;

st=[ones(1, N_sample/2), -ones(1, N_sample/2)];%依据T将信号离散化

subplot(311);

plot(t,st);

axis([0 1 -2 2]);

xlabel('t');ylabel('s(t)');

subplot(312) ; [f,sf]=T2F(t,st) ; plot(f,abs(sf)) ;hold on ; axis([-10 10 0 1]); xlabel('f');ylabel('|S(f)|');

sff=T^2*j*pi*f*0.5.*exp(-j*pi*f*T).*sinc(f*T*0.5).*sinc(f*T*0.5) ;%依据傅里叶变换求信号频谱 plot(f,abs(sff),'r-')

[t,st]= F2T (f,sf);%进行离散傅立叶反变换,求原始信号 subplot(313) ; axis([0 1 -2 2]);

xlabel('t');ylabel('恢复的s(t)'); plot(t,st) ;hold on ; 仿真结果:

00.10.20.30.4

0.50.60.70.80.91

-2

2

t

s (t )

-10-8-6-4-2

0246810

00.51

f

|S (f )

|

00.10.20.30.4

0.50.60.70.80.91

-2

02

t

恢复的s (t

)

非常全非常详细的MATLAB数字图像处理技术

MATLAB数字图像处理 1 概述 BW=dither(I)灰度转成二值图; X=dither(RGB,map)RGB转成灰度图,用户需要提供一个Colormap; [X,map]=gray2ind(I,n)灰度到索引; [X,map]=gray2ind(BW,n)二值图到索引,map可由gray(n)产生。灰度图n默认64,二值图默认2; X=graylice(I,n)灰度图到索引图,门限1/n,2/n,…,(n-1)/n,X=graylice(I,v)给定门限向量v; BW=im2bw(I,level)灰度图I到二值图; BW=im2bw(X,map,level)索引图X到二值图;level是阈值门限,超过像素为1,其余置0,level在[0,1]之间。 BW=im2bw(RGB,level)RGB到二值图; I=ind2gray(X,map)索引图到灰度图; RGB=ind2rgb(X,map)索引图到RGB; I=rgb2gray(RGB)RGB到灰度图。 2 图像运算 2.1 图像的读写 MATLAB支持的图像格式有bmp,gif,ico,jpg,png,cur,pcx,xwd和tif。 读取(imread): [1] A=imread(filename,fmt) [2] [X,map]=imread(filename,fmt) [3] […]=imread(filename) [4] […]=imread(URL,…) 说明:filename是图像文件名,如果不在搜索路径下应是图像的全路径,fmt是图像文件扩展名字符串。前者可读入二值图、灰度图、彩图(主要是RGB);第二个读入索引图,map 为索引图对应的Colormap,即其相关联的颜色映射表,若不是索引图则map为空。URL表示引自Internet URL中的图像。 写入(imwrite): [1] R=imwrite(A,filename,fmt); [2] R=imwrite(X,map,filename,fmt); [3] R=imwrite(…,filename); [4] R=imwrite(…,Param1,V al1,Param2,Val2) 说明:针对第四个,该语句用于指定HDF,JPEG,PBM,PGM,PNG,PPM,TIFF等类型输出文件的不同参数。例如HDF的Quality,Compression,WriteMode;JPEG的BitDepth,Comment:Empty or not,Mode:lossy or lossless,Quality等。 2.2 图像的显示 方法1:使用Image Viewer(图像浏览器),即运用imview函数。 同时显示多帧图像的所有帧,可用到montage函数。

matlab 三维图形绘制实例

三维图形 一. 三维曲线 plot3(x1,y1,z1,选项1,x2,y2,z2,选项2,…,xn,yn,zn,选项n) 其中每一组x,y,z 组成一组曲线的坐标参数,选项的定义和plot 函数相同。当x,y ,z 是同维向量时,则x,y,z 对应元素构成一条三维曲线。当x,y ,z 是同维矩阵时,则以x,y,z 对应列元素绘制三维曲线,曲线条数等于矩阵列数。 Example1.绘制三维曲线。 程序如下: clf, t=0:pi/100:20*pi; x=sin(t); y=cos(t); z=t.*sin(t).*cos(t); %向量的乘除幂运算前面要加点 plot3(x,y,z); title('Line in 3-D Space'); xlabel('X');ylabel('Y');zlabel('Z'); grid on; 所的图形如下: -1 1 X Line in 3-D Space Y Z 二. 三维曲面 1. 产生三维数据 在MATLAB 中,利用meshgrid 函数产生平面区域内的网格坐标矩阵。

语句执行后,矩阵X 的每一行都是向量x ,行数等于向量y 的元素的个数,矩阵Y 的每一列都是向量y ,列数等于向量x 的元素的个数。 2. 绘制三维曲面的函数 surf 函数和mesh 函数 example2. 绘制三维曲面图z=sin(x+sin(y))-x/10。 程序如下: clf, [x,y]=meshgrid(0:0.25:4*pi); %产生平面坐标区域内的网格坐标矩阵 z=sin(x+sin(y))-x./10; surf(x,y,z); axis([0 4*pi 0 4*pi -2.5 1]); title('surf 函数所产生的曲面'); figure; mesh(x,y ,z); axis([0 4*pi 0 4*pi -2.5 1]); title('mesh 函数所产生的曲面'); -2.5 -2-1.5-1-0.500.51surf 函数所产生的曲面

Matlab 特殊图形和高维可视化

Matlab 特殊图形和高维可视化 2009-10-20 01:06 7.4 特殊图形和高维可视化 7.4.1 特殊图形指令例示 7.4.1.1 面域图area 【* 例7.4.1 .1-1 】面域图指令area 。该指令的特点是:在图上绘制多条曲线时,每条曲线(除第一条外)都是把“前”条曲线作基线,再取值绘制而成。因此,该指令所画的图形,能醒目地反映各因素对最终结果的贡献份额。注意:( 1 )area 的第一输入宗量是单调变化的自变量。第二输入宗量是“各因素”的函数值矩阵,且每个“因素”的数据取列向量形式排放。第三输入宗量是绘图的基准线值,只能取标量。当基准值为0 (即以x 轴为基准线)时,第三输入宗量可以缺省。(2 )本例第<4> 条指令书写格式x' , Y' ,强调沿列方向画各条曲线的事实。 clf;x=-2:2 % 注意:自变量要单调变化 Y=[3,5,2,4,1;3,4,5,2,1;5,4,3,2,5] % 各因素的相对贡献份额 Cum_Sum=cumsum(Y) % 各曲线在图上的绝对坐标 area(x',Y',0) %<4> legend(' 因素A',' 因素B',' 因素C'),grid on,colormap(spring) x = -2 -1 0 1 2 Y = 3 5 2 4 1 3 4 5 2 1 5 4 3 2 5 Cum_Sum = 3 5 2 4 1 6 9 7 6 2 11 13 10 8 7

图 7.4.1 .1-1 面域图表现各分量的贡献 7.4.1.2 各种直方图bar, barh, bar3, bar3h 【 * 例 7.4.1 .2-1 】二维直方图有两种图型:垂直直方图和水平直方图。而每种图型又有两种表现模式:累计式:分组式。本例选其两种加以表现。 x=-2:2; % 注意:自变量要单调变化 Y=[3,5,2,4,1;3,4,5,2,1;5,4,3,2,5]; % 各因素的相对贡献份额 subplot(1,2,1),bar(x',Y','stacked') % “累计式”直方图 xlabel('x'),ylabel('\Sigma y'),colormap(cool)% 控制直方图的用色legend(' 因素 A',' 因素 B',' 因素 C') subplot(1,2,2),barh(x',Y','grouped') % “分组式”水平直方图 xlabel('y'),ylabel('x') 图 7.4.1 .2-1 二维直方图 clf;x=-2:2; % 注意:自变量要单调变化 Y=[3,5,2,4,1;3,4,5,2,1;5,4,3,2,5]; % 各因素的相对贡献份额 subplot(1,2,1),bar3(x',Y',1) % “队列式”直方图 xlabel(' 因素 ABC'),ylabel('x'),zlabel('y') colormap(summer) % 控制直方图的用色 subplot(1,2,2),bar3h(x',Y','grouped') % “分组式”水平直方图 ylabel('y'),zlabel('x')

5 MATLAB图形功能

§5MATLAB图形功能 MA TLAB有很强的图形功能,可以方便地实现数据的视觉化。强大的计算功能与图形功能相结合为MA TLAB在科学技术和教学方面的应用提供了更加广阔的天地。下面着重介绍二维图形的画法,对三维图形只作简单叙述。 5.1 二维图形的绘制 5.1.1 基本形式 二维图形的绘制是MA TLAB语言图形处理的基础,MA TLAB最常用的画二维图形的命令是plot,看两个简单的例子: >> y=[0 0.58 0.70 0.95 0.83 0.25]; >> plot(y) 生成的图形见图5-1,是以序号6, ,2,1 为横坐标、数组y的数值为纵坐标画出的折线。 >> x=linspace(0,2*pi,30); % 生成一组线性等距的数值 >> y=sin(x); >> plot(x,y) 生成的图形见图5-2,是] 2,0[ 上30个点连成的光滑的正弦曲线。 图5-1 图5-2 5.1.2 多重线 在同一个画面上可以画许多条曲线,只需多给出几个数组,例如 >> x=0:pi/15:2*pi; >> y1=sin(x); >> y2=cos(x); >> plot(x,y1,x,y2) 则可以画出图5-3。多重线的另一种画法是利用hold命令。在已经画好的图形上,若设置hold on,MA TLA将把新的plot命令产生的图形画在原来的图形上。而命令hold off 将结束这个过程。例如: >> x=linspace(0,2*pi,30); y=sin(x); plot(x,y) 先画好图5-2,然后用下述命令增加cos(x)的图形,也可得到图5-3。 >> hold on >> z=cos(x); plot(x,z)

基于Matlab基本图像处理程序

图像读入 ●从图形文件中读入图像 imread Syntax: A = imread(filename, fmt) filename:指定的灰度或彩色图像文件的完整路径和文件名。 fmt:指定图形文件的格式所对应的标准扩展名。如果imread没有找到filename所制定的文件,会尝试查找一个名为filename.fmt的文件。 A:包含图像矩阵的矩阵。对于灰度图像,它是一个M行N列的矩阵。如果文件包含 RGB真彩图像,则是m*n*3的矩阵。 ●对于索引图像,格式[X, map] = imread(filename, fmt) X:图像数据矩阵。 MAP:颜色索引表 图像的显示 ●imshow函数:显示工作区或图像文件中的图像 ●Syntax: imshow(I) %I是要现实的灰度图像矩阵 imshow(I,[low high],param1, val1, param2, val2,...) %I是要现实的灰度图像矩阵,指定要显示的灰度范围,后面的参数指定显示图像的特定参数 imshow(RGB) imshow(BW) imshow(X,map) %map颜色索引表 imshow(filename) himage = imshow(...) ●操作:读取并显示图像 I=imread('C:\Users\fanjinfei\Desktop\baby.bmp');%读取图像数据 imshow(I);%显示原图像 图像增强 一.图像的全局描述 直方图(Histogram):是一种对数据分布情况的图形表示,是一种二维统计图表,它的两个坐标分别是统计样本和该样本对应的某个属性的度量。 图像直方图(Image Histogram):是表示数字图像中亮度分布的直方图,用来描述图象灰度值,标绘了图像中每个亮度值的像素数。 灰度直方图:是灰度级的函数,它表示图像中具有某种灰度级的像素的个数,反映了图 像中某种灰度出现的频率。描述了一幅图像的灰度级统计信息。是一个二维图,横坐标为图像中各个像素点的灰度级别,纵坐标表示具有各个灰度级别的像素在图像中出现的次数或概率。 归一化直方图:直接反应不同灰度级出现的比率。纵坐标表示具有各个灰度级别的像

MATLAB绘图功能大全

Matlab绘图 强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数。此外,Matlab 还提供了直接对图形句柄进行操作的低层绘图操作。这类操作将图形的每个图形元素(如坐标轴、曲线、文字等)看做一个独立的对象,系统给每个对象分配一个句柄,可以通过句柄对该图形元素进行操作,而不影响其他部分。 本章介绍绘制二维和三维图形的高层绘图函数以及其他图形控制函数的使用方法,在此基础上,再介绍可以操作和控制各种图形对象的低层绘图操作。 一、二维绘图 二维图形是将平面坐标上的数据点连接起来的平面图形。可以采用不同的坐标系,如直角坐标、对数坐标、极坐标等。二维图形的绘制是其他绘图操作的基础。 (一)绘制二维曲线的基本函数 在Matlab中,最基本而且应用最为广泛的绘图函数为plot,利用它可以在二维平面上绘制出不同的曲线。 1.plot函数的基本用法

plot函数用于绘制二维平面上的线性坐标曲线图,要提供一组x 坐标和对应的y坐标,可以绘制分别以x和y为横、纵坐标的二维曲线。plot函数的应用格式 plot(x,y) 其中x,y为长度相同的向量,存储x坐标和y坐标。 例51 在[0 , 2pi]区间,绘制曲线 程序如下:在命令窗口中输入以下命令 >> x=0:pi/100:2*pi; >> y=2*exp(-0.5*x).*sin(2*pi*x); >> plot(x,y) 程序执行后,打开一个图形窗口,在其中绘制出如下曲线 注意:指数函数和正弦函数之间要用点乘运算,因为二者是向量。 例52 绘制曲线 这是以参数形式给出的曲线方程,只要给定参数向量,再分别求出x,y向量即可输出曲线: >> t=-pi:pi/100:pi; >> x=t.*cos(3*t); >> y=t.*sin(t).*sin(t); >> plot(x,y) 程序执行后,打开一个图形窗口,在其中绘制出如下曲线 以上提到plot函数的自变量x,y为长度相同的向量,这是最常见、最基本的用法。实际应用中还有一些变化。

Matlab图形绘制经典案例

Matlab图形绘制经典案例 1、 三维曲线 >> t=0:pi/50:10*pi; >> plot3(sin(2*t),cos(2*t),t) >> axis square >> grid on

2、一窗口多图形>> t=-2*pi:0.01:2*pi; >> subplot(3,2,1)

>> plot(t,sin(t)) >> subplot(3,2,2) >> plot(t,cos(t)) >> subplot(3,2,3) >> plot(t,tan(t)) >> axis([-pi pi -100 100]) >> subplot(3,2,4) >> plot(t,cot(t)) >> axis([-pi pi -100 100]) >> subplot(3,2,5) >> plot(t,atan(t)) >> subplot(3,2,6) >> plot(t,acot(t))

3、图形样式、标注、题字(也可以利用菜单直接Insert) >> x=0:pi/20:2*pi;

>> plot(x,sin(x),'b-.') >> hold on >> plot(x,cos(x),'r--') >> hold on >> plot(x,sin(x)-1,'g:') >> hold on >> plot(x,cos(x)-1) >> xlabel('x'); >> xlabel('x轴'); >> ylabel('y轴'); >> title('图形样式、标注等'); >> text(pi,sin(pi),'x=\pi'); >> legend('sin(x)','cos(x)','sin(x)-1','cos(x)-1'); >> [x1,y1]=ginput(1) %利用鼠标定位查找线上某点的值x1 = 2.0893 y1 = -0.5000 >> gtext('x=2.5') %鼠标定位放置所需的值在线上

基于MATLAB平台的可视化图像处理系统设计方法

[收稿日期]20050228 [作者简介]黄书先(1962),女,1983年大学毕业,硕士,副教授,现主要从事石油勘探开发研究与科研管理工作。 基于MATLAB 平台的可视化图像处理系统 设计方法 黄书先 (长江大学科学技术处,湖北荆州434023) [摘要]以MATLAB 为工作语言和开发环境,开发了一个在M AT LAB 平台下的可视化图像处理系统, 可实现包括对测井图像在内的一般图像的精细处理,并能和用户开发的程序接口。为M AT LAB 的再开发 和可视化系统的设计作了有益的探索。 [关键词]MATLAB;图像处理;可视化GUI 界面 [中图分类号]TP 311111 [文献标识码]A [文章编号]16731409(2005)04015803 MAT LAB 的图像处理工具为自然科学各学科领域的学者、研究人员和工程师提供了一个直观的灵活的环境,用以解决复杂的图像处理问题。用MAT LAB 语言开发的图像处理算法可以在所有支持MAT LAB 的平台上共享。也可以将m 语言算法和现存的C 程序集成在一起或者将MATLAB 开发的m 语言算法和GU Is 编译为C/C++代码,供其他程序调用,或者发布为一个独立的应用程序。下面笔者提出一个基于MATLAB 平台的可视化图像处理系统设计方法,可用于包括测井图像资料在内的一般图像的精细处理。 1 系统总体设计 在MAT LAB 中有个重要的图像处理工具包[1],该工具包是由一系列支持图像处理操作的函数组成的,按功能可以分为以下几类:图像显示;图像文件输入与输出;几何操作;像素值统计;图像增强;图像识别;图像滤波;图像变换;邻域和块操作;二值图像操作;颜色映射和颜色空间转换;图像格式转换等。和其他工具包一样,用户还可以根据需要书写自己的函数,以满足特定的需要;也可以将这个工具包和信号处理工具包或小波工具包等其他工具包联合起来使用。 MAT LAB 提供了交互式的GU I 开发环境[2~4],用户只需要设置各个对象相应的属性,系统自动生成与之对应的界面,大大减少了开发的难度。本设计的MAT LAB 图像处理系统由封面、主界面和各个子功能界面组成,其框图如图1所示。程序总流程图如图2所示。 2 封面界面设计 首先用MAT LAB 编辑封面的脚本文件,生成系统的封面界面,然后再进入处理的主界面。 在设计封面时,要做好封面的总体布局,力求完美。要插入背景,首先要找到所用的函数(这在一般的书中很难找到);其次要注意设置axes 的属性。在显示背景图像时,不能用imshow ()函数,如果用此函数,背景图像只能显示在封面的一部分,不能整屏覆盖;而要用imagesc ()函数。MATLAB 提供修改文本中文字的字体,它支持华文中宋、华文彩云、华文仿宋、楷书、黑体等,功能较强。 在设计封面的过程中,最主要的技术是要解决时间的显示,如果只用MATLAB 中的clock ()函数,则显示的是静态时间,而不会显示和电脑同步的动态时间。为了解决这个问题,需做一个循环判断语句:while find (get (0,'c hildren'))==h0。成立的条件是,只要是当前窗口循环,否则停止,这样可以减少CPU 的负担。同时,要实时提取clock ()函数,可用fix (clock),使提取的时间更美观。#158#长江大学学报(自科版)2005年4月第2卷第4期/理工卷第2卷第2期 Jour nal of Yangtze University (Nat Sci Edit)Apr 12005Vol 12No 14/Sci &Eng V,Vol 12No 12

MATLAB图像处理相关函数

一、通用函数: colorbar显示彩色条 语法:colorbar \ colorbar('vert') \ colorbar('horiz') \ colorbar(h) \ h=colorbar(...) \ colorbar(...,'peer',axes_handle) getimage 从坐标轴取得图像数据 语法:A=getimage(h) \ [x,y,A]=getimage(h) \ [...,A,flag]=getimage(h) \ [...]=getimage imshow 显示图像 语法:imshow(I,n) \ imshow(I,[low high]) \ imshow(BW) \ imshow(X,map) \ imshow(RGB)\ imshow(...,display_option) \ imshow(x,y,A,...) \ imshow filename \ h=imshow(...) montage 在矩形框中同时显示多幅图像 语法:montage(I) \ montage(BW) \ montage(X,map) \ montage(RGB) \ h=montage(...) immovie 创建多帧索引图的电影动画 语法:mov=immovie(X,map) \ mov=immovie(RGB) subimage 在一副图中显示多个图像 语法:subimage(X,map) \ subimage(I) \ subimage(BW) \ subimage(RGB) \ subimage(x,y,...) \ subimage(...) truesize 调整图像显示尺寸 语法:truesize(fig,[mrows mcols]) \ truesize(fig) warp 将图像显示到纹理映射表面 语法:warp(X,map) \ warp(I ,n) \ warp(z,...) warp(x,y,z,...) \ h=warp(...) zoom 缩放图像 语法:zoom on \ zoom off \ zoom out \ zoom reset \ zoom \ zoom xon \ zoom yon\ zoom(factor) \ zoom(fig,option) 二、图像文件I/O函数命令 imfinfo 返回图形图像文件信息 语法:info=imfinfo(filename,fmt) \ info=imfinfo(filename) imread 从图像文件中读取(载入)图像 语法:A=imread(filename,fmt) \ [X,map]=imread(filename,fmt) \

实验二 matlab图形绘制

实验二matlab图形绘制 一、实验目的 1、学习MATLAB图形绘制的基本方法; 2、熟悉和了解MATLAB图形绘制程序编辑的基本指令; 3、熟悉掌握利用MATLAB图形编辑窗口编辑和修改图形界面,并添加图形的各种标注; 二、实验原理 1.二维数据曲线图 (1)绘制单根二维曲线plot(x,y); (2)绘制多根二维曲线plot(x,y) 当x是向量,y是有一维与x同维的矩阵时,则绘制多根不同颜色的曲线。当x,y是同维矩阵时,则以x,y对应列 元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。 (3)含有多个输入参数的plot函数plot(x1,y1,x2,y2,…,xn,yn) (4)具有两个纵坐标标度的图形plotyy(x1,y1,x2,y2) 2.图形标注与坐标控制 1)title (图形名称) 2)xlabel(x轴说明) 3)ylabel(y轴说明) 4)text(x,y图形说明) 5)legend(图例1,图例2,…) 6)axis ([xmin xmax ymin ymax zmin zmax]) 3.图形窗口的分割 subplot(m,n,p) 4.三维曲线 plot3(x1,y1,z1,选项1,x2,y2,选项2,…,xn,yn,zn,选项n)

5.三维曲面 mesh(x,y,z,c) 与surf(x,y,z,c)。一般情况下,x ,y ,z 是维数相同的矩阵。X ,y 是网格坐标矩阵,z 是网格点上的高度矩阵,c 用于指定在不同高度下的颜色范围。 三、实验内容及步骤 1.绘制下列曲线: (1) 2 1100 x y += x=0:0.02:10; y=100./(1+x.^2); plot(x,y) title('my first plot'); xlabel('x'); ylabel('y'); grid on 截图:

基于MATLAB图像处理报告

基于M A T L A B图像处理报告一、设计题目 图片叠加。 二、设计要求 将一幅礼花图片和一幅夜景图片做叠加运算,使达到烟花夜景的美图效果。 三、设计方案 、设计思路 利用matlab强大的图像处理功能,通过编写程序,实现对两幅图片的像素进行线性运算,利用灰度变换的算法使图片达到预期的效果。 、软件介绍 MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB 也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户直接进行下载就可以用。

用matlab数字图像处理四个实验

数字图像处理 实验指导书

目录 实验一MATLAB数字图像处理初步实验二图像的代数运算 实验三图像增强-空间滤波 实验四图像分割 3

实验一 MATLAB数字图像处理初步 一、实验目的与要求 1.熟悉及掌握在MATLAB中能够处理哪些格式图像。 2.熟练掌握在MATLAB中如何读取图像。 3.掌握如何利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息。 4.掌握如何在MATLAB中按照指定要求存储一幅图像的方法。 5.图像间如何转化。 二、实验原理及知识点 1、数字图像的表示和类别 一幅图像可以被定义为一个二维函数f(x,y),其中x和y是空间(平面)坐标,f 在任何坐标处(x,y)处的振幅称为图像在该点的亮度。灰度是用来表示黑白图像亮度的一个术语,而彩色图像是由单个二维图像组合形成的。例如,在RGB彩色系统中,一幅彩色图像是由三幅独立的分量图像(红、绿、蓝)组成的。因此,许多为黑白图像处理开发的技术适用于彩色图像处理,方法是分别处理三副独立的分量图像即可。 图像关于x和y坐标以及振幅连续。要将这样的一幅图像转化为数字形式,就要求数字化坐标和振幅。将坐标值数字化成为取样;将振幅数字化成为量化。采样和量化的过程如图1所示。因此,当f的x、y分量和振幅都是有限且离散的量时,称该图像为数字图像。 作为MATLAB基本数据类型的数值数组本身十分适于表达图像,矩阵的元素和图像的像素之间有着十分自然的对应关系。 图1 图像的采样和量化 根据图像数据矩阵解释方法的不同,MA TLAB把其处理为4类: ?亮度图像(Intensity images)

用matlab绘制的漂亮图形

用matlab绘制的漂亮图形 1.不同坐标系下的图形对比 theta=0:pi/20:4*pi; phi= theta.^2- theta; [t,p]=meshgrid(theta,phi); r=t.*p; subplot(1,2,1);mesh(t,p,r); ylabel('x');xlabel('y');zlabel('z'); [x,y,z]=sph2cart(t,p,r); subplot(1,2,2);mesh(x,y,z); ylabel('x');xlabel('y');zlabel('z'); 2.球曲面的法线 [x,y,z]=sphere; Surfnorm(x,y,z)

3. x=rand(100,1)*16-8; y=rand(100,1)*16-8; r=sqrt(x.^2+y.^2)+eps; z=sin(r)./r; xlin=linspace(min(x),max(x),33); ylin=linspace(min(y),max(y),33); [X,Y]= meshgrid(xlin,ylin); Z=griddata(x,y,z,X,Y); mesh(X,Y,Z); axis tight;hold on; ylabel('x');xlabel('y');zlabel('z'); plot3(x,y,z,’r’,’MarkerSize’,15)

x=rand(1000,1)*16-8; y=rand(1000,1)*16-8; r=sqrt(x.^2+y.^2)+eps; z=sin(r)./r; xlin=linspace(min(x),max(x),99); ylin=linspace(min(y),max(y),99); [X,Y]= meshgrid(xlin,ylin); Z=griddata(x,y,z,X,Y); mesh(X,Y,Z); axis tight;hold on; ylabel('x');xlabel('y');zlabel('z'); plot3(x,y,z,'r','MarkerSize',30);

MatLab图形绘制功能

MatLab图形绘制功能MatLab图形绘制功能例子解读 一、二维平面图形 基本绘图函数 命令含义 plot 建立向量或矩阵各队队向量的图形 loglog x、y轴都取对数标度建立图形 semilogx x轴用于对数标度,y轴线性标度绘制图形semilogy y轴用于对数标度,x轴线性标度绘制图形title 给图形加标题 xlabel 给x轴加标记 ylabel 给y轴加标记 text 在图形指定的位置上加文本字符串 gtext 在鼠标的位置上加文本字符串 grid 打开网格线 plot绘图函数的叁数 字元颜色字元图线型态 y 黄色 . 点 k 黑色 o 圆 w 白色 x x b 蓝色 + + g 绿色 * * r 红色 - 实线

c 亮青色 : 点线 m 锰紫色 -. 点虚线 -- 虚线 hold on 命令用于在已画好的图形上添加新的图形 plot是绘制一维曲线的基本函数,但在使用此函数之前,我们需先定义曲线上每一点的x及y座标。下例可画出一条正弦曲线: x=0:0.001:10; % 0到10的1000个点的x座标 y=sin(x); % 对应的y座标 plot(x,y); % 绘图 Y=sin(10*x); plot(x,y,'r:',x,Y,'b') % 同时画两个函数 , 若要改变颜色,在座标对後面加上相关字串即可: x=0:0.01:10; plot(x,sin(x),'r') 若要同时改变颜色及图线型态(Line style),也是在坐标对後面加上相关字串 即可: plot(x,sin(x),'r*') 用axis([xmin,xmax,ymin,ymax])函数来调整图轴的范围 axis([0,6,-1.5,1]) MATLAB也可对图形加上各种注解与处理: xlabel('x轴'); % x轴注解 ylabel('y轴'); % y轴注解 title('余弦函数'); % 图形标题 legend('y = cos(x)'); % 图形注解 gtext('y = cos(x)'); % 图形注解 ,用鼠标定位注解位置 grid on; % 显示 格线

基于Matlab基本图像处理程序

图像读入 ●从图形文件中读入图像imread Syntax: A = imread(, fmt) :指定的灰度或彩色图像文件的完整路径和文件名。 fmt:指定图形文件的格式所对应的标准扩展名。如果imread没有找到所制定的文件,会尝试查找一个名为的文件。 A:包含图像矩阵的矩阵。对于灰度图像,它是一个M行N列的矩阵。如果文件包含RGB 真彩图像,则是m*n*3的矩阵。 ●对于索引图像,格式[X, map] = imread(, fmt) X:图像数据矩阵。 MAP:颜色索引表 图像的显示 ●imshow函数:显示工作区或图像文件中的图像 ●Syntax: imshow(I) %I是要现实的灰度图像矩阵 imshow(I,[low high],param1, val1, param2, val2,...) %I是要现实的灰度图像矩阵,指定要显示的灰度范围,后面的参数指定显示图像的特定参数 imshow(RGB) imshow(BW) imshow(X,map) %map颜色索引表 imshow() himage = imshow(...)

●操作:读取并显示图像 I=imread('C:\Users\fanjinfei\Desktop\baby.bmp');%读取图像数据 imshow(I);%显示原图像 图像增强 一.图像的全局描述 直方图(Histogram):是一种对数据分布情况的图形表示,是一种二维统计图表,它的两个坐标分别是统计样本和该样本对应的某个属性的度量。 图像直方图(Image Histogram):是表示数字图像中亮度分布的直方图,用来描述图象灰度值,标绘了图像中每个亮度值的像素数。 灰度直方图:是灰度级的函数,它表示图像中具有某种灰度级的像素的个数,反映了图像中某种灰度出现的频率。描述了一幅图像的灰度级统计信息。是一个二维图,横坐标为图像中各个像素点的灰度级别,纵坐标表示具有各个灰度级别的像素在图像中出现的次数或概率。 归一化直方图:直接反应不同灰度级出现的比率。纵坐标表示具有各个灰度级别的像素在图像中出现的概率。 图像的灰度直方图:是一个离散函数,表示图像每一灰度级与该灰度级出现概率的对应关系。 图像的灰度直方图运算: imhist()函数,其横坐标表示像素的灰度级别,纵坐标为像素点的个数。 ●Imhist函数=Display histogram of image data显示灰度直方图的函数 ●Syntax: ①imhist(I) % I为要计算的灰度直方图图像 ②imhist(I, n) % n指定的灰度级的数目,表示所有灰度级均匀分布在n个小区间内。 ③imhist(X, map) ④[counts,x] = imhist(...) %counts直方图数据向量。counts(i)第i个灰度区间中的像素数目。x是保存了对应的灰度小区间的向量。 注意:若调用时不接受这个函数的返回值,则直接显示直方图;在得这些返回数据之后,也可以使用stem(x,counts)手绘直方图。 ●例1:显示某一图像的灰度直方图

实验2matlab绘图操作

实验2 Matlab 绘图操作 实验目的: 掌握绘制二维图形的常用函数; 掌握绘制三维图形的常用函数; 掌握绘制图形的辅助操作。 实验内容: 设sin .cos x y x x ?? =+??+? ?23051,在x=0~2π区间取101点,绘制函数的曲线。 已知: y x =2 1,cos()y x =22,y y y =?312,完成下列操作: 在同一坐标系下用不同的颜色和线性绘制三条曲线; 以子图形式绘制三条曲线; 分别用条形图、阶梯图、杆图和填充图绘制三条曲线。 3. 已知:ln(x x e y x x ?+≤??=??+>??2 0102 ,在x -≤≤55区间绘制函数曲线。 4. 绘制极坐标曲线sin()a b n ρθ=+,并分析参数a 、b 、n 对曲线形状的影响。 5.在xy 平面内选择区域[][],,-?-8888 ,绘制函数z = 6. 用plot 函数绘制下面分段函数的曲线。 ,(),,x x f x x x x ?++>? ==??+-> x=(0:2*pi/100:2*pi);

>> y=+3*sin(x)/(1+x.^2))*cos(x); >> plot(x,y) 2.已知: y x =2 1,cos()y x =22,y y y =?312,完成下列操作: (1)在同一坐标系下用不同的颜色和线性绘制三条曲线; >> x= linspace(0, 2*pi, 101); >> y1=x.*x; >> y2=cos(2x); >> y3=y1.*y2; plot(x,y1,'r:',x,y2,'b',x,y3, 'ko') (2)以子图形式绘制三条曲线; >> subplot(2,2,1),plot(x,y1) subplot(2,2,2),plot(x,y2) subplot(2,2,3),plot(x,y3)

基于MATLAB彩色图像及增强处理设计方法讲解

课程设计 题目基于MATLAB彩色图像及增强处理设计方法 学生姓名曹刘惠子学号 1110064087 所在院(系)物电学院 专业班级电子信息科学与技术1103 指导教师蒋媛 完成地点博源楼1102教室

基于MATLAB彩色图像及增强处理设计方法 曹刘惠子 (陕西理工学院物电学院电子信息科学与技术专业1103班级,陕西汉中 723000) 指导老师:蒋媛 [摘要]图像增强是指依据图像所存在的问题,按特定的需要突出一幅图像中的某一些信息,同时,削弱或去除某些冗余信息的处理方法。其主要目的是使得处理后的图像对给定的应用比原来的图像更加有效同时可以有效的改善图像质量。图像增强单纯从技术上可分成两大类:一类是频域处理法;一类是空域处理法。大多数是以灰度映射变换为基础的,所用的映射变换取决于增强的目的。彩色图像比灰度图像包含更多的信息,无论是对人们的视觉感受,还是后续的图像理解与分析,彩色图像都具有灰度图像无可比拟的优越性。本文主要研究基于MATLAB彩色图像的增强方法。不同原理产生的彩色图像有不同的处理方法,故在本文中主要论述彩色图像增强用法之间以及仿真结果的比较。 运用MATLAB 软件实现彩色图像增强仿真,比较处理方法。 [关键词]彩色图像图像增强时域频域MATLAB

目录 1绪论 (5) 1.1课题研究目的及意义 (5) 1.2本课题的研究内容 (5) 2彩色图像及其增强处理设计方法 (5) 2.1基本概念 (5) 2.2图像处理工具 (5) 2.3伪彩色增强 (6) 2.4真彩色增强 (8) 2.5假彩色增强 (10) 3 程序实现及比较 (10) 3.1伪彩色图像增强 (10) 3.2真彩色图像增强 (11) 3.3假彩色图像增强 (13)

Matlab图像处理函数汇总

1、图像的变换 ①fft2:fft2函数用于数字图像的二维傅立叶变换,如:i=imread('104_8.tif'); j=fft2(i); ②ifft2::ifft2函数用于数字图像的二维傅立叶反变换,如: i=imread('104_8.tif'); j=fft2(i); k=ifft2(j); 2、模拟噪声生成函数和预定义滤波器 ①imnoise:用于对图像生成模拟噪声,如: i=imread('104_8.tif'); j=imnoise(i,'gaussian',0,0.02);%模拟高斯噪声 ②fspecial:用于产生预定义滤波器,如: h=fspecial('sobel');%sobel水平边缘增强滤波器 h=fspecial('gaussian');%高斯低通滤波器 h=fspecial('laplacian');%拉普拉斯滤波器 h=fspecial('log');%高斯拉普拉斯(LoG)滤波器 h=fspecial('average');%均值滤波器 2、图像的增强 ①直方图:imhist函数用于数字图像的直方图显示,如: i=imread('104_8.tif'); imhist(i); ②直方图均化:histeq函数用于数字图像的直方图均化,如: i=imread('104_8.tif'); j=histeq(i); ③对比度调整:imadjust函数用于数字图像的对比度调整,如:i=imread('104_8.tif'); j=imadjust(i,[0.3,0.7],[]); ④对数变换:log函数用于数字图像的对数变换,如: i=imread('104_8.tif'); j=double(i);

Matlab中文教程共63页

MatLab简介 MATLAB是什么? 典型的使用包括: 数学和计算 算术发展模型, 模拟,和原型 数据分析,开发,和可视化 科学和工程图学 应用发展包括图形用户界面设计 MATLAB表示矩阵实验室。 MATLAB系统 MATLAB系统由5主要的部分构成: 1. MATLAB语言。这是高阶的矩阵/数组语言,带控制流动陈述,函数,数据结构,输入/输出,而且面向目标的编程特点。 Ops 操作符和特殊字符。 Lang 程序设计语言作。 strfun 字符串。 iofun 输入/输出。

timefun 时期和标有日期。 datatypes数据类型和结构。 2. MATLAB工作环境。这是你作为MATLAB用户或程序编制员的一套工具和设施。 3. 制图这是MATLAB制图系统。它为2维上,而且三维的数据可视化,图象处理,动画片制作和表示图形包括高阶的指令在内。它也为包括低阶的指令在内,允许你建造完整的图形用户界面(GUIs),MATLAB应用。制图法功能在MATLAB工具箱中被组织成5文件夹: graph2d 2-的维数上的图表。 graph3d 三维的图表。 specgraph 专业化图表。 graphics 制图法。 uitools 图形用户界面工具。 4. MATLAB的数学的函数库。数学和分析的功能在MATLAB工具箱中被组织成8文件夹。 elmat 初步矩阵,和矩阵操作。 elfun 初步的数学函数。 specfun 专门的数学函数。 matfun 矩阵函数-用数字表示的线性的代数。 datafun 数据分析和傅立叶变换。 polyfun 插入物,并且多项式。

相关文档
相关文档 最新文档