zoukankan      html  css  js  c++  java
  • PIE SDK与Matlab结合说明文档

     

    1.功能简介

        Matlab是三大数学软件之一,它在数学类科技应用软件中在数值计算方面首屈一指。Matlab可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。本示例程序实现了PIESDK调用Matlab函数功能(peaks函数),从而使PIE SDK可以与Matlab紧密结合。

    2. 功能实现说明

    2.1. Matlab自定义函数

           Matlab自定义函数是一个*.m脚本文件,文件内容以function [返回值]=[函数名]([参数1,参数2])开始,且通常将文件名和函数名保持一致。

    2.2. 实现思路及原理说明

           Matlab提供了deploytools工具可以将matlab函数编译为.Net可用的DLL,从而方便.Net程序直接引用(运行需要安装MCRInstaller)。编译过程参考:

    https://blog.csdn.net/zuo_csdn/article/details/53518963.

    本示例采用Matlab 2014a 和 Matlab 2014a MCRInstaller(MCR8.3),单独运行示例程序需安装Matlab 2014a MCRInstaller(MCR8.3),请确定版本是否正确

           编译过程需要注意:

       ①  若出现mcc错误,原因是matlab未破解完全,需要将破解文件把install.jar以及相应位数的三个文件(compiler.dll,mcc.exe,libmwservices.dll)复制到对应位置替换

       ②  注意.Net版本以及32位64位,这与Matlab/MCRInstaller有关系。

       ③  .Net项目生成位数一定与Matlab编译的库位数相同

    第一步

    在Command Window窗口中输入mbuild –setup查看编译器,将编辑器设置为vs

    第二步

    安装MCRinstaller.exe,在matlab安装目录下toolboxcompilerdeploywin64

    第三步

    注册mwcomutil.dll,在inwin64中

    第四步

    编写.m文件并调试通过

    第五步

    在Command Window窗口中输入deploytool。将.M编译生成dll,在弹出的deploytool窗口中:

    1)      选择Library Compiler

    2)      在Application type 项中选择 .NET Assembly

    3)      在Exported Functions中点击+号,添加.M文件

    4)      在下方填写DLL的类名和包含的方法名称

    5)      右上角点击Package

    第六步

    将生成的DLL复制到.Net程序目录下并添加引用

    第七步

    如果使用了数组,需要将MWArray.Dll也引用上并复制到程序输出目录下

    第八步

    调用DLL中的方法

    2.3.  核心接口与方法

    接口/类

    方法

    说明

     

     

     

    2.4. 示例代码

    项目路径

    百度云盘地址下/PIE示例程序/14.SDK拓展开发/ 02PIESDK与Matlab结合/ BlendWithMatlab

    数据路径

    百度云盘地址下/PIE示例数据/栅格数据/

    视频路径

    百度云盘地址下/PIE视频教程/14.SDK拓展开发/ 02PIESDK与Matlab结合.avi

    示例代码

     1         /// <summary>
     2         /// Matlab
     3         /// </summary>
     4         /// <param name="sender"></param>
     5         /// <param name="e"></param>       
     6         public FormMatlabTest ()
     7         {
     8             InitializeComponent();
     9             //运行需要安装MCRInstaller
    10             DonetTest.TestClass testClass = new TestClass();
    11             //调用matlab函数,返回值result为图像数组
    12             MWArray result = testClass.DonetTestFunc();
    13         }
    View Code

    2.5 示例截图

  • 相关阅读:
    linux下安装qt-4.5_for_TQ210_V1.0.(TQ210)-ubuntu11.10过程出现的问题
    15+ 易响应的CSS框架快速开启你的敏捷网站项目
    分享10个超实用的jQuery代码片段
    免费数据库+免费空间建站
    25个令人难忘的广告设计
    android实现点击效果
    ServletContextListener
    ServletContext
    一个不错的地址--类序列化等
    Java的运行时数据存储机制
  • 原文地址:https://www.cnblogs.com/PIESat/p/10244196.html
Copyright © 2011-2022 走看看