毕业设计(论文)基于MATLAB的医学图像处理.doc

上传人:laozhun 文档编号:3979451 上传时间:2023-03-30 格式:DOC 页数:38 大小:1.10MB
返回 下载 相关 举报
毕业设计(论文)基于MATLAB的医学图像处理.doc_第1页
第1页 / 共38页
毕业设计(论文)基于MATLAB的医学图像处理.doc_第2页
第2页 / 共38页
毕业设计(论文)基于MATLAB的医学图像处理.doc_第3页
第3页 / 共38页
毕业设计(论文)基于MATLAB的医学图像处理.doc_第4页
第4页 / 共38页
毕业设计(论文)基于MATLAB的医学图像处理.doc_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《毕业设计(论文)基于MATLAB的医学图像处理.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于MATLAB的医学图像处理.doc(38页珍藏版)》请在三一办公上搜索。

1、 届别 2012 学 号 200814350135 毕业设计(论文)基于MATLAB的医学图像处理 姓 名 系 别、 专 业 计算机系 通信工程专业 导 师 姓 名、职 称 完 成 时 间 2012年3月10日 基于MATLAB的医学图像处理摘 要本文针对基于MATLAB的医学图像处理环境,对其结构、特点及应用做了介绍。重点阐述了多种算法综合运用解决特定应用环境下的图像处理,如用直方图均衡进行图像增强,通过形态学方法进行图像特征提取与分析,利用傅里叶变换进行图像分析等。目的:改善医学图像质量,使低对比度的图像得到增强。方法:利用MATLAB工具箱函数,采用灰度直方图均衡化和灰度直方图规定化的方

2、法对一幅X线图像进行增强处理,并比较它们的增强效果。结果:用直方图均衡化和规定的算法,将原始图像密集的灰度分布变得比较稀疏,处理后的图像视觉效果得以改善。直方图均衡化对于局部细节不显著,而直方图规定化则不易观察到的细节变得清晰。结论:使用MATLAB工具箱大大简化了编程工作,为医学图像处理提供了一种技术平台。直方图规定化法处理医学图像局部细节方面好于均衡化。关键词:MATLAB,规定化,均衡化,图像处理,图像增强THE REALIZATION OF IMAGE PROCESSING BASED ON MATLABABSTRACTThe paper presents a digital imag

3、e processing environment which is based on MATLAB,and introduce its structure,characteristics and application.It focuses on the comprehensive using of a variety of algorithms to solve image processing problems in specific application environment,such as using histogram equalization for image enhance

4、ment ,using the morphological approach for image feature extraction and analysis, using fourier transform for analysis image and so on. AIM: To improve the quality of medical image by enhancing the lowcontrast details. METHODS: Two processing methods, the graylevel histogram equalization and the gra

5、ylevel histogram regulation, were applied to enhance an Xray image and their enhancement effects were compared by using Matlab toolbox functions. RESULTS: By the two means of algorithmhistogram equalization or regulation, the dense graylevel distribution of the original image became sparse, and the

6、output image was refined. The regulation method strengthened the difficultly observed details, while the equalization method improved less the local details of image. CONCLUSION: Matlab toolbox is helpful for simplifying the programming and provides a platform for medical image processing. The regul

7、ation method is better than the equalization method in presenting the local details of medical images.KEYWORDS: equalization,regulation, algorithms, MATLAB,image enhancement 目 录摘 要2第1章 系统简介71.1 综述71.2 课题背景71.2.1 MATLAB语言背景71.3本文主要研究工作9第2章 系统实现102.1 调用程序设计原理102.1.1 创建和获取ActiveX自动化对象的过程102.1.2 MATLAB对

8、象的一些属性和方法8102.2 调用MATLAB程序的实现112.2.1图片的缩放处理112.2.2 图片的旋转处理112.2.3 图像的负片效果112.2.4 图像的剪切处理112.2.5 图像的灰度变换122.2.6 图像的对比度增强122.2.7 图像显示直方图122.2.8 图像直方图均衡化132.2.9 图像消噪142.2.10 图像边缘检测152.2.11 图像平滑处理152.2.12 图像锐化处理16第3章 系统调试183.1 软件设计说明183.2 软件使用说明183.3 软件测试分析193.3.1 图像旋转测试193.3.2 图像剪切测试193.3.3 图像负片效果测试203

9、.3.4 灰度变换测试203.3.5 直方图均衡化测试223.3.6 锐化效果测试233.3.7 边缘检测效果测试24结 论27参考文献28致 谢29附 录30前 言图像处理系统(Image Processing System),用计算机对图像进行分析,以达到所需效果的技术,又称影像处理。图像处理一般指数字图像处理,数字图像是指用数字摄像机、扫描仪等设备经过采样和数字化得到的一个大的二维数组,该数组的元素称为像素,其值为一整数,称为灰度值。早期的图像处理的目的是改善图像的质量。它以人为对象,以改善人的视觉效果为目的。图像处理中,输入的是质量低的图像,输出的是改善质量后的图像,常用的图像处理方法

10、有图像增强、复原、编码、压缩等。首次获得实际成功应用的是美国喷气推进实验室。他们对航天探测器徘徊者7号在1964年发回的几千张月球照片使用了图像处理技术,并考虑了太阳位置和月球环境的影响,由计算机成功地绘制出月球表面地图,获得了巨大的成功。随后又对探测飞船发回的近十万张照片进行更为复杂的图像处理,以致获得了月球的地形图、彩色图,获得了非凡的成果,为人类登月创举奠定了坚实的基础,也推动了数字图像处理这门科学的诞生。数字图像处理技术取得的另一个巨大成就就是在医学上获得的成果。1972年英国EMI公司工程师发明了用于头颅诊断的X射线计算机断层摄影装置,也就是我们通常所说的CT(Computer To

11、mograph)。CT的基本方法是根据人的头部截面的投影,经计算机处理来重建截面图像,称为图像重建。1979年,这项无损伤诊断技术获得了诺贝尔奖,说明它对人类作出了划时代的贡献。医学图像处理系统从根本上改变了医务人员进行诊断的传统方式。医学上的诊断很多时候需要借助对于医疗图像的判断来作为依据,比如CT、X光、B超等医学图像,但有的拍片没有达到标准要求的清晰度,往往造成重拍或诊断结果的不准确。实践证明,充分地利用这些技术可以提高诊断的正确性和准确性,提高诊断效率,降低医疗成本,可以更加充分地发挥各种医疗设备的功能。而且,随着数字化、智能化进程的深入,医学图像处理技术在医疗卫生领域将会有更加广阔的

12、应用前景。随着计算机技术的快速发展,一些图像归档和传输系统(PACS)越来越受到医疗单位的重视。针对研究人员在研究医学图像处理算法中队获取和操作医学图像方便性的需求,以及医疗或相关单位对实现PACS系统对医学图像处理的需求,中国科学院软件研究所的王延华、洪飞、吴恩华设计了一套基于VTK库的医学图像处理子系统,该子系统能够很好地应用于各种医学图像处理中。在医学图像消噪和图像增强的应用方面,南京航空航天大学自动化学院的陶玲,王惠南,颜廷勇采用二维小波变换原理,在图像分解的基础上,分析了二维小波变换在医学图像消噪和图像增强中的应用,同时给出应用实例。结果表明,应用小波分析进行医学图像处理,能够有效地

13、改善图像质量,有利于医生对病情的诊断和治疗。由于各地区医疗卫生发展不平衡,为缩小地区间医疗水平的差距,希腊克里特大学计算机基础研究室的Marios ZIKOS、Eleni KALDOUDI、Stelios C.ORPHANOU建立了一套基于医学图像处理的远程医疗卫生保健信息学网络服务平台。它可以使不同国籍不同服务网络的多个医学专家通过这个平台实现实时交互,完成对各种疾病的初步诊断,制定治疗方案等。医学图像处理技术发展至今,各个学科的交叉渗透已是发展的必然趋势,其中还有很多亟待解决的问题。有效地提高医学图像处理技术的水平与多学科理论的交叉融合,医务人员和理论技术人员之间的交流就显得越来越重要。总

14、之,医学图像作为提升现代医疗诊断水平的有力依据,使实施风险低、创伤性小的化疗、手术方案成为可能,必将在医药信息研究领域受到更多的关注。第1章 系统简介1.1 综述MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。自1984年由

15、美国MathWorks公司推向市场以来,已成为国际公认的最优秀的科技应用软件。它具有强大的数值运算能力,先进的资料视觉化功能,开放及可延伸的架构,丰富的程序工具箱,在控制系统,图像处理,信号处理,神经网络等方面都有广泛的应用。计算结果和编程可视化、语言简单,使其成为进行复杂的科学计算的标准软件。但MATLAB 的不足之处在于可视化界面功能过于简单,本身又是一个命令行式的交互系统,功能模块分散,要求使用者有较高的计算机基础,熟悉MATLAB编程和各种不同功能的工具箱函数。MATLAB支持ActiveX自动化技术的软件,能够被任何可作为ActiveX控件程序的Microsoft Programs所

16、控制,利用这一特性,用户可以非常方便地在自已的程序中使用MATLAB,包括执行MATLAB命令,使用其功能丰富的工具箱(Toolbox),向MATLAB输入数据,获取结果(数据,图形)。这样能获得MATLAB在工程辅助设计、仿真等方面的功能。1.2 课题背景1.2.1 MATLAB语言背景一、MATLAB语言概述MATLAB是MathWorks公司开发的一种工程计算语言。它是一个交互系统,在MATLAB中的基本数据元素是一个不要求维数的复矩阵。用MATLAB可解决很多工程计算问题,特别是涉及到矩阵和矢量形式的问题。MATLAB是一个高度集成的语言环境,在它的界面下可以编写程序、运行程序并可进行

17、跟踪调试。对于广大的工程技术人员和科学研究人员来说,MATLAB不失为一种很好的工具。MATLAB也有局限性,一般它不能脱离MATLAB集成环境工作;而且编写界面的功能比较弱。一般来说,MATLAB系统包括以下几个主要的组成部分:1、开发环境这是一些可以有助于用户方便使用MATLAB的功能和文件的工具集。这些工具中有很多都有图形用户界面,如MATLAB工作台和命令窗口,命令历史记录,程序编辑器和调试器,帮助文件浏览器,工作环境、文件搜索路径的设置和管理工具等。2、MATLAB数学函数库这个函数库饮食大量的可以被调用的数值计算算法。其中既有基础算法,比如求和(sum)、正弦函数(sin)和复数运

18、算等,也有一些复杂算法,比如矩阵求逆、矩阵的特征值、贝塞尔函数以及快速傅里叶变换等。3、MATLAB编程语言这是一种高级矩阵/数组编程语言。它包括程序流控制、函数、数据类型、输入/输出,以及支持面向对象编程技术等特点。人们既可以利用它来快速开发一些简单的测试程序,也可以用它来开发一引起大型、复杂的实际应用程序。4、图形技术MATLAB有非常强大的以图形化显示矩阵和数组的能力,同时也能给这些图形增加注释并且打印这些图形。MATLAB的图形技术既包括可以方便地产生二维、三维科技专业图形的高级绘图函数,也包括一些可以使用户灵活控制图形特点的低级绘图命令。另外,用户还可以利用MATLAB的句柄图形技术

19、创建图形用户界面。二、MATLAB 存在的一些问题1、运行的速度慢。运行速度是工程设计尤其是控制领域的命脉所在,由于MATLAB程序占用内存空间资源较大,所以其运行速度不可避免地要下降。2、无法脱离MATLAB环境运行。MATLAB6.x以上的版本对计算机的要求较高,且自身程序所占的空间较大,这就是得些配置较低的机器运行有困难。1.3本文主要研究工作MATLAB是集数值分析、矩阵运算、信号处理和图形显示于一体的高性能数学软件,将其强大的计算功能实现应用系统的无缝集成,对于有效缩短开发周期、优化系统性能是十分有意义的,那将大大地提高编程者的工作效率。本文介绍操作MATLAB的方法。MATLAB作

20、为自动化服务器,在进行Windows编程中,充分发挥MATLAB在图形图像处理等方面的优势。第2章 系统实现2.1 调用程序设计原理2.1.1 创建和获取ActiveX自动化对象的过程在控制器中创建和获取自动化对象的一般过程一、初始化并创建一个自动化对象,创建后,可以在代码中使用对象变量引用的对象。二、操作方法和属性;获取对象方法和信息,激活属性和方法。三、完成代码编写后释放对象。2.1.2 MATLAB对象的一些属性和方法8一、BSTR Execute(inBSTR Command)此函数以命令字符串为MATLAB参数,将其运行结果以字符串返回。所有在MATLAB命令窗口键 入的可执行的命令

21、行都可在此使用,这样,我们就能在代码中使用命令行,象在MATLAB窗口 中一样自如。二、VOID GetFullMatix(inBSTR Name,inBSTR Workspace,in outSAFEARRAY(double)*Pr,in outSAFEARRAY(double)*pi)该函数从指定的MATLAB工作空间中获取一维或二维数组。其中,Name是提取数组的名称,Workspace表示包含数组的工作空间,一般指定为“base”,即MATLAB默认工作空间。Pr和Pi分 别是包含所提取数组的实部和虚部。三、VOID GetFullMatrix(inBSTR Name,inBSTR W

22、orkspace,in outSAFEARRAY(double)*prin outSAFEAPRAY(double).pi)该函数向指定的MATLAB工作空间中设置一维或二维数组。其中,Name是设置输入数组的名称,其它同前。四、VOID MinimizeConnandWindow()该函数将未最小化的MATLAB窗口最小化。五、VOID MaximizeConnandWindow()该函数将未最大化的MATLAB窗口最大化。六、VOID Quit()该函数关闭并退出MATLAB。2.2 调用MATLAB程序的实现2.2.1 图片的缩放处理图像缩放(image scaling)是指对数字图像的

23、大小进行调整的过程。对图像的缩放可以直接调用MATLAB工具箱函数imresize来进行图像的缩放处理。常用调用格式为:B = imresize(A,m,method)其中A表示要进行缩放处理的图像;m表示放大倍数,m必须大于0,如果m1则表示对图像进行放大处理,如果m=10);OUT(J)=GM(J);第三章 系统调试3.1 软件设计说明MATLAB是MathWorks 公司推出的一套高性能的数值计算和可视化软件。它以矩阵和向量为基本数据单位,其矩阵计算能力十分突出,用该语言进行复杂算法设计的效率很高。同时,MATLAB含有各种可选的工具箱,如神经网络、小波分析、模糊控制、信号处理、鲁棒控制

24、等功能强大的计算辅助工具。MATLAB 现已成为应用于线性代数、自动控制理论、数理统计、数字信号处理、时间序列分析、动态系统仿真等高级课程的基本教学工具;在研究单位、工业部门,MATLAB也被广泛用于研究和解决各种工程问题。但MATLAB也有局限性,一般它不能脱离MATLAB集成环境工作,而且生成复杂的人机交互式图形界面的能力不强。3.2 软件使用说明一、本文采用MATLAB的编程,用户系统中必须先安装MATLAB应用程序和image图像处理工具箱。二、由于本系统是针对医学图像进行处理,医学图像大部分为灰度图像。考虑到软件运行效率和稳定性,本系统只能处理灰度图像。若不是灰度图像,需要先将其转换

25、为灰度图像再进行处理。三、本系统在处理图像直方图和直方图均衡化时,直接将处理结果显示到MATLAB的figure窗口中,这样可以利用figure图形窗口本身具有的一些图形分析、标记功能来分析图像特点,以便对图像进行更有效的处理。四、在系统运行过程中,系统会自动调用MATLAB应用程序,并弹出一个MATLAB命令窗口,此命令窗口为后台服务窗口,可将其最小化显示。五、具体步骤如下:(1)使用菜单“打开”或工具栏“打开”按钮一幅图像;(2)根据图像特点选择“工具”菜单中处理功能单击菜单项;(3)若需要保留处理后的结果,点击“保存”或“另存为”菜单保存图像。3.3 软件测试分析3.3.1 图像旋转测试

26、在图像处理中,有时需要将图像旋转以获得更好的观测角度,所以我们有必要在系统中添加图像旋转功能。程序代码如下:I=imread(xzt); J=imrotate(I,180,bicubic);imshow(J,)测试结果如下图: 图3-1 图像旋转180度前后对比3.3.2 图像剪切测试当用户对图像进行处理时,在大多数的情况下,只对图像中的某个区域感兴趣。针对这种情况,本系统添加了剪切功能,可以对感兴趣区域进行剪切处理,并节省图像数据大小。程序代码如下:I=imread(STR);imshow(I);J=imcrop;figure,imshow(J)测试结果如下: 图3-2 图像剪切前后对比3.

27、3.3 图像负片效果测试图像负片效果可以帮助我们在大片黑色区域中容易观察白色或灰色细节。程序代码如下:g=imcomplement(I);imshow(g)测试结果如下: 图3-3 图像负片效果对比3.3.4 灰度变换测试MATLAB图像处理工具箱中提供的imadjust函数,可以实现图像的灰度变换,使对比度增强。其语法格式为:J=imadjust(I,0,0.2,0.5,1)其功能是:返回图像I经过直方图调整后的图像J。将图像的低灰度级范围映射到高灰度级去,从而可以更清晰观察低灰度区域细节。 图3-4 图像灰度变换前后对比3.3.5 直方图均衡化测试MATLAB图像处理工具箱提供了用于直方图

28、均衡化的函数Histeq。Histeq语法格式为:J=histeq(I,n)其功能是:指定直方图均衡化后的灰度级数n,默认值为64。图3-5 图像直方图均衡化前后对比3.3.6 锐化效果测试使用梯度法进行图像锐化方法的MATLAB代码如下:MATLAB.execute(xzt=clipboard(paste);) MATLAB.execute(I,map=imread(xzt);) 读取图像MATLAB.execute(I=double(I);”) 将图像转换为双精度图像MATLAB.execute(“IX,IY=gradient(I);”) 对每一点求梯度值matalb.execute(“G

29、M=sqrt(IX.*IX+IY.*IY);OUT=I;J=find(GM=10);OUT(J)=GM(J);”)MATLAB.execute(“imshow(OUT,map)测试结果如下: 图3-6 图像锐化前后对比3.3.7 边缘检测效果测试在MATLAB中函数edge用来进行边缘检测。该函数的基本语法为:g,t=edge(f,method, parameters)其中,f是输入图像,method是进行边缘检测的方法。g是一个逻辑数组,其值如下决定:在f 中检测到边缘的位置为1,在其他位置为0。参数t是可选的;它给出edge使用的阈值,以确定哪个梯度值足够大到可以称为边缘点。在函数edge中可用

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

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号