收藏 分享(赏)

MATLAB图像信息处理技术.doc

上传人:j35w19 文档编号:7550399 上传时间:2019-05-21 格式:DOC 页数:8 大小:266KB
下载 相关 举报
MATLAB图像信息处理技术.doc_第1页
第1页 / 共8页
MATLAB图像信息处理技术.doc_第2页
第2页 / 共8页
MATLAB图像信息处理技术.doc_第3页
第3页 / 共8页
MATLAB图像信息处理技术.doc_第4页
第4页 / 共8页
MATLAB图像信息处理技术.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

1、MATLAB 在图像信息处理中的应用MATLAB 是集公式演算推导与数值计算于一体的可视化科学计算软件,它的工具箱对相关学科和各种基于技术都采用了当今最先进的算法有极强的图形和图像处理功能,其语法简单易学。为此,介绍了如何利用 MATLAB 图像工具箱来实现图像处理基本操作,说明如何用 MATLAB 实现经典的图像处理方法与技巧,验证了该语言是简洁的易学的。图形/图像处理技术包括对位图图像和矢量图形两方面的处理内容。图形处理是指在计算机环境下,实现对图形的表示、绘制、处理、输出等;而图像处理则包括多非数字化的图形/图像信息进行采样、量化及编码实现数字化,然后对数字化编辑处理、压缩、存储、传输,

2、当需要输出图像时,再将其解压并还原。其中的数字化编辑处理主要指对已经数字化了的图像信息所进行的具体技术性处理,以达到所希望的应用效果。本文主要针对图形的表示、绘制、处理、输出。最新版本软件工具实现数字信号处理、图像处理、小波分析和系统仿真等相关应用领域有了新的突破。MATLAB 应用领域主要有三个方面:数字信号处理、系统建模与仿真、图像处理。MATLAB 具有灵活的二维与三维绘图功能,用户可以方便迅速地用图形、图像、声音、动画等多媒体技术直接表述数值计算结果,可以选择不同坐标系、可以设置颜色、线性、视角,还可以在图中加上比例尺、标题等并且还可以将图形嵌入到用户的 WORD 文件中。MATLAB

3、 中基本数据结构式由一组有序的实数或复数元素构成的数组,图像对象的表达采用的是一组 有序的灰度或色彩数据元素构成的实值数组。MATLAB 中通常用二维数组来存储图像,数组的每一个元素对应与图像的一个像素值图像是一种可视化的信息, 图像信号是图像信息的理论描述方法, 图像信号按其内容变化与时间的关系来分, 主要包括静态图像和动态图像两种。 静态图像其信息密度随空间分布, 且相对时间为常量; 动态图像也称时变图像,其空间密度特性是随时间而变化的。 人们经常用静态图像的一个时间序列来表示一个动态图像。 图像分类还可以按其他方式进行: 如按其亮度等级的不同可分为二值图像和灰度图像; 按其色调的不同可分

4、为黑白图像和彩色图像; 按其所占空间的维数不同可分为平面的二维图像和立体的三维图像等等。 图像信号的记录、 存储和传输可以采用模拟方式或数字方式。 传统的方式为模拟方式, 例如, 目前我们在电视上所见到的图像就是以一种模拟电信号的形式来记录, 并依靠模拟调幅的手段在空间传播的。 将模拟图像信号经A/D 变换后就得到数字图像信号, 数字图像信号便于进行各种处理, 例如最常见的压缩编码处理就是在此基础上完成的。 本书介绍的图像信息处理技术就是针对数字图像信号的。 图像处理应用 MATLAB 图像处理工具箱支持四种图像类型,分别为真彩色图像、索引色图像、灰度图像、二值图像,由于有的函数对图像类型有限

5、制,这四种类型可以用工具箱的类型转换函数相互转换。MATLAB 可操作的图像文件包括 BMP、HDF、JPEG、PCX、TIFF、XWD 等格式。下面就图像处理的基本过程讨论工具箱所实现的常用功能。 下面就举一些图像处理 MATLAB 仿真的例子:双线性插值双线性插值(method=linear),返回当前输入相邻四点输出的双线性加权,它是MATLAB 默认的方法。双线性内插值:对于一个目的像素,设置坐标通过反向变换得到的浮点坐标为(i+u,j+v) ,其中 i、j 均为非负整数,u、v 为0,1) 区间的浮点数,则这个像素得值 f(i+u,j+v) 可由原图像中坐标为 (i,j)、(i+1,

6、j)、(i,j+1)、(i+1,j+1) 所对应的周围四个像素的值决定,即:f(i+u,j+v) = (1-u)(1-v)f(i,j) + (1-u)vf(i,j+1) + u(1-v)f(i+1,j) + uvf(i+1,j+1)其中f(i,j)表示源图像(i,j)处的的像素值,以此类推,这就是双线性内插值法。双线性内插值法计算量大,但缩放后图像质量高,不会出现像素值不连续的的情况。由于双线性插值具有低通滤波器的性质,使高频分量受损,所以可能会使图像轮廓在一定程度上变得模糊。3)三次样条插值(method= spline),返回当前输入在采用三次样条函数上的取值。x,y = meshgrid

7、(-3:0.8:3); z = peaks(x,y);xi,yi = meshgrid(-3:0.25:3); zi_nearest = interp2(x,y,z,xi,yi,nearset); zi_linear = interp2(x,y,z,xi,yi); zi_spline = interp2(x,y,z,xi,yi,spline); figure;hold on;subplot(2,2,1);meshc(x,y,z);title();subplot(2,2,2);meshc(xi,yi,zi_nearest);title();subplot(2,2,3);meshc(xi,yi,z

8、i_linear);title();subplot(2,2,4);meshc(xi,yi,zi_spline);title()在同一坐标内,分别用不同线型和颜色绘制曲线 )4cos(2.015.0xeyx 和)cos(225.0xeyx ,并标记两曲线交 叉点 x=0 :pi/100 :2*pi y1=0.2*exp(0.5*x).*cos(4*pi*x); y2=2*exp(0.5*x).*cos(pi*x); Ploty(x1,y1,x2,y2)【例 1】 利用一维快速傅立叶插值实现数据增采样,其实现的 MATLAB 代码如下:clear all;x=0:1.1:8;y=sin(x);n=

9、2*length(x); %增采样 1 倍yi=interpft(y,n); %采用一维快速傅立叶插值xi=0:0.55:8.3; %要插值的数据figure; %画图显示hold on;plot(x,y,ro,xi,yi,b-);legend(原始数据, 插值后结果)【例 2】 二维插值函数实例分析,分别采用nearest、linear、spline 和cubic 进行二维插值,并绘制三维表面图。其实现的 MATLAB 代码如下: clear all;x,y=meshgrid(-4:0.8:4); %原始数据z=peaks(x,y);xi,yi=meshgrid(-4:0.2:4); %插值

10、数据zi_nearest=interp2(x,y,z,xi,yi,nearest); %临近点插值zi_linear=interp2(x,y,z,xi,yi); %系统默认为线性插值zi_spline=interp2(x,y,z,xi,yi,spline); %三次样条插值zi_cubic=interp2(x,y,z,xi,yi,cubic); %三次多项式插值figure; %数据显示hold on;subplot(321);surf(x,y,z); %绘制原始数据点title(原始数据 );subplot(322);surf(xi,yi,zi_nearest); %绘制临近点插值的结果ti

11、tle(临近点插值);subplot(323);surf(xi,yi,zi_linear); %绘制线性插值的结果title(线性插值 );subplot(324);surf(xi,yi,zi_spline); %绘制三次样条插值的结果title(三次样条插值);subplot(325);surf(xi,yi,zi_cubic); %绘制三次多项式插值的结果title(三次多项式插值);例如:在一 天 24 小时内,从零点开始每间隔 2 小时测得的环境温度数据分别为12,9,9,10,18 ,24,28,27,25,20,18,15,13,推测中午 12 点(即 13 点)时的温度x=0:2:

12、24;y=12 9 9 10 18 24 28 27 25 20 18 15 13;a=13;y1=interp1(x,y,a,“spline“)结果为: 27.8725若要得到一天 24 小时的温度曲线,则:xi=0:1/3600:24;yi=interp1(x,y,xi, “spline“);plot(x,y,“o“ ,xi,yi)绘制三维曲面图z=sin(x+siny)-x/10 x,y=meshgrid(0 :0.25 :4*pi) Z=sin(x+sin(y)-x/10) Mesh(x,y,z)此外,还有 meshc(x,y,z,c) 带等高线的三维网格曲面函数 meshz(x,y,

13、z,c) 带底座的三维网格曲面函数 总结 MATLAB 语言简洁,可读性强,工具箱涉及的专业领域广泛且功能强大。图像工具箱几乎包括所有经典的图像处理方法。由于工具箱具有可靠性和开放性,我们可以方便地直接加以使用,也可以把自己的代码加到工具箱中以改进函数功能,同时,MATLAB 中的小波工具箱也有许多函数可运用于图像处理技术。因此,在图像处理技术中使用 MATLAB 语言可以快速实现模拟仿真,大大提高实验效率,如果要开发实用程序。当然,MATLAB 中图像处理工具箱中所提供的图像处理功能远不止我上述的几种,如图像的几何运算,滤波器的设计,二值图像的处理(包括形态学的操作,特征测量等)以及区域处理等都可以在 MATLAB 的图像处理工具箱中找到处理的方法。我们可以通过MATLAB 提供的强大的帮助功能中得到他们的用法。通过编写 MATLAB 的程序文件(M 文件)可以建立自己的图像处理工具箱。 可以说,MATLAB 为数字图像处理提供了一种简单、快捷而又有效的方法,大大提高了数字图像处理的效率及效果。只要稍有编程基础,就可以掌握 MATLAB 程序的编写,并且应用到图像处理的各个方向。 参考文献:多媒体通信技术百度文库MATLAB 实用教程

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

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报