您的位置:首页 > 编程语言 > MATLAB

实现python调用Matlab的.m文件

2016-12-31 00:46 495 查看
-------------------------------------------------------------------------------------------------

本文简要介绍了python调用Matlab的.m文件。

-----------------------------------------------------------------

一、所需工具

1. Python开发环境(本文使用【Anaconda2】集成开发环境)

    -- Anaconda2下载地址:链接:http://pan.baidu.com/s/1qXT7Mna 密码:dqsf

2. Matlab(本文使用Matlab2016a)

3. mlab-1.1.4

    -- 下载地址:链接:http://pan.baidu.com/s/1bQC2j8 密码:7npg

4. pywin32-220.win-amd64-py2.7(此处注意要与python的版本一致)

    -- 下载地址:链接:http://pan.baidu.com/s/1eRPi2Ca 密码:1mqr

二、环境搭建

1. 安装Matlab、Anaconda2(这里主要是搭建python环境),此部分本文不做详细介绍。

2. mlab的安装与配置:

    -- mlab文件结构:主要包括[mlab.egg-info] [src] [setup.py]
    


  -- 将mlab文件下的相关文件拷贝到python.exe相同的根目录下(此步骤是因为本人的电脑上安装了2个版本的python,在cmd或者powershell下输入python调用的不是继承环境Anaconda2下的python)

    -- 执行【.\python.exe .\setup.py install】开始安装,结果如下所示:
    


3. pywin32-220.win-amd64-py2.7的安装:

    -- 执行【pywin32-220.win-amd64-py2.7.exe】

    -- 程序自动生成路径,如下所示:

    -- 然后直接下一步,直到安装完成。

    


三、举例说明:

1. matlab代码:【get_sum.m】
function sum_AB = get_sum(a,b)
sum_AB = double(a + b);
end
2. python代码:【pythonMatlab.py】

# -*- coding: utf-8 -*-
from mlab.releases import latest_release as matlab
matlab.path(matlab.path(),r'C:\Users\Administrator\Desktop\Python_Matlab')    #设置路径

def mainFunction():
a = int(1)
b = int(2)
result = matlab.get_sum(a, b)  # 调用matlab的函数
print result

#=======================================
if __name__ == '__main__':
print 'running...'
mainFunction()


3. 在python目录下执行:

    -- 使用【powershell】进入python.exe的根目录下:C:\Program Files\Anaconda2

    -- 执行python文件:.\python.exe .\pythonMatlab.py

    -- 结果如下所示:

    


--------------------------------

后续将考虑介绍一个更具体的应用(人脸识别):

1. Matlab训练好神经网络,并且提供函数接口(包括接受两张不同的图片),并返回结果。

2. Python调用OpenCV实现人脸裁剪,并调用matlab提供的.m文件。

3. 显示结果:这两张人脸是否属于同一个人。

--------------------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Matlab python