数字图像处理matlab编程课件.ppt

上传人(卖家):三亚风情 文档编号:2237694 上传时间:2022-03-24 格式:PPT 页数:55 大小:780.50KB
下载 相关 举报
数字图像处理matlab编程课件.ppt_第1页
第1页 / 共55页
数字图像处理matlab编程课件.ppt_第2页
第2页 / 共55页
数字图像处理matlab编程课件.ppt_第3页
第3页 / 共55页
数字图像处理matlab编程课件.ppt_第4页
第4页 / 共55页
数字图像处理matlab编程课件.ppt_第5页
第5页 / 共55页
点击查看更多>>
资源描述

1、Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学 MATLAB是一种流行的工程软件,英文全称(MatrixLaboratory)即矩阵实验室。除具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多. MATLAB概述概述Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学nMatlab的计算能力的计算能力MatlabMatlab基础基础Matl

2、ab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学MatlabMatlab基础基础Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学MatlabMatlab基础基础 - Matlab语句语句Matlab&Matlab&数字图像处理数字图像处理Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学MatlabMatlab基础基础n基本的数据结构基本的数据结构 - 向量向量 一维的矩阵一维的矩阵 行表示行表示: 元素用空格分隔元素用空格分隔 列表示列表示: 元素用分号分隔元素用分号分隔 - 矩阵矩阵 两维的数组两维的数组 行内元素用

3、空格分隔行内元素用空格分隔 列间元素用分号分隔列间元素用分号分隔元素的访问元素的访问 x(2) 向量向量 x 的第二个元素的第二个元素A(3,3) 矩阵矩阵 A 第三个对角元第三个对角元素素Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学n创建向量创建向量 - 命令行输入模式命令行输入模式基本格式基本格式X=(startValue:INC: endValue) 注解注解: INC为为递增步长,可正可负递增步长,可正可负 x=1 3 pi 3+5i x = 1.0000 3.0000 3.1416 3.0000 + 5.0000i MatlabMatlab基础基础Ma

4、tlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学MatlabMatlab基础基础n创建列向量创建列向量- - 使用分号作为元素与元素之间的间隔使用分号作为元素与元素之间的间隔- - 使用转置运算符使用转置运算符“ ”a=1;2;3;4;5;6或或a=(1:6) a = 1 2 3 4 5 6Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学n向量元素的访问向量元素的访问 访问向量的元素只要使用相应元素的索引即可访问向量的元素只要使用相应元素的索引即可B=3 2 7 4 9 6 1 8 0 5; B(3)ans = 7 B(1 3 7)ans =

5、 3 7 1B(1:3:5)ans = 3 4MatlabMatlab基础基础Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学n向量元素的访问向量元素的访问关键字关键字end表示向量中最后一表示向量中最后一 个元素的序号个元素的序号访问向量元素时,序号的数值必须介于访问向量元素时,序号的数值必须介于1end之间之间B=3 2 7 4 9 6 1 8 0 5; B(1,3,7)ans = 3 7 1B(1:end)ans = 3 2 7 4 9 6 1 8 0 5MatlabMatlab基础基础Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大

6、学B=3 2 7 4 9 6 1 8 0 5; B(3) B(end-3:end)ans = ans = 7 1 8 0 5 B(1 3 7) B(1:5,5:-1:1)ans = ans = 3 7 1 ? B(1:3:5) B(1:5;5:-1:1)ans = ans = 3 4 ?MatlabMatlab基础基础Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学MatlabMatlab基础基础B=3 2 7 4 9 6 1 8 0 5; B(3) B(end-3:end)ans = ans = 7 1 8 0 5 B(1 3 7) B(1:5,5:-1:1)an

7、s = ans = 3 7 1 3 2 7 4 9 9 4 7 2 3 B(1:3:5) B(1:5;5:-1:1)ans = ans = 3 4 ?Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学MatlabMatlab基础基础B=3 2 7 4 9 6 1 8 0 5; B(3) B(end-3:end)ans = ans = 7 1 8 0 5 B(1 3 7) B(1:5,5:-1:1)ans = ans = 3 7 1 3 2 7 4 9 9 4 7 2 3 B(1:3:5) B(1:5;5:-1:1)ans = ans = 3 4 3 2 7 4 9 9

8、 4 7 2 3Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学n创建矩阵创建矩阵 - 直接输入法直接输入法整个矩阵的元素必须用整个矩阵的元素必须用 括住括住同一行的矩阵元素之间必须用逗号或空格分隔同一行的矩阵元素之间必须用逗号或空格分隔矩阵的行与行之间用分号分隔,也可以在需要矩阵的行与行之间用分号分隔,也可以在需要分行的地方用回车键间隔分行的地方用回车键间隔A = 1,2,3 ; 4,5,6;7,8,9 A = 1 2 3 4 5 6 7 8 9MatlabMatlab基础基础Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学n创建矩阵创

9、建矩阵 - 矩阵生成函数矩阵生成函数MatlabMatlab基础基础函函 数数说说 明明zeros产生元素全为产生元素全为0的矩阵的矩阵ones产生元素全为产生元素全为1的矩阵的矩阵eye产生单位矩阵产生单位矩阵rand产生均匀分布的随机数矩阵,数值范围(产生均匀分布的随机数矩阵,数值范围(0,1)randn产生均值为产生均值为0,方差为,方差为1的正态分布随机数矩阵的正态分布随机数矩阵diag获取矩阵的对角线元素,也可生成对角矩阵获取矩阵的对角线元素,也可生成对角矩阵tril产生下三角矩阵产生下三角矩阵triu产生上三角矩阵产生上三角矩阵Matlab&Matlab&数字图像处理数字图像处理南

10、京师范大学南京师范大学n创建矩阵创建矩阵 - 矩阵生成函数矩阵生成函数MatlabMatlab基础基础 A=zeros(3,3)A = 0 0 0 0 0 0 0 0 0 A=eye(3,3)A = 1 0 0 0 1 0 0 0 1 A=rand(3,3)A = 0.9501 0.4860 0.4565 0.2311 0.8913 0.0185 0.6068 0.7621 0.8214 A=ones(3,3)A = 1 1 1 1 1 1 1 1 1Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学MatlabMatlab基础基础n矩阵元素的访问矩阵元素的访问-访问

11、矩阵的元素需要使用矩阵元素的索引访问矩阵的元素需要使用矩阵元素的索引使用矩阵元素的行列全下标形式使用矩阵元素的行列全下标形式A(A(m,nm,n) )使用矩阵元素的单下标形式使用矩阵元素的单下标形式A(A(ii) )矩阵元素的单下标是矩阵元素在内存中存储矩阵元素的单下标是矩阵元素在内存中存储的序列号,一般地,同一个矩阵的元素在连的序列号,一般地,同一个矩阵的元素在连续的内存单元中(元素的排列以列元素优先)续的内存单元中(元素的排列以列元素优先)Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学矩阵元素的访问(续)矩阵元素的访问(续)4 110 51 96 132 17

12、8 22 69 104 147 187 35 77 111 155 190 43 84 125 168 20A(1:4,5)A(:,5)A(:,end)A(17:20)A(2:4,2:3)A(2 3 4,2 3)A(1,2)A(5)Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学MatlabMatlab基础基础 - 矩阵整形操作矩阵整形操作 维数查询维数查询 size(A); 功能功能: 返回行列值返回行列值 举例举例: A=1:4; 5:8; 9:12; m,n=size(A) m = 3 n = 4Matlab&Matlab&数字图像处理数字图像处理南京师范大学

13、南京师范大学Matlab编程编程n 程序结构程序结构 - 顺序结构顺序结构 逐条顺序执行程序指令或逐条顺序执行程序指令或模块模块 - 选择结构选择结构 依据条件选择执行程序指令或依据条件选择执行程序指令或模块模块 if 语句语句 % 条件选择条件选择 switch 语句语句 % 多值切换多值切换Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab编程编程 (续续)n 程序控制语句程序控制语句 - 选择结构选择结构 依据条件选择执行程序指令或依据条件选择执行程序指令或模块模块 if 语句语句 % 条件选择条件选择 关键词关键词: if, else, 和和 el

14、seif 基本格式基本格式: if logical_expression block of statements endMatlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab编程编程 (续续) if 语句一般形式语句一般形式 if logical_expression block of statements elseif logical_expression block of statements else block of statements endMatlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab编程编程 (续续)

15、if 语句实例语句实例 (续续) if x 0 disp(x is positive); elseif x 0 disp(x is negative); else disp(x is exactly zero); endMatlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab编程编程 (续续) switch 语句语句 一般形式一般形式 switch expression case value1, block of statements case value2, block of statements . otherwise, block of statement

16、s endMatlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab编程编程 (续续) switch 语句实例语句实例 color = .; % color is a string switch color case red disp(Color is Red); case blue disp(Color is Blue); case green disp(Color is Green); otherwise disp(Color is not RGB); endMatlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab编程编程 (续

17、续) - 循环结构循环结构 根据条件重复执行程序指令或模块根据条件重复执行程序指令或模块 for 语句语句 % % 计数循环计数循环 一般形式一般形式 for index = expression block of statements endMatlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab编程编程 (续续) - 循环结构循环结构 根据条件重复执行程序指令或模块根据条件重复执行程序指令或模块 for 语句语句 % % 计数循环计数循环 while 语句语句 % % 条件循环条件循环 Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范

18、大学Matlab编程编程 (续续) for 语句实例语句实例 x = 1:5; % create a row vector sumx = 0; % initialize the sum for k = 1: length(x) sumx = sumx + x(k); end for x = 0:pi/15:pi fprintf(%8.2f %8.5fn,x,sin(x); endMatlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab编程编程 (续续) while 语句语句 一般形式一般形式 while expression block of statement

19、s endMatlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab编程编程 (续续) while 语句实例语句实例: 循环中断控制循环中断控制 x = rand(1,10); k = 1; while k0.8 break end k = k + 1; endMatlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab绘图绘图n二维图形二维图形 - plot 二维曲线绘图函数二维曲线绘图函数 基本形式基本形式 plot(x,y,s) x,y 是相同类型的等长向量是相同类型的等长向量 s 可选用于控制图形属性可选用于控制图形属性 原理原

20、理: 点点线线 输入输入: 点坐标向量点坐标向量 输出输出: 插值曲线插值曲线Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab绘图绘图 (续续)n采样点对绘图的影响采样点对绘图的影响 - 曲线实曲线实例例:y=sin(x), 0 x x=0:0.5:2*pi; y=sin(x); plot(x,y,.) 提供曲线的提供曲线的插值点稀疏插值点稀疏Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab绘图绘图 (续续) n采样点对绘图的影响采样点对绘图的影响(续续) - 曲线实曲线实例例:y=sin(x), 0 x x=0:

21、0.1:2*pi; y=sin(x); plot(x,y) Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab绘图绘图 (续续)n函数函数 Plot 常用的使用格式常用的使用格式 - plot(x,y): 单条曲线单条曲线 - plot(x1,y1,x2,y2,): 多条曲线多条曲线 - plot(x,y,s): 带属性修饰的曲线带属性修饰的曲线 - s : 属性开关描述自符串变量属性开关描述自符串变量Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab绘图绘图 (续续) n图形颜色、标记和线形参数表图形颜色、标记和线形

22、参数表 线型线型基本点标记基本点标记 颜色颜色- 实线实线: 虚线虚线-. 点划线点划线- 间断线间断线. 点点o 小圆圈小圆圈x 叉子符叉子符+ 加号加号* 星号星号s 方格方格d 菱形菱形y 黄色黄色 m 棕色棕色 c 青色青色r 红色红色g 绿色绿色b 蓝色蓝色w 白色白色k 黑色黑色Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab绘图绘图 (续续)n图形的修饰与控制函数图形的修饰与控制函数 title 给图形加标题给图形加标题 xlable 给给x轴加标注轴加标注 ylable 给给y轴加标注轴加标注 text 在图形指定的任意位置加标注在图形指

23、定的任意位置加标注 axis 控制坐标轴刻度控制坐标轴刻度Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab绘图绘图 (续续)n图形分割函数图形分割函数 subplot 功能功能: 实现多个图形窗口实现多个图形窗口 clear t=0:pi/10:2*pi; y1=sin(t); y2=cos(t); y3=cos(t+pi/2); y4=cos(t+pi); %将图形窗口分割成两将图形窗口分割成两 行两列行两列,图形画在图形画在 第第1行第行第1列的窗口列的窗口subplot(2,2,1);plot(t,y1);%图形画在第图形画在第1行第行第2列列su

24、bplot(2,2,2); plot(t,y2);Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab绘图绘图 (续续)n图形分割函数图形分割函数 subplot (续续) %图形画在第图形画在第2行第行第1列列 subplot(2,2,3); plot(t,y3); %图形画在第图形画在第2行第行第2列列 subplot(2,2,2); plot(t,y4);Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab图像编程图像编程n图像的读取图像的读取 imreadimread语句语句 example: f = imread

25、(bed.jpg); n图像的大小图像的大小 sizesize语句语句 example: f = imread(bed.jpg);size(f) Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab图像编程图像编程n图像的显示图像的显示 imshowimshow语句语句 example: f = imread(bed.jpg);imshow(f););g = imread(fly.jpg);imshow(f),figure,imshow(g); Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab图像编程图像编程n图像的保

26、存图像的保存 imwriteimwrite语句语句 example: imwrite(f,filename); Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab图像编程图像编程n图像数据类转换函数图像数据类转换函数 im2uint8 im2uint8 语句语句im2double im2double 语句语句 Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab图像编程图像编程n灰度变换函数灰度变换函数 imadjustimadjust语句语句 imadjust(f,low_in,high_in, low_out,hig

27、h_out,gamma); Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab图像编程图像编程n直方图处理函数直方图处理函数 imhistimhist语句语句 h=imhist(f); histeqhisteq语句语句 h=histeq(f); Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学Matlab灰度变换实例灰度变换实例0.3r r 0.65S =Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学图像的空间滤波图像的空间滤波n噪声函数噪声函数 g = imnoise (f , type ,par

28、ameters)Example:(1) 高斯噪声 g = imnoise(f,gaussian,0,0.01); (2) 椒盐噪声 g = imnoise(f,salt & pepper,0.5); Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学图像的空间滤波图像的空间滤波n线性空间滤波函数线性空间滤波函数 g = imfilter(f, w, mode ,boundary_options,size_options) 滤波类型(filtering_mode)corr滤波器通过使用相关来完成。该值是默认值。conv滤波器通过使用卷积来完成边界填充选项(boundar

29、y_options)P输入图像的边界通过用值P来扩展。P的默认值为0。replicate图像大小通过复制外边界的值来扩展。symmetric图像大小通过反射其边界来扩展。circular图像大小通过将图像看成是二维周期函数的一个周期来扩展大小选项(size_options)full输出图像的大小与被填充后图像的大小相同same输出图像的大小与输入图像的大小相同Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学图像的空间滤波图像的空间滤波n中值滤波函数中值滤波函数 g = medfilt2(f , m,n ,padopt)说明:f表示待处理的图像,m n表示模板的尺寸p

30、adopt指定了三个可能的边界填充选项之一:nzeros(默认值)。nsymmetric,镜像反射。nindexed,double类图像,以1填充,否则以0填充。 Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学图像的二值处理图像的二值处理n标签函数标签函数 L , num = bwlabel(f, conn);说明:f 表示待处理的图像,conn 表示指定的期望连接(4 or 8) Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学图像的二值处理图像的二值处理n腐蚀函数腐蚀函数 imerode(f, se);说明:f 表示待处理的图像,s

31、e 表示结构元素 Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学图像的二值处理图像的二值处理n膨胀函数膨胀函数 imdilate(f, se);说明:f 表示待处理的图像,se 表示结构元素 Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学图像的二值处理图像的二值处理n开运算函数开运算函数 imopen(f, se);说明:f 表示待处理的图像,se 表示结构元素 Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学图像的二值处理图像的二值处理n闭运算函数闭运算函数 imclose(f, se);说明:f 表示待处理的图像,se 表示结构元素 Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学人有了知识,就会具备各种分析能力,明辨是非的能力。所以我们要勤恳读书,广泛阅读,古人说“书中自有黄金屋。”通过阅读科技书籍,我们能丰富知识,培养逻辑思维能力;通过阅读文学作品,我们能提高文学鉴赏水平,培养文学情趣;通过阅读报刊,我们能增长见识,扩大自己的知识面。有许多书籍还能培养我们的道德情操,给我们巨大的精神力量,鼓舞我们前进。Matlab&Matlab&数字图像处理数字图像处理南京师范大学南京师范大学

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(数字图像处理matlab编程课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|