python调用matlab的方法记录

1.python版本与matlab版本的对应关系

    在MAC中安装了Anaconda3,其中自带的python版本为3.8,通过python版本与matlab版本的对应关系,至少要下载R2020b及其以上版本的matlab,于是安装了R2021b版本的matlab,这时就能保证matlab与python的版本相对应,于是就能在python中调用matlab代码。

2.import matlab.engine的问题

    在python中使用import matlab.engine时,会提示:ImportError: No module named matlab.engine,为了解决这个问题,需要从下面几个步骤下手:
    (1)在matlab的命令行窗口中输入:

matlabroot

    得到matlab的安装目录:

>> matlabroot

ans =

    '/Applications/MATLAB_R2021b.app'

>> 

    接着在MAC自带的终端中,进入到matlab的安装目录中python的目录下:

d@DdeMacBook-Pro ~ % cd /Applications/MATLAB_R2021b.app/extern/engines/python
d@DdeMacBook-Pro python % 

    接着依次执行下面的操作:

python setup.py build --build-base="builddir" install
 
python setup.py install --prefix="installdir"
 
python setup.py build --build-base="builddir" install --prefix="installdir"
 
python setup.py install --user

    通过上述操作,将得到下面这些文件夹:
在这里插入图片描述
    (2)执行上述操作之后,python中还会显示不能导入matlab.engine模块,这时还需要执行下面这个操作:将matlab安装目录下的/Applications/MATLAB_R2021b.app/extern/engines/python/build/lib下的matlab文件夹拷贝到python中包的安装目录,也就是:/Users/dpp/opt/anaconda3/lib/python3.8/site-packages/中,这时就已经解决了matlab.engine模块导入失败的问题。
    (3)如果是windows系统,则可以参考下面两个博客:参考1参考2

3.代码报错:please use torch.load with map_location=torch.device(‘cpu‘) to map your storages to the CPU的问题

    在代码中使用 pytorch加载模型时,如果电脑没有GPU,则会报错please use torch.load with map_location=torch.device(‘cpu‘) to map your storages to the CPU,这时需要将加载模型的代码采用如下的修改方式:
    修改前: checkpoint = torch.load(file_name)
    修改后: checkpoint = torch.load(file_name, map_location='cpu')

  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值