数字图像处理与机器视觉——Visual C++与Matlab实现书中代码勘误
本文為原創作品,不用于商業用途!
歡迎關注我的博客:http://blog.csdn.net/hit2015spring和http://www.cnblogs.com/xujianqing/
做了一個小作業,這本書里的一個demo,基于PCA和SVM的人臉識別系統,里面出現了一兩個小問題,在這發出來,以供大家交流學習。
在運行程序之前,必須運行pathtool設置路徑,添加根路徑下的exportLibSVM,Kernel,PCA,SVM幾個文件夾。
人嘛難免的惰性,看到一個小的demo我總是想運行一下,看看效果,于是把這本書帶的這個程序往matlab里面一放,就想跑出來,這樣就出現了下面的畫面:
?
未定義函數或變量 'W'。
出錯 classify (line 18)
xNewFace = xNewFace*W; % 經過pca變換降維
出錯 GUIRecgFaceImage (line 3)
nClass = classify(filepath);
Error while evaluating uicontrol Callback
?
改錯:
xNewFace = ?(xNewFace-meanVec)*W; % 經過pca變換降維
classify.m函數的一句語句做修改,修改為
xNewFace = ?(xNewFace-meanVec)*V; % 經過pca變換降維
?
然后又有一個問題:
錯誤使用 svmclassify (line 53)
The first input should be a struct generated by SVMTRAIN.
出錯 multiSVMClassify (line 29)
classes = svmclassify(CASVMStruct{iIndex}{jIndex}, TestFace);
出錯 classify (line 23)
nClass = multiSVMClassify(xNewFace);
出錯 GUIRecgFaceImage (line 3)
nClass = classify(filepath);
Error while evaluating uicontrol Callback
?
?
這個問題是由于之前安裝過libsvm導致的,于是把libsvm 卸載掉就ok!
如果你原來安裝過libsvm需要先卸載掉。
方法是:在command window中輸入pathtool,在彈出的框中去掉libsvm的文件夾。
其實就是在pathtool中把它的路徑刪除了就ok!
然后就可以成功運行!
?
附上人臉識別的代碼包!
http://download.csdn.net/detail/hit2015spring/9667350
福利答謝大家!
感謝您閱讀本篇文章,對此特別發放一個無門檻的現金紅包,打開支付寶掃碼領取,可以領到錢的哦!
總結
以上是生活随笔為你收集整理的数字图像处理与机器视觉——Visual C++与Matlab实现书中代码勘误的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第一节:什么是ES6?新手该如何理解
- 下一篇: 【进阶篇】Vue Devtools——v