当前位置:文档之家› MATLAB图像处理GUI介绍

MATLAB图像处理GUI介绍


第10章 MATLAB图像处理GUI介绍
图10.2 impixelinfo处理下的图像界面
第10章 MATLAB图像处理GUI介绍
下面的代码实现了对特定目标图像的处理,方法是将图 像句柄赋予GUI工具,其中imdisplayrange (himage)为图像灰 度值的范围,处理界面如图10.3所示。
第10章 MATLAB图像处理GUI介绍
10.2 图像处理GUI模块介绍
除了上面介绍的impixelinfo和 imdisplayrange模块以外, 下面介绍MATLAB中其它一些常用的GUI模块,利用这些 模块,用户可以自由组合出具有一定功能的图像处理程序。
第10章 MATLAB图像处理GUI介绍
第10章 MATLAB图像处理GUI介绍
图10.1 imshow显示的图像
第10章 MATLAB图像处理GUI介绍
(2) 创建与目标图像相关的GUI。 在用imshow显示图像后,使用返回的图像句柄建立GUI 或在当前默认的图像句柄下,调用GUI工具可使GUI定位于 目标图像。例如下面的代码实现了调用像素信息GUI impixelinfo对图像信息的分析,如图10.2所示,鼠标在图像 上移动时,对应位置上的像素值就显示在图像左下方。 imshow('pout.tif'); impixelinfo
1.图像对比度调节(Adjust Contrast tool) 使用imcontrast可以调用图像对比度控制对话框,使用 对话框中的控件条可以自由地调节图像的显示对比度,其代 码如下: imshow('pout.tif') imcontrast 或 h = imshow('pout.tif') imcontrast(h) 运行结果如图10.4所示。
第10章 MATLAB图像处理GUI介绍
图10.7 imageinfo显示图像信息
第10章 MATLAB图像处理GUI介绍
图10.5 imcrop对图像进行的局部选取
第10章 MATLAB图像处理GUI介绍
在imcrop中加入坐标值可以实现在特定矩形中的图像选 取,代码如下:图10.6 mdistline测量图像距离
I = imread('circuit.tif'); I2 = imcrop(I,[75 68 130 112]); imshow(I), figure, imshow(I2)
使用GUI工具处理图像可分为以下几个步骤。
第10章 MATLAB图像处理GUI介绍
(1) 显示目标图像。 一般使用imshow函数显示图像,如himage = imshow('pout.tif'),显示结果如图10.1所示。返回的变量 himage是图像pout.tif的图像句柄,图像句柄类似于文件句柄, 可用于其它GUI工具作为图像处理的入口参数。
图10.6 mdistline测量图像距离
第10章 MATLAB图像处理GUI介绍
4. 图像信息显示(Image Information tool) 使用imageinfo可以显示图像的详细信息,如图像格式、 大小、宽度和高度等,其代码如下: h = imshow(' peppers.png'); info = imfinfo(' peppers.png'); imageinfo(h,info); 其中imfinfo得到的是图像的基本信息,存储在metadata数据 结构中。显示界面如图10.7所示。如果调用imageinfo(h),则 只显示图像的详细信息(image details)。
himage = imshow('pout.tif'); hpixelinfopanel = impixelinfo(himage); hdrangepanel = imdisplayrange(himage);
第10章 MATLAB图像处理GUI介绍
图10.3 imdisplayrange处理下的图像界面
第10章 MATLAB图像处理GUI介绍
由上面的示例还可看出,impixelinfo和imdisplayrange作 为两个不同的GUI模块同时处于工作状态,这是GUI模块化 处理与一般图像处理函数之间的明显区别。
第10章 MATLAB图像处理GUI介绍
(3) 建立GUI和目标图像的互动连接。 由上面介绍可看出GUI模块与目标图像的连接是自动建 立的,但用户也可以通过回调函数(CallBack)建立各个工作 中的GUI模块之间的联系,这将在10.3节GUI编程中加以介 绍。
第10章 MATLAB图像处理GUI介绍
第10章 MATLAB图像处理GUI介绍
10.1 图像处理GUI概述 10.2 图像处理GUI模块介绍 10.3 模块化图像处理GUI编程 习题
第10章 MATLAB图像处理GUI介绍
10.1 图像处理GUI概述
在使用GUI工具时,可以直接从命令栏中键入 GUI工具名称、被处理的图像(以下称为“目标图 像”),作为参数赋给GUI工具。MATLAB提供各种不 同功能的GUI模块。在实现处理功能时,GUI工具既 可以独立使用也可以联合使用,是一种典型的模块化 处理方式。
第10章 MATLAB图像处理GUI介绍
3. 距离测量(Distance tool) 使用mdistline可以实现对图像中两点距离的测量,其代 码如下: imshow('pout.tif') mdistline 测量结果如图10.6所示,距离一般用像素个数表示。
第10章 MATLAB图像处理GUI介绍
第10章 MATLAB图像处理GUI介绍
图10.4 imcontrast模块界面
第10章 MATLABห้องสมุดไป่ตู้像处理GUI介绍
2.图像剪取(Crop Image tool) 使用imcrop可以实现图像局部区域的选取,如下列代码 所示: imshow('circuit.tif'); I = imcrop; figure, imshow(I) 运行imcrop后使用鼠标选取图形中的一部分区域, imcrop的返回值为选取区域图像的图像句柄。用鼠标选取图 形中的一部分区域,显示结果如图10.5所示。
相关主题