C _with_Matlab.pdf

C _with_Matlab.pdf

ID:33828844

大小:370.76 KB

页数:36页

时间:2019-02-28

C _with_Matlab.pdf_第1页
C _with_Matlab.pdf_第2页
C _with_Matlab.pdf_第3页
C _with_Matlab.pdf_第4页
C _with_Matlab.pdf_第5页
资源描述:

《C _with_Matlab.pdf》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、C++withMatlabTutorial55:148DigitalImageProcessing2007.10.16WhyuseC/C++withMatlab?•Matlabcanbeslow•C++canbefast–HowcanweintegrateC++’sspeedwithMatlab’sconvenience?•Goal:-Implementcriticalfunctionswith(fast)C++code,anduse(slow)Matlabcodefordatastructuremanagement(whichc

2、anbedifficult/annoyinginC++)HowdoweintegrateC++withMatlab?•MatlaballowstheuseofMEXfiles–MEXfilesarepre-compiledfilesthatarecalledfromMatlab–CanbecompiledfromMatlab.mfiles–CanalsobecompiledfromexternalC++code.•ThiswillbeourfocusThecomponentsofaMEXfile•EveryMEXfileconsi

3、stsoftwoparts:–AgatewayroutinethatinterfaceswithMatlab.ThisistheentrypointfortheC++code.MustbecalledmexFunction()–Anynumberofsubroutinesthatarecalledfromthegatewayroutine.Thebulkofyourcomputationwillbeinsidethesesubroutines.ThecomponentsofaMEXfile•MEXI/O:•Thegatewayro

4、utineispassedfourparameters:intnlhs,mxArray*plhs[],intnrhs,mxArrary*prhs[]•nlhs:thenumberofoutputs•plhs[]:anarrayofoutputs•nrhs:thenumberofinputs•prhs[]:anarrayofinputsTutorial:•WewillcreateaMEXfiletoimplementamedianfilter•ImplementedinC++usingM$VisualStudio2005•MEXco

5、dewillbecontainedinaDLL(Dynamic-LinkLibrary)Tutorial:•OpenVisualStudio2005•Start->ProgramFiles->ProgrammingTools->MicrosoftVisualStudio2005Tutorial:•File->New->Project•SelectVisualC++•SelectWin32•selectwin32project•nameitMedianFilter•OKTutorial:•Click‘Next’•Select“DLL

6、”•Check“ExportSymbols”•Check“EmptyProject”•Click“Finish”Tutorial:•Project->AddNewItem•Select“Code”•Highlight“C++File”•Nameit“mexFunction.cpp”•AddTutorial:•Project->MedianFilterProperties•Expand“ConfigurationProperties”•Expand“C/C++”•Highlight“General”•Clickinthe“Addit

7、ionalIncludeDirectories”field•Clickthe“…”button•Clickthe“NewLine”button•Clickthe“…”button•Browseto“C:ProgramFilesMathworksMatlabR2007aexterninclude”•OKTutorial:•Project->MedianFilterProperties(CONTINUED)•Highlight“Preprocessor”•Clickinthe“PreprocessorDefinitions

8、”field•Clickthe“…”button•Add“MATLAB_MEX_FILE”onanewline•OK•Highlight“CodeGeneration”•Change“RuntimeLibrary”to“Multi-threaded

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。