Ⅰ 如何向MATLAB中添加新工具箱
今天費了好大的勁終於將SVM_SteveGunn添加至我的matlab工具箱內,並且已能成功運行,現在把在添加以及運行中出現的各種問題羅列如下,並一一解決:
1、將下載的svm工具箱添加至matlab安裝目錄下
1、單獨下載的工具箱
2、把新的工具箱拷貝到某個目錄(我的是D:softmatlab2011b oolbox)。
注意:你要是添加的很多個m文件,那就把這些m文件直接拷到再下一層你想要的工具箱的文件夾里
例如,我要添加的是支持向量機工具箱,在剛才的文件夾下我已經有svm(支持向量機工具箱)文件夾了,但有的m文件還沒有,我就把新的m文件統統拷到D:softmatlab2011b oolbox svm目錄下了。如果你連某工具箱(你打算添加的)的文件夾都沒有,那就把文件夾和文件一起拷到D:softmatlab2011b oolbox 下。
先把工具箱保存到MATLAB安裝目錄的根目錄下面,然後運行matlab---->file---->set path---->add folder 然後把你的工具箱文件夾添加進去就可以了
3、在matlab的菜單file下面的set path把它( D:softmatlab2011b oolbox svm )加上。
4、 把路徑加進去後在file→Preferences→General的Toolbox Path Caching里點擊update Toolbox Path Cache更新一下。
記得一定要更新!我就是沒更新,所以添加了路徑,一運行還是不行。後來更新了才行。
2、在對svm工具箱進行使用時,發現了'qp.dll 不是有效的 Win32 應用程序 '
問題描述:
mex在不同windows OS下編譯的結果,所以我們需要重新編譯一下qp.dll
解決方案:
steve gunn 的包下面有一個optimiser 文件夾,把current Diretory目錄改為optimiser目錄,例如E:matlabProgramSVM_SteveGunnOptimiser,然後運行命令
>> mex -v qp.c pr_loqo.c
命令運行完畢後,你會發現原先的qp.dll變為qp.dll.old,還出現了qp.mexw32,我們把該文件改為qp.dll 復制到工具箱文件夾下。原先的工具箱文件qp.dll可以先改一下名字...
3、我在運行第二步時發現了『D:SOFTMATLAB~3BINMEX.PL: Error: Compile of 'qp.c' failed. Error using mex (line 206)
Unable to complete successfully.
這個是因為編譯器設置的問題,這里需要重新選擇設置編譯器,設置編譯器的方法:
mex -setup(mex和-setup之間要有空格),然後我選擇的VS2010,然後再繼續運行步驟2就成功了。
Ⅱ matlab2015工具箱在哪
以添加voicebox為例(語音處理工具箱),首先下載工具箱,解壓
把解壓後的工具箱放到matlab的toolbox文件夾
打開matlab,點擊file-set path,選擇工具箱,這樣就能在matlab使用該工具箱了
檢驗是否成功安裝該工具箱,在命令行寫入 help enframe
如果下面給出 enframe函數的幫助信息,則恭喜你,成功了
Ⅲ 如何在MATLAB中添加SVM函數工具箱
打開matlab,點擊HOME中的"Set Path"選項。
Ⅳ 如何在matlab中添加SVM工具箱以及初次應用
一、因為要用到SVM,所以想先在matlab下學習一下,簡短講添加工具箱很簡單:
1.1:如果是Matlab安裝光碟上的工具箱,重新執行安裝程序,選中即可。
1.2:如果是單獨下載的工具箱,則需要把新的工具箱(以下假設工具箱名字為svm)解壓到toolbox目錄下,然後用addpath或者pathtool把該工具箱的路徑添加到matlab的搜索路徑中,
2:最後用which newtoolbox_command.m來檢驗是否可以訪問。如果能夠顯示新設置的路徑,則表明該工具箱可以使用了。
SVM工具箱:>> addpath('D:\Program Files\MATLAB\R2008a\toolbox\svm')
>> which svcinfo.m
D:\Program Files\MATLAB\R2008a\toolbox\svm\svcinfo.m
成功~
PS:還有一些其他方法,可以參考:http://blog.lehu.shu.e.cn/smallworker/A31135.html
二、初次使用,採用差仿http://zyy554221.blog.sohu.com/82115143.html中的例子,但是出現了錯逗慶銷誤信息:D:…………\toolbox\svm\qp.dll 不是有效的 Win32 應用程序,經過搜索看到有很多人出現這個問題,貌似是因山游為matlab版本比較高。
解決辦法:1、command中輸入
>> cd 'D:\Program Files\MATLAB\R2008a\toolbox\svm\Optimiser'
>> mex -v qp.c pr_loqo.c
2、出現:
This is mex, Copyright 1984-2007 The MathWorks, Inc.
Select a compiler:
[1] Lcc-win32 C 2.4.1 in D:\PROGRA~1\MATLAB\R2008a\sys\lcc\bin
[2] Microsoft Visual C++ 6.0 in D:\Program Files\Microsoft Visual Studio
[0] None
Compiler: (我選擇了2),然後就出現很多東西……
3、Optimiser文件夾下看到兩個文件:qp.dll.old和qp.mexw32;把qp.mexw32重命名為qp.dll覆蓋svm文件夾下的qb.dll即可。
4,、然後應用例子,成功~~
Ⅳ 如何使用matlab中的工具箱
上面的最優答案廢話有點多,我補充一個簡潔版答案:
一、自帶工具箱:
直接使用。都在toolbox文件夾內,而且默認早已設定完畢。
二、非自帶工具箱:
按照這個步驟:
1)下載並解壓;
2)復制到matlab安裝目錄下的toolbox文件夾內(當然也可以放到別處~);
3)在matlab的菜單:file-set path中,添加路徑,要求是連同子文件夾一同添加,路徑就是剛才你放置文件夾的地方。設定好了記得save。
4)完畢!
Ⅵ 如何增加matlab的工具箱
下載一個工具箱,添加到matlab中,直接運用:
在matlab的file下面的set path把它加上,把路徑加進去後在
file→Preferences→General的Toolbox Path Caching里點擊update Toolbox Path Cache更新一下,就OK了
1.1 如果是Matlab安裝光碟上的工具箱,重新執行安裝程序,選中即可;
1.2 如果是單獨下載的工具箱,一般情況下僅需要把新的工具箱解壓到某個目錄。
2 在matlab的file下面的set path把它加上。
3 把路徑加進去後在file→Preferences→General的Toolbox Path Caching里點擊update Toolbox Path Cache更新一下。
4 用which newtoolbox_command.m來檢驗是否可以訪問。如果能夠顯示新設置的路徑,則表明該工具箱可以使用了。
或者將工具箱復制到toolbox目錄然後在set path裡面添加這個目錄就可以用了。
在matlab的file下面的set path把它加上,把路徑加進去後在
file→Preferences→General的Toolbox Path Caching里點擊update Toolbox Path Cache更新一下,就OK了
以下是我在別的地方看到的,轉過來你參考一下吧。
首先說說添加到matlab搜索路徑好處:1
對
n——你只需要存儲一個副本,就可以在其他地方使用。具體來說,假設你在數據盤D上新建了兩個目錄abc和def,這兩個工程(每個目錄下的所有程序相應地稱為一個工程)都需要調用同一個(些)函數(簡稱工具箱),這時候,如果你沒有把該工具箱添加到matlab的搜索路徑下,則需要分別把工具箱中所有用到的文件都復制到目錄abc和def下才能正確運行。這顯然浪費空間,所以,matlab提供了一個搜索路徑(默認在matlab安裝目錄下的toolbox中),只要把工具箱對應的整個文件夾復制到搜索路徑對應的目錄下,並且通知matlab一聲(把該路徑正確添加到搜索路徑中),就可以在abc和def中使用這個工具箱了(即無論你的工程文件在哪個目錄(有效的目錄)下都可以訪問這個工具箱中的函數)。下面就以matlab安裝目錄下的toolbox目錄作為默認的添加路徑進行詳細說明。
1. 如何添加工具箱?
以下是添加工具箱的方法:(論壇很多人轉載過,這里就不作區分了,下面的舉例也一樣)
如果是Matlab安裝光碟上的工具箱,重新執行安裝程序,選中即可。如果是單獨下載的工具箱,則需要把新的工具箱(以下假設工具箱名字為svm)解壓到toolbox目錄下,然後用addpath或者pathtool把該工具箱的路徑添加到matlab的搜索路徑中,最後用which
newtoolbox_command.m來檢驗是否可以訪問。如果能夠顯示新設置的路徑,則表明該工具箱可以使用了。具體請看工具箱自己代的README文件。
1.1 舉例:
要添加的工具箱為svm,則解壓後,里邊有一個目錄svm,假設matlab安裝在D:\MATLAB6p5,將svm目錄拷貝至D:\MATLAB6p5\toolbox,然後運行matlab,在命令窗口輸入addpath
D:\MATLAB6p5\toolbox\svm回車,來添加路徑。然後在svm目錄下,任意找一個m文件,以svcinfo.m為例,在命令窗口中輸入which
svcinfo.m。如果顯示出該文件路徑,如
D:\MATLAB6p5\toolbox\svm\svcinfo.m,則安裝成功,當然也可以在命令窗口輸入path來查看。
上面的說明和例子基本上介紹了在matlab中如何添加工具箱,下面是其他補充:
1.2 添加方式總結:
事實上,有兩種添加工具箱到matlab搜索路徑的方法:其一是用代碼,其二是用界面。其實無論用哪種方法,都是修改pathdef.m這個文件,閣下如果是高手,可以直接打開該文件修改,呵呵,對此這里不作討論。
1.2.1 代碼方式:
1.2.1.1 適用於添加下載的工具箱(別人的):
在命令窗口輸入addpath D:\MATLAB6p5\toolbox\svm 或者addpath(『D:\MATLAB6p5\toolbox\svm』);
但是這種方法只能添加svm目錄,如果該目錄下有其他子文件夾,並且運行時候「隱式」調用到這些子文件夾(例如假設svm目錄下存在子文件夾matdata,該子文件夾下有logo.mat這個文件,且在m文件代碼中使用了諸如
load logo
這樣的句子,即沒有顯式給出logo.mat的具體路徑,則稱為「隱式」),則不能正確訪問。因此,有必要在添加時使用以下語句把svm目錄下所有文件夾都添加到搜索路徑中:
500){this.resized=true;this.style.width=500;}"> 程序代碼
addpath(genpath(D:\MATLAB6p5\toolbox\svm));
另外,如果只使用以上代碼,則退出matlab後,新添加的路徑不會被保存下來,下次重新啟動matlab後又需要重新添加。可以用savepath來解決這個問題,即在命令窗口中使用
savepath 便可。不過保存路徑操作只對matlab
2006a、2006b有效(應該對版本7.0以上的都有效,因沒有測試,所以不敢肯定),對6.5版本的matlab無效(該版本沒有savepath這個命令)。
1.2.1.2 適用於添加自己的工具箱(即工具箱自己編寫,然後希望別人下載後當運行主文件時自動把路徑添加到matlab搜索路徑中):
在主文件中加入如下代碼;
500){this.resized=true;this.style.width=500;}"> 程序代碼
sCurrPath = fileparts(mfilename('fullpath'));
addpath(genpath(sCurrPath)); %如果該工具箱沒有其他子目錄,則可以不需要用genpath
savepath; %這句可根據各人需要自行選擇,相信上一節的解釋已經很清楚
1.2.2 界面方式:
首先把主界面調出來,有兩種方式,一種是在命令窗口輸入pathtool,另一種是在matlab菜單調用(File
-> Set Path…)。打開主界面後,相信不用太多解釋了。Add Folder… 或者 Add with subfolders…
就可以了,添加完畢後,如果需要保存該路徑,則在close前save一下就可以了。
這種方式的好處是如果路徑有問題,matlab會馬上報錯,告訴用戶添加失敗。
2 工具箱添加失敗:
2.1 work目錄和toolbox目錄問題:
你當然可以單獨把一個或多個文件(不含文件夾)放在work目錄下來實現「1對n」,因為work目錄是其中一個matlab默認的搜索路徑,但顯然不能包含文件夾,如果包含文件夾,則同樣需要把該文件夾添加到搜索路徑中。相反,你不能單獨把一個或多個文件(不含文件夾)放在toolbox目錄下來實現「1對n」,因為toolbox這個目錄並非matlab的一個默認搜索路徑,除非你把toolbox文件夾添加到搜索路徑中。
2.2 由於路徑名稱而導致添加失敗的總結:
2.2.1 路徑存在空格:
錯誤:addpath C:\Program Files\MATLAB\R2006b\toolbox\finity
正確:addpath(『C:\Program Files\MATLAB\R2006b\toolbox\finity』) 或者使用界面方式添加
說明:在6.5版本的matlab不推薦使用帶空格的路徑,因為matlab6.5的安裝路徑是不允許有空格的,因此不曉得帶空格的工具箱路徑會出現什麼問題。7.0以上應該沒有問題。
界面方式則估計沒有問題,有問題matlab會自動報錯的。
2.2.2 路徑存在中文:
用addpath和界面方式均可以成功添加,但不推薦,最好使用英文路徑。
2.2.3 路徑存在「@」字元:
均不成功,不要使用「@」字元
小結:出現其他與添加相關的錯誤時,用標準的路徑和文件名試試吧。
3 正確添加了工具箱,但運行調用時出錯:
3.1 版本問題:
對於工具箱檢測到matlab版本不兼容的問題,先引用一下happy教授的回復:
=====================happy================================
這個是有用的,估計是作者考慮到隨著matlab的升級會出現不兼容的問題,因此加了類似的設置error('unsupported
matlab version. please send an
email.');以提示大家。從這一設置上看4.x和5.x版本的是完全沒有問題的,之後的版本可能會出現問題,是否真的會出現需要進行測試
=========================================================
我也遇到過這類問題(如3.3節提到的spm5,下載得到的文件如果遇到2006版本的matlab則無法成功運行),但不是matlab的直接回復說「版本不支持」,而是普通的語法出錯。我的經驗是根據錯誤提示調試一下,看看問題出在哪裡,然後再對程序作相應修改。例如在我的問題中,由於不支持最新的版本,所以2006a和2006b版本分別用下面的語句進行檢查:strcmp(version('-release'),'2006a')
和 strcmp(version('-release'),'2006b')。
3.2 程序中其他語法錯誤:
估計部分語法不兼容,例如7.0版本以上的matlab可以使用&&、||、@(x)等等之類的符號,但是在6.5版本下無效,這種錯誤也需要自己手動修改一下代碼。
3.3 工具箱中的函數重名問題:
Happy教授也提到過,除了改名,沒有太好的辦法。但是如果改的地方不止一個,例如遇到該文件進行了多次的自我調用(一個典型例子是以switch
和case語句進行區分不同的操作),或者其他文件存在對該文件的調用時,這是個很頭痛的事情。根據我的經驗,也沒有找到太好的解決辦法。以我所用的兩個工具箱為例,它們的文件夾名字不同(一個是spm2,一個是spm5),但是裡面的主m文件名字都一樣,為spm.m,如果兩個工具箱同處於matlab的搜索路徑中,會導致其中一個工具箱失效,更別說兩者之間通過切換來進行調用了。我一般的解決方法是安裝兩個matlab,例如一個是6.5版,一個是2006版,把兩個工具箱分別添加到不同的matlab中,這樣就可以啟動不同版本的matlab使用不同版本的工具箱了,呵呵,算是一個補救的方法吧。
3.4 找不到m文件的問題:
如果你已經把工具箱正確添加到搜索路徑下,這種情況一般不會發生。也就是說,通過「文件夾
-> 運行matlab
->添加路徑」步驟後,該文件夾下所有文件應該都可以訪問到。但是,當你對該文件夾下的m文件更新(包括修改和新增)了以後,此時如果你不重啟matlab,則可能會出現找不到m文件的問題(特別是該工具箱中的文件沒有依賴關系,它們只是被放在一起方便調用,當你新增一個m文件到該文件夾下而不重啟matlab的時候,會造成這一新增m文件訪問失敗)。解決這個問題的方法之一顯然是重啟matlab,如果你不想重啟,也可用第二個方法:在命令窗口輸入:
rehash toolbox ,「強制」matlab刷新toolbox目錄下的所有文件,這樣就可以正確訪問了。
Ⅶ 怎樣在matlab中添加工具箱
你把工具箱放到matlab安裝下面的文件夾就行了,如果要用工具箱的話要在程序前面加個路徑
addpath://...就行了
Ⅷ 如何增加matlab的工具箱
Matlab大部分函數都放在了toolbox這個文件夾下面。可以試著把需要的函數和工具箱放進去看看能不能用。象matlab升級以後功能會更強大,包含的工具箱也越多,所佔用的硬碟空間也變得很大。建議你安裝的時候選擇自定義安裝,只裝自己需要的幾個工具箱,看你需要是用在什麼專業,它裡面有很多比如財務工具箱,航空工具箱,生物技術工具箱對與我專業就沒有用,就可以不安裝。這樣就省了空間了。
總結一下matlab添加工具箱的方法:第一種:如果是安裝光碟上的工具箱,重新執行安裝程序,選中即可。如果是單獨下載的工具箱,一般情況下僅需要把新的工具箱解壓到某個目錄,然後用pathtool添加工具箱的路徑。在命令窗口中敲入pathtool,會出現一個setpath的窗口,點add folder或者add with subfolders按鈕,選中你的工具箱。保存既可。任選工具箱中的一個命令,然後help一下看看是否好使。字數限制。舉例:我下載了支持向量基工具箱,解壓後,里邊有一個目錄svm
我的matlab安裝在D:MATLAB6p5
將svm目錄拷貝至D:MATLAB6p5toolbox
然後運行matlab,在命令窗口輸入addpath D:MATLAB6p5toolboxsvm回車,來添加路徑。
然後在svm目錄下,任意找一個m文件,以svcinfo.m為例
在命令窗口中輸入which svcinfo.m
如果顯示出該文件路徑,如 D:MATLAB6p5toolboxsvmsvcinfo.m
則安裝成功
Ⅸ 如何導入matlab工具箱
首先是下載好安裝壓縮包,我這里下載的是libsvm-3.17.zip,下載好,解壓,然後將其放到MATLAB安裝文件夾toolbox文件夾下,這里說明一點:並不是必須要到這個文件夾下,只是為了規范,這樣應用的時候,工具箱就全在toolbox工具箱文件夾里了。便於管理和操作。
以我的電腦為例,我的MATLAB安裝在D盤Program Files文件夾中,那麼我需要將解壓好的libsvm-3.17文件夾放在D:\Program Files\MATLAB\R2012a\toolbox文件夾下
然後我們需要將這個路徑設定進來。
點擊 file- set path
會彈出下面這個界面,這里要注意了,很多教程中都是說點擊add folders-,但是很多情況下,都會發生錯誤,這是因為如果你的工具箱文件夾中含有子文件夾,那麼久無法添加到路徑當中來,那麼應用的時候肯定會發生錯誤。
正確添加方法(如下圖):單擊-add with subfolders,找到剛才的libsvm-3.17文件夾,確定,然後最後保存就可以了。
說明:
並不是到這一步,就代表工具箱導入成功了,要具體看工具箱的說明,例如對這一個工具箱libsvm,工具箱還不可以用,還需要進行編譯、make等操作。
具體步驟
在MATLAB主窗口中依次輸入
mex -setup 回車
y 回車
然後在出現的選項中選擇含有C++6.0的那個選項的序號,例如我的是2,那麼輸入 2 回車
y 回車
make 回車
等待自動執行完畢,導入全部完成,可以使用了。