Python调用matlab——安装和调试mlab

图像处理包括图像复原最常用的工具是Matlab,随着Python和深度学习的火热,Python和matlab的混合编程成为需要。

mlab安装

环境要求:anaconda2(Python2.7,python3我没有安装成功,希望安装成功的指教)

matlab 2016a或matlab2017a或matlab2017b(亲自测试成功,其他的应该也可以)

 

安装步骤:注意如果是anaconda的话,最好是使用Anaconda Prompt
1.下载mlab,链接: https://pypi.org/project/mlab/#files,解压mlab-1.1.4.tar.gz
2.Anaconda Prompt进入解压路径
3.运行Python setup.py install

测试:
from mlab.release import latent_release
from matlab import matlabroot
print matlabroot()

如果正确输出matlab路径不报错,那么安装成功。

错误调试:


1). 如果出现:importerror:no module named numeric
按照提示的位置打开mlabwrap.py
第183行
注释掉import numeric

2). 测试时,如果出现:importerror: no module named wim32com.client

安装Python的win32扩展
如果还是提示错误:importerror: no module named wim32api
重启即可
注:win32com有两种形式,exe形式和whl文件形式,如果安装的Python2.7不是独立安装(例如在anaconda里面管理的Python27的环境),此时exe无法是识别出安装了Python2.7的路径,也就是不能正常安装。这时要进入python2.7的安装目录,使用pip install *.whl 文件来安装,win32comd的whl文件的下载链接为:https://www.lfd.uci.edu/~gohlke/pythonlibs/


3). 如果MATLAB不是正常安装,可能会无法识别到PC上安装的matlab。例如我原来将matlab安装到D盘,重新装机后发现原来的快捷方式没有了,但是进入matlab安装目录下的bin文件里找到matlab.exe可以打开并正常使用matlab,所以没有再安装matlab。但是如果使用mlab就找不到安装的matlab,我没有找到更好的方法,只是重新安装matlab就正常了。


使用问题:


1)使用mlab调用matlab不能返回结构体,也不能同时返回两个以及两个以上的变量。
2)而且要注意,使用matlab矩阵的起始位置为1,Python中矩阵的起始位置为0,存在区别,注意区分。

使用问题还有很多,比如出入matlab函数的形参的格式问题,具体函数不同,是浮点型还是整型,这种错误比较难查。还有传出的参数的格式等等。最好的办法就是根据错误提示,结合matlab的doc文档来调试。

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值