999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

C#與MATLAB混編技術(shù)在數(shù)據(jù)處理和成像中的應(yīng)用

2018-05-10 05:10:32高慧
電子技術(shù)與軟件工程 2018年24期

高慧

摘要

MATLAB有優(yōu)秀的數(shù)值計(jì)算和仿真分析能力,相應(yīng)的C#作為一種面向?qū)ο笤O(shè)計(jì)語言,其數(shù)據(jù)處理和成像功能的實(shí)現(xiàn)相對(duì)困難,本論文結(jié)合實(shí)際實(shí)例,將MATLAB成功的嵌入到C#中,通過基于COM組件的混編技術(shù),實(shí)現(xiàn)了基于遺傳算法的數(shù)據(jù)處理和成像。

【關(guān)鍵詞】MATLAB C# COM組件 數(shù)據(jù)成像

1概述

MATLAB是由美國MathWorks公司推出的一款數(shù)學(xué)軟件,主要功能有算法開發(fā)、數(shù)據(jù)數(shù)據(jù)分析和可視化研究、數(shù)值計(jì)算等。其高效率的計(jì)算功能將用戶從繁雜的數(shù)學(xué)運(yùn)算中解脫,同時(shí),其強(qiáng)大的圖形圖像處理能力、簡易的編程語言以及友好的界面給用戶更簡便和快捷的體驗(yàn)。正因如此,在許多的工程領(lǐng)域和學(xué)科中,MATLAB成為了計(jì)算機(jī)輔助設(shè)計(jì)以及仿真研究的首選工具。

NET技術(shù)的核心是公共語言運(yùn)行時(shí)(CLR)。CLR提供了一個(gè)應(yīng)用程序接口(API),使得程序員能夠調(diào)用一組例程功能,從程序?qū)崿F(xiàn)的繁瑣細(xì)節(jié)中脫身出來,不需考慮底層的源碼和程序內(nèi)部工作機(jī)制。VisualC#.NET是VisualStudio.NET軟件開發(fā)包的重要組成部分,其中,C#編程語言具有面向?qū)ο蟮奶卣?。C#給程序設(shè)計(jì)帶來了新的功能和優(yōu)勢(shì),逐漸成為開發(fā)界面應(yīng)用程序。

MATLABCOMBuilder模 塊 是 由MathWorks公司自MATLAB6.5開始,推薦于混合編程的一項(xiàng)技術(shù)。在工程應(yīng)用中,上位機(jī)軟件需要對(duì)采集樣本進(jìn)行極為復(fù)雜的科學(xué)運(yùn)算,涉及到算法分析和設(shè)計(jì),并需要反饋給工程師和用戶可視化的圖形界面。基于COM組件的混編技術(shù),結(jié)合了MATLAB強(qiáng)大的科學(xué)運(yùn)算能力,又發(fā)揮了VisualC#.NET用戶應(yīng)用程序界面設(shè)計(jì)和開發(fā)的優(yōu)點(diǎn),應(yīng)用前景頗為廣泛。

2 COM組件技術(shù)的具體實(shí)現(xiàn)

2.1前期準(zhǔn)備

(1)環(huán)境部署。 安裝VS2010,MATLAB,在MATLAB中,找到MCRInstallexe安裝包并安裝。

(2)數(shù)據(jù)分析。根據(jù)實(shí)際工程采樣結(jié)果和期望值,設(shè)計(jì)相應(yīng)的算法實(shí)現(xiàn)。并根據(jù)實(shí)際需求擬定數(shù)據(jù)成圖方式和類別。

2.2生成COM組件

(1)在MATLAB中編寫數(shù)據(jù)處理程序以及數(shù)據(jù)成圖的M文件。

(2)在MATLAB中配置編譯器,在MATLAB的命令窗口中,輸入mbuild-setup,根據(jù)提示將編譯器設(shè)置為相應(yīng)版本。在MATLAB命令窗口中運(yùn)行deploy,將MATLAB函數(shù)轉(zhuǎn)變成NET的編譯庫,在NewProjectSettings窗口創(chuàng)建一個(gè)新的Project,鍵入組件名稱和類名。將編寫好的M文件加入新建的工程中,生成的最終的dll文件。

2.3 vs2010對(duì)COM組件進(jìn)行調(diào)用

(1)在VS2010界面下的項(xiàng)目工程中右鍵單擊,添加生成的dll文件引用。

(2)在C#.NET中創(chuàng)建包含COM組件中方法的類的實(shí)例。在MATLAB安裝路徑下的toolbox里找到MWArray.dll并添加。

(3)將MATLAB窗口嵌入到vs的winform中。分別使用到Windows操作系統(tǒng)中的4個(gè)API函數(shù):FindWindoW、SetParent、SetWindowLong、MoveWindow.

3工程實(shí)例

3.1 MATLAB繪圖程序

pcolor(zz);%繪制數(shù)據(jù)的二維顏色變化圖

set(gca,ytick,[1:1:5])

axis([1 91 5l);

set(gca,YDir',reverse);

fm= findall(gcf,'type,uimenu);%找到標(biāo)準(zhǔn)菜單,句柄返回給fm。

ft= findall(gcf,type,uipushtool,-or,type,uitoggletool);%找到工具欄,句柄返回給ft。

st= findall( gef,‘To oltip,‘ZoomIn,-or‘To oltip,‘Zo omOut,‘-or,‘Tooltip,‘Rotate3D,‘or,‘Tooltip,‘Print Figure);

3.2 vs 2010嵌入的實(shí)現(xiàn)

IntPtr hChild;//子窗口句柄

IntPtr hParent;∥父窗口句柄

hParent= dll.FindWindow(null, this.Text);

hChild= dll.FindWindo、v(null, “Figurell”);

dll.SetParent(hChild, hParent);

dll.SetWindowLong(hChild, -16,369164288);

dll.MoveWindow(hChild,0,O,this.Width-324, this.Height, true);}

3.3效果圖

圖1為MATLAB窗口嵌入到vs2010窗口中的實(shí)例。用戶可以方便的查看實(shí)際場(chǎng)地情況。

參考文獻(xiàn)

[1]岳玉芳,尤忠生,張玉雙.基于COM的VB與MATLAB混合編程[J].計(jì)算機(jī)工程與設(shè)計(jì),2005 (01): 61-62.

[2]王昊亮,李剛.VisualC#程序設(shè)計(jì)教程[M].北京:清華大學(xué)出版社,2004.

[3]潘愛民.COM原理及應(yīng)用[M].清華大學(xué)出版社,2003.

主站蜘蛛池模板: 五月激情婷婷综合| 国产欧美高清| 久热这里只有精品6| 国产精品无码久久久久久| 成人国产一区二区三区| 日本免费高清一区| 国外欧美一区另类中文字幕| 成人无码一区二区三区视频在线观看| 国产尤物视频在线| 欧美日韩精品一区二区在线线| 午夜福利在线观看成人| 亚洲一区二区三区中文字幕5566| 精品免费在线视频| 精品亚洲欧美中文字幕在线看| 无码AV高清毛片中国一级毛片| 毛片免费视频| 欧洲在线免费视频| 精品亚洲麻豆1区2区3区| 妇女自拍偷自拍亚洲精品| 欧美激情第一区| 91国内视频在线观看| 国产成人综合日韩精品无码不卡| 欧美性猛交一区二区三区| 婷婷丁香在线观看| 在线a视频免费观看| 国产在线精品网址你懂的| 欧美亚洲香蕉| 亚洲婷婷六月| 日本午夜精品一本在线观看| 精品福利视频网| a毛片在线免费观看| 久久黄色影院| 精品无码一区二区三区在线视频| swag国产精品| 欧洲亚洲欧美国产日本高清| 伊人久久久久久久久久| 欧美精品导航| 大陆精大陆国产国语精品1024| 日韩欧美国产三级| 亚洲人成网站色7777| 中文字幕在线日本| 乱人伦视频中文字幕在线| 日韩中文无码av超清| 国产AV无码专区亚洲精品网站| 亚洲成在人线av品善网好看| 伊人丁香五月天久久综合| 久久公开视频| 亚洲中文字幕在线观看| 欧美五月婷婷| www.国产福利| 日本国产在线| 五月婷婷综合在线视频| 亚洲日韩日本中文在线| 亚洲欧美国产五月天综合| 色哟哟国产精品| 久久窝窝国产精品午夜看片| 狠狠色丁婷婷综合久久| 国产成年女人特黄特色大片免费| 伦伦影院精品一区| 国产日韩精品欧美一区喷| 中文毛片无遮挡播放免费| 国产精品美人久久久久久AV| 国产欧美综合在线观看第七页| 亚洲成肉网| 小说区 亚洲 自拍 另类| 国产美女主播一级成人毛片| 色天天综合| 精品1区2区3区| 午夜免费小视频| 国产精品天干天干在线观看| 蜜芽国产尤物av尤物在线看| 成人字幕网视频在线观看| 波多野结衣在线一区二区| 欧美日韩在线观看一区二区三区| 欧美综合激情| 久久国产毛片| 嫩草影院在线观看精品视频| 夜夜爽免费视频| 波多野结衣无码AV在线| 在线免费不卡视频| 亚洲成综合人影院在院播放| 欧美激情网址|