Matlab与Visual Studio的联合编程

本文介绍了如何在Matlab中调用C++程序以提高计算效率,特别是在图像处理任务上。通过设置Matlab与Visual Studio的编译器,编写C++ mex函数,并在VS中进行调试。结果显示,使用C++编写的函数比Matlab内置的nlfilter()运行速度快了约100倍,大大提升了效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MATLAB是一门在数值运算方面非常高效的语言,编程简单可以快速实现算法。但是Matlab程序运行缓慢,尤其是循环计算更是慢的无法忍受。为此介绍一种在Matlab中调用c++程序并调试的方法,使用c++处理耗时的程序可以大大提高Matlab的效率。

 

一、软件环境

1、Matlab R2011b下载地址http://pan.baidu.com/share/link?shareid=294244&uk=1745344366

2、Microsoft Visual Studio 2010下载地址http://www.microsoft.com/zh-cn/download/details.aspx?id=12187

3、分别安装好软件打开Matlab 在命令行输入mex –setup设置编译器。


选择y显示已经安装的编译器。

4、选择第2项C++编译器。

matlab在关联编译器的时候 会出现找不到编译器的问题 原因是matlab要找windows sdk的mt exe 本文件修改方法也是根据wiills的那篇“matlab找不到编译器的问题”(matlab无法找到vs2012)的修改方法进行的 请参考:http: download youkuaiyun.com download wiills 4621079 本次修改如下说明: 1 本次为:Matlab版本为Matlab 2013b(64bit版本)无法关联visual studio 2013编译器的解决方法 2 相对于wiills的修改来说 使用读注册表的方法(不删除添加任何语句 只是修改) 而不是使用绝对路径给出地址 理论上讲如果VS2013的安装路径不是默认的 只要版本对的话把这些文件添加进相对性的目录也是可以关联的 3 使用方法 复制wiills的说明了 哈哈 : 1 把附件相关的5个文件添加到matlab bin win64下面的2个相关目录 2 在matlab 里面运行 mbuild setup 然后选 y 再选择2013的那个项目 再选y 3 这是应该成功了 4 mex setup也是一样的 如果是Matlab 2013b 32位版本的可以复制出matlab bin win64两个相关目录下(mexopts目录下的:msvc110opts stp msvc110opts bat msvc110engmatopts bat和mbuildopts目录下的:msvc110compp bat msvc110compp stp)这五个文件 VS2012的支持文件 对照本文下面给出方法自行修改即可 ">matlab在关联编译器的时候 会出现找不到编译器的问题 原因是matlab要找windows sdk的mt exe 本文件修改方法也是根据wiills的那篇“matlab找不到编译器的问题”(matlab无法找到vs2012)的修改方法进行的 请参考:http: download youkuaiyun.com downlo [更多]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值