文档详情

实验2Matlab图像处理基础.doc

发布:2017-04-19约2.79千字共4页下载文档
文本预览下载声明
医学图像处理技术实验指导 上海医疗器械高等专科学校 PAGE 4 PAGE 3 姓名 系部 专业 班级 学号 成绩 教师 实验二:Matlab图像处理基础 【实验目的】 了解Matlab平台下的图像编程环境,通过读入、显示、检查内存中的图像,实现直方图均衡化、保存图像、检查新生文件的内容及一些相关的操作。 【实验器材】 硬件:实验用PC机一台 软件:MATLAB 【实验步骤】 一、图像处理的基本操作 双击桌面上的matlab图标,启动matlab软件。 在MATLAB界面右侧“command window”中输入相应的代码,读入并显示一副图像。 clear; %清除MATLAB工作平台的所有变量 close all ; %关闭已打开的图形窗口 I=imread(greens.jpg) ; %读入名为greens的图像文件,并赋给I Imshow(I); %显示图像 注意:以上代码可以单句执行,也可以多句一起执行,每个分号之前的内容一次执行完成;matlab系统本身安装的一些图像文件存放在:matlab\toolbox\images\imdemos目录下。 显示结果: 检查内存中的图像 使用whos命令来查看图像数据I是如何存储在内存中的,其指令为:whos Matlab做出的响应如下: Name Size Bytes Class Attributes I 300x500x3 450000 uint8 实现直方图的均衡化 为观察显示的图像当前状态下亮度分布情况,选读入文件名为Pout.tif的一幅图像,然后通过使用imhist函数创建描述该图像灰度分布的直方图,首先使用figure命令一个新的图像窗口,避免直方图覆盖数组I的显示结果。其指令为: clear; %清除MATLAB工作平台的所有变量 close all ; %关闭已打开的图形窗口 I=imread(Pout.tif) ; %读入名为greens的图像文件,并赋给I Imshow(I); %显示图像 figure,imhist(I); 显示的图像及直方图如下: 由运行结果可以看出,图像对比度较低,直方图没有覆盖整个灰度范围[0,255],仅在较狭窄的范围内,同时图像中值的高低区分不明显,无较好的对比度。可以通过调用histeq函数将灰度值扩展到整个灰度范围中,从而达到提高数组I的对比度。其指令为: J=histeq(I);%扩展原始图像 figure,imshow(J);%创建一个新窗口并显示直方图扩展后的图像 figure,imhist(J);%创建另一个新窗口,显示扩展后的直方图 结果如下: 保存图像 将新调节后的图像J保存到磁盘中。若希望将修改后的图像保存为JPG格式的图像文件,使用imwrite函数并指定一个文件名,该文件的扩展名为.jpg。指令如下: imwrite(j,pout.jpg) 该文件被存放在当前的matlab工作路径下。 检查新生成的文件内容 利用imfinfo函数可以观察上述语句写了哪些内容到磁盘上。指令如下: imfinfo(pout.jpg) 若该句不加分号,将直接显示结果,若加了分号,则在主窗口上显示的ans初双击显示结果 二、图像处理的高级应用 读入并显示一幅灰度图像。 读入并显示灰度图像 pout.tif,且对输入的图像命名为I,具体指令略。 图像中心位置的背景亮度要高于其他部分的亮度。使用imopen函数个一个半径为15的形态打开操作,形态打开操作将会删除那些不完全包括在半径15中的对象,从而实现背景亮度的估计,指令如下: background=imopen(I,strel(disk,15)); 从原始图像中减去背景图像 将背景图像background 从原始图像I中减去,从而创建一个新的背景较为一致的图像,其指令如下: J=imsubtract(I,background); figure,imshow(J); 调节图像对比度 从减少背景图像的图像可以看出,修改后的图像很暗,通过使用imadjust函数来调节图像的对比度,并显示调节后的效果。指令如下: K=imadju
显示全部
相似文档