资源描述:
《vc++与matlab混合编程研究及其在图像处理中应用》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、VC++与Matlab混合编程研究及其在图像处理中应用?数据库工信息管理??电脑知识与技术VC卄与Matlab混合编程研究及其在图像处理中应用郭艳丽彭建怡(1•武汉大学计算机学院,湖北武仅430079;2.武汉大学电子信息学院,湖北武汉430079)摘要:在分析Matlab接口的基础上,提出并讨论了vC卄与MATLAB混合编程的方法,并且结合数字图像处理方法给岀了混合编程方法在图像处理中的应用•实验表明,将VC与MATLAB结编程合,既有效地利用了MAT—LAB的高效计算功能•乂继承了VC的良好程序界面.关键词:vc++,Ma
2、talb,混合编程,引擎库,图像处理中图分类号:TP311文献标识码:BStudyofMixedProgrammingUsingVC++andMatlabandItsApplicationsInImageProcessingGuoYan一li'PengJian〜yi(1.ComputerSchool,WuhanUniversity,Wuhan,430079;2.ElectronicInformationSchoo1.WuhanUniversity,Wuhan,430079)Abstract:Thispaperproposesa
3、nddiscussesthreemethodsofn〜xedprognimmingusingVC++andMadabinsoft-waredesignbasedOHtheanalysisofMatlabAPI.Italsoshowstheapplicationsofmixedprogrammingmethodsinimageproce〜ing.TheexpcrimentsshowthatbecauseofcombinationofVCandMatlabthcmethodsaregoodprogrammingOHSwhichno
4、tonlYuseMadab'ShighcomputingcapabilityeffectlybutalsohaveexeceRent.Keywords:VC++;Matalb;MixedProgramnfing;EngineLibrary;ImageProcessing1引言Matlab是MathWorks公司水m的一套高性能的数值计算和可视化软件,是当今国际上最有影响力和最有活力的软件之〜.Matlab语言集数值分析,矩阵运算.信号处理和冈形同像显示于一体,提供多种功能强大的上具箱.在信号和用像处理等领域具有无可比拟的优势•
5、但是,MATLAB是一种以解释方式执行的高级编程语言,程序的执行效低,一般不能脱离Matlab集成环境丁作,并且编写界面的功能较弱.VC是当今用得最广泛的可视化编程语肓,它采用面向对象的编程技术•但VC在数值处理分析和算法丁具等方面,其效率远远低于Matlab语言•因此将VC与Matlab结合.可以发挥各自的优势来弥补相互的不足,这样不仅可以改善应用系统本身的性能,而且提高开发效率,缩短开发周期的,从而减轻开发者的下作复杂度.2Matlab及其应用程序接口MATLAB系统是一个功能完善地,自包容地程序设计和数据处理集成环境•使
6、用它所提供的功能,内建函数以及大量的丁具箱•几乎可以完成所有的任务•并且无需借助外界的帮助,是一个完全独立的系统.同时为了方便与其它系统接口•加强系统的友好性,MAT.I1AB系统提供了一个非常重要的组件——MATIAB应用程序接口(MATLABApplicationProgramlnterface),它是一个功能完善的接口函数库•具有以下功能『11:(11在MATLAB环境屮调用C语言编写的程序,以提高数据处理的效率;f2)向MATLAB环境传送数据或从MATLAB环境接收数据,即实现MATLAB系统同外部环境的数据交换:f
7、31在MATLAB和其他应用程序间建立客户机,月侵务器关系,将MATLAB作为一个计算引擎,在其他应用程序中调用•从而降低程序设计的工作量.从Matlab接口的整体人手.根据Matlab各接口方法的特点对其分类f总体结构如框图1所示1,可分为两类:类是在Matlab中实现对C的调用.即mex文件.田iH_出■与vc叠口分糯曩(主要是用来提高运算速度•由于在Matlab中,M文件循环迭代的速度远比C语言慢,因此可以把要求大量循环迭代的部分用C语言编写为MEX文件.)另外一类是在C(木文主要讨论VC++环境)中实现对Matlab功
8、能的调用,根据各种接口方法对Matlab环境的依赖性.又可以分为3类:可以完全脱离Maflab环境的接口方法,不能完全脱离Mallab环境的接口方法,完全不能脱离Matlab环境的接口方法•可以完全脱离Matlab环境的接口方法有MatCom.Matlab编译器,Mat
9、ab