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

VC與MATLAB混合編程在圖像識(shí)別中的應(yīng)用

2014-03-11 08:07:58陳玉華林來(lái)賓洛陽(yáng)師范學(xué)院信息技術(shù)學(xué)院西門(mén)子中國(guó)有限公司機(jī)械傳動(dòng)部
關(guān)鍵詞:引擎程序設(shè)置

陳玉華林來(lái)賓/洛陽(yáng)師范學(xué)院信息技術(shù)學(xué)院;西門(mén)子(中國(guó))有限公司機(jī)械傳動(dòng)部

VC與MATLAB混合編程在圖像識(shí)別中的應(yīng)用

陳玉華1林來(lái)賓2/1洛陽(yáng)師范學(xué)院信息技術(shù)學(xué)院;2西門(mén)子(中國(guó))有限公司機(jī)械傳動(dòng)部

詳細(xì)描述了在VC環(huán)境下利用Matlab進(jìn)行圖像識(shí)別、提取的方法。本文以一個(gè)成像光斑的識(shí)別為例,介紹了Matlab引擎的設(shè)置,從而使VC和Matlab之間進(jìn)行通信,實(shí)現(xiàn)圖像的快速識(shí)別。

混合編程;引擎;matlab

引言:MATLAB強(qiáng)大的科學(xué)計(jì)算與可視化功能,簡(jiǎn)單易用的開(kāi)放式可擴(kuò)展環(huán)境,使MATLAB在許多學(xué)科領(lǐng)域中成為計(jì)算機(jī)輔助設(shè)計(jì)與分析、算法研究和應(yīng)用開(kāi)發(fā)的基本工具和首選平臺(tái)。但由于其編譯器采用偽編譯的方式,在MATLAB中編寫(xiě)的程序無(wú)法脫離其工作環(huán)境而獨(dú)立運(yùn)行。針對(duì)這個(gè)問(wèn)題,Mathworks公司為MATLAB提供了應(yīng)用程序接口,允許MATLAB和其他應(yīng)用程序進(jìn)行數(shù)據(jù)交換,并且提供了C/C++數(shù)學(xué)和圖形函數(shù)庫(kù),為在其他程序設(shè)計(jì)語(yǔ)言中調(diào)用MATLAB的高效算法提供了可能。

VC++是微軟公司利用C++的底層機(jī)理開(kāi)發(fā)的編譯器,與其他一些C++編譯器相同,都以C++語(yǔ)言為編譯對(duì)象。

一、VC與matlab接口方式的選擇

VC與MATLAB之間的接口方式有3種:1)在VC中利用MATLABEngine調(diào)用MATLAB函數(shù);2)將MATLAB程序編譯成MEX文件;3)在VC程序中利用MATLAB C++數(shù)學(xué)庫(kù)調(diào)用MATLAB函數(shù)。方法1是采用引擎方式,可以在非MATLAB為主的應(yīng)用程序中使用MATLAB功能,該方法不需連接整個(gè)MATLAB,只需在VC中嵌入必要的MATLAB Engine,便可以調(diào)用MATLAB中幾乎所有的函數(shù)或命令,無(wú)需編譯成C或C++程序;方法2是在以MATLAB為主的應(yīng)用程序中,需要在MATLAB應(yīng)用程序中調(diào)用其他語(yǔ)言的情況下使用,方法3的缺點(diǎn)是不能夠利用MATLAB中豐富的圖形句柄處理函數(shù)。本文采用的是引擎調(diào)用的方法。

二、VC調(diào)用matlab引擎

MATLAB引擎是一組函數(shù),通過(guò)這組函數(shù),用戶(hù)可以在自己的應(yīng)用程序中實(shí)現(xiàn)對(duì)MATLAB的控制,來(lái)完成計(jì)算和圖形繪制等任務(wù),這相當(dāng)于把MATLAB當(dāng)成一個(gè)計(jì)算引擎。在開(kāi)發(fā)一個(gè)專(zhuān)業(yè)的應(yīng)用程序時(shí),可以采用VC開(kāi)發(fā)用戶(hù)界面,而分析部分采用MATLAB編程實(shí)現(xiàn),這樣可以利用MATLAB強(qiáng)大的分析功能,縮短程序開(kāi)發(fā)周期。

MATLAB引擎的操作是通過(guò)啟動(dòng)一個(gè)獨(dú)立于應(yīng)用程序的進(jìn)程來(lái)實(shí)現(xiàn)的。這樣只需要把少量的引擎通信庫(kù)函數(shù)連接到應(yīng)用程序,因?yàn)閼?yīng)用程序和引擎是兩個(gè)獨(dú)立的進(jìn)程,它們之間的通信機(jī)制與開(kāi)發(fā)環(huán)境相關(guān)。MATLAB提供了一個(gè)函數(shù)庫(kù)來(lái)實(shí)現(xiàn)對(duì)MATLAB的控制,這個(gè)函數(shù)庫(kù)的主要功能有:?jiǎn)?dòng)和結(jié)束MATLAB進(jìn)程;從MATLAB發(fā)送的接收數(shù)據(jù);向MATLAB發(fā)送命令。與其他接口方式相比,引擎提供的MATLAB功能支持是最全面的,它可以完成任何計(jì)算和繪圖操作,對(duì)所有的數(shù)據(jù)結(jié)構(gòu)提供完全支持。

三、VC調(diào)用matlab引擎設(shè)置

要在VC中成功編譯MATLAB程序,必須包含引擎頭文件Engine.h并引入MATLAB對(duì)應(yīng)的庫(kù)文件:libeng.lib,libmat. lib,libmx.lib,libmex.lib。具體的設(shè)置方法如下(以VS2005為例),打開(kāi)一個(gè)工程后:

1.通過(guò)菜單工具/選項(xiàng),打開(kāi)設(shè)置屬性頁(yè),進(jìn)入Directories頁(yè)面,在目錄下拉列表框中選擇Include files,添加路徑:“C: matlabexterninclude”(假定matlab安裝在C:matlab目錄)。

2.選擇Library files,添加路徑:C:matlabexternlibwin32microsoftmsvc60,該步只需設(shè)置一次。

3.通過(guò)菜單工程/設(shè)置,打開(kāi)工程設(shè)置屬性頁(yè),進(jìn)入Link頁(yè)面,在Object/library modules編輯框中,添加文件名libmx.lib libmat.lib libmex.lib libeng.lib。

該步每個(gè)工程都要單獨(dú)設(shè)定,因?yàn)槊總€(gè)工程所使用的MATLAB函數(shù)庫(kù)可以不一樣,因此,設(shè)置可能不同。上面只設(shè)定了libmx.lib libmat.lib libmex.lib libeng.lib,如果使用了其它的庫(kù)函數(shù),則需要添加相應(yīng)的庫(kù)文件。

四、VC調(diào)用MATLAB實(shí)現(xiàn)圖像識(shí)別

在VC中編譯代碼時(shí),必須對(duì)頭文件“engine.h”進(jìn)行包含,這個(gè)頭文件非常重要。“engine.h”中包含了MATLAB引擎庫(kù)中所有函數(shù)及其相關(guān)數(shù)據(jù)類(lèi)型的定義,缺少了它,將無(wú)法使用MATLAB引擎。如果不加入這個(gè)頭文件,在程序編譯時(shí)就會(huì)出現(xiàn)“調(diào)用沒(méi)有定義的MATLAB引擎函數(shù)”的錯(cuò)誤提示。

接著啟動(dòng)引擎。定義一個(gè)引擎指針ep,該指針首先指向函數(shù)engOpen(),然后開(kāi)始VC與MATLAB通信。結(jié)合一個(gè)光斑圖像提取的例子。

打開(kāi)引擎后進(jìn)行進(jìn)行通信,在VC環(huán)境下,只需把MATLAB環(huán)境下的。m文件轉(zhuǎn)換為引擎調(diào)用即可。主要代碼如下:

最后,通信完畢后關(guān)閉matlab引擎即可。

程序識(shí)別的圖像前后對(duì)比如下所示:

圖1 識(shí)別前圖像

圖2 識(shí)別后圖像

五、結(jié)論

VC和matlab在編程和計(jì)算上各有自己的優(yōu)缺點(diǎn),將它們結(jié)合起來(lái),可以開(kāi)發(fā)出來(lái)數(shù)值計(jì)算功能強(qiáng)大、界面友好的程序來(lái)。

[1]蘇金明等,Matlab與外部程序接口[M].,電子工業(yè)出版社,2004。

[2]袁林等,VC與MATLAB混合編程在圖像處理中的應(yīng)用 [J].微計(jì)算機(jī)信息,2008第24卷第4-3期

本文為河南省科技攻關(guān)項(xiàng)目項(xiàng)目編號(hào):102102210479。

陳玉華1976.11~,女,講師,碩士,研究方向?yàn)閳D像處理

猜你喜歡
引擎程序設(shè)置
中隊(duì)崗位該如何設(shè)置
試論我國(guó)未決羈押程序的立法完善
“程序猿”的生活什么樣
藍(lán)谷: “涉藍(lán)”新引擎
商周刊(2017年22期)2017-11-09 05:08:31
英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
本刊欄目設(shè)置說(shuō)明
中俄臨床醫(yī)學(xué)專(zhuān)業(yè)課程設(shè)置的比較與思考
創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
無(wú)形的引擎
河南電力(2015年5期)2015-06-08 06:01:46
基于Cocos2d引擎的PuzzleGame開(kāi)發(fā)
主站蜘蛛池模板: 国产 日韩 欧美 第二页| 国产激情在线视频| 国产欧美性爱网| 18禁高潮出水呻吟娇喘蜜芽| 伊人福利视频| 欧美成人区| 无码内射中文字幕岛国片| 亚洲一级毛片免费看| 日韩欧美国产成人| 亚洲人成影视在线观看| 国产视频入口| 色婷婷视频在线| 伊人久久福利中文字幕| 久久鸭综合久久国产| 日韩在线观看网站| 精品乱码久久久久久久| 久久久久久久久久国产精品| 香蕉eeww99国产精选播放| 久久久精品久久久久三级| 久久久精品国产SM调教网站| 少妇人妻无码首页| 色综合激情网| 亚洲视频免费播放| 亚洲欧美国产高清va在线播放| 国产成人高清在线精品| 超薄丝袜足j国产在线视频| 草逼视频国产| 最新国产麻豆aⅴ精品无| 欧洲精品视频在线观看| 毛片网站免费在线观看| 欧美日韩亚洲综合在线观看| 国产亚洲欧美日本一二三本道| 激情五月婷婷综合网| 77777亚洲午夜久久多人| 国产精品所毛片视频| 亚洲欧美国产视频| 中文无码日韩精品| 制服丝袜在线视频香蕉| 国产视频a| 日日碰狠狠添天天爽| 亚洲国内精品自在自线官| 亚洲国产综合精品一区| 亚洲一道AV无码午夜福利| 日韩中文无码av超清| 2022精品国偷自产免费观看| 久久熟女AV| 国产欧美日韩在线一区| 中文字幕资源站| 亚洲成人在线免费| 无遮挡国产高潮视频免费观看 | 国产精品永久免费嫩草研究院| 高清免费毛片| 国产免费自拍视频| 免费A级毛片无码无遮挡| 麻豆精品在线播放| 99久久国产综合精品女同| 99精品在线看| 国产激情无码一区二区APP| 波多野结衣一区二区三区AV| 欧美不卡二区| 免费在线视频a| 国产内射一区亚洲| 久爱午夜精品免费视频| 国产成人精品免费视频大全五级| 欧美第一页在线| 国产成人亚洲综合A∨在线播放| 久久久久久高潮白浆| 伊人激情综合| 亚洲免费人成影院| 国产精品林美惠子在线观看| 亚洲浓毛av| 本亚洲精品网站| 22sihu国产精品视频影视资讯| 国产精品流白浆在线观看| 97青草最新免费精品视频| 91 九色视频丝袜| 国产一级α片| 在线观看亚洲精品福利片| 亚洲中文精品久久久久久不卡| 一区二区在线视频免费观看| 欧美一区二区三区不卡免费| 国产精品久久久久鬼色|