基于MATLAB的图像编辑软件开发(5)_毕业论文

毕业论文移动版

毕业论文 > 计算机论文 >

基于MATLAB的图像编辑软件开发(5)


2.3.4    图形处理
MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二文和三文的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能(例如二文曲线和三文曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四文数据的表现等),MATLAB同样表现了出色的处理能力。同时对一些特殊的可视化要求,例如图形对话等,MATLAB也有相应的功能函数,保证了用户不同层次的要求。另外新版本的MATLAB还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。
MATLAB对许多专门的领域都开发了功能强大的模块集和工具箱。一般来说,它们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。目前,MATLAB已经把工具箱延伸到了科学研究和工程应用的诸多领域,诸如数据采集、数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理、系统辨识、控制系统设计、LMI控制、鲁棒控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型及半物理仿真、嵌入式系统开发、定点仿真、DSP与通讯、电力系统仿真等,都在工具箱(Toolbox)家族中有了自己的一席之地[5]。
2.3.5    程序接口
新版本的MATLAB可以利用MATLAB编译器和C/C++数学库和图形库,将自己的MATLAB程序自动转换为独立于MATLAB运行的C和C++代码。允许用户编写可以和MATLAB进行交互的C或C++语言程序。另外,MATLAB网页服务程序还容许在Web应用中使用自己的MATLAB数学和图形程序。MATLAB的一个重要特色就是具有一套程序扩展系统和一组称之为工具箱的特殊应用子程序。工具箱是MATLAB函数的子程序库,每一个工具箱都是为某一类学科专业和应用而定制的,主要包括信号处理、控制系统、神经网络、模糊逻辑、小波分析和系统仿真等方面的应用。
2.3.6    应用软件开发
在开发环境中,使用户更方便地控制多个文件和图形窗口;在编程方面支持了函数嵌套,有条件中断等;在图形化方面,有了更强大的图形标注和处理功能,包括对性对起连接注释等;在输入输出方面,可以直接向Excel和HDF5进行连接。
2.4    MATLAB在图像处理中与其他图像处理软件的区别
以往的图像处理系统常用VB,Authorware,VC等软件进行制作,大量工作进行编程,不仅效率低,而且效果也不是很理想。但从Math Works 公司推出MATLAB 6.1之后,这种局面发生了较大的改观。
MATLAB既是一种直观、高效的计算机语言,同时又是一个科学计算平台。它为数据分析和数据可视化、算法和应用程序开发提供了最核心的数学和高级图形工具。根据它提供的500多个数学和工程函数,工程技术人员和科学工作者可以在他的集成环境中交互或编程以完成各自的计算。MATLAB具有强大的矩阵运算、数据处理和图像显示功能,其数据结果可视化,编程效率极高,极少的代码即可实现复杂的运行。
基本的图像处理操作一般包括读入图像、显示图像、处理图像和储存图像等几个部分,使用MATLAB7.0完成上述操作通常只需要非常简单的几行代码即可实现,而使用VC编写的图像处理程序代码将会非常庞大。例如,为了实现图像读取和显示操作,VC程序代码需要完成的工作涉及到确定图像文件,读取文件头信息,确定文件格式,设置调色板,顺序读取图像数据,然后调用系统提供的API函数,设定显示的各种参数,设计显示界面,接下来才可以看到一幅图像显示在显示屏上。尽管这是图像处理中最基本的步骤,但要实现这一过程要求程序员对待处理图像的文件格式信息、数据操作以及体系API函数有比较深入的了解,完全实现下来,不算上系统提供的API函数,全部代码也有几百行以上。而使用MATLAB提供的工具箱函数,只需几行代码就可实现它。 (责任编辑:qin)