matlab怎么提取特征,matlab – 了解提取特征的编码
我關(guān)注的編碼是fisher編碼,因?yàn)槲乙呀?jīng)證明我的工作效果最好.所以我想在我提取的(SIFT)功能上測(cè)試Fisher編碼,并測(cè)試系統(tǒng)的性能,無(wú)論是否編碼.
而不是重新開(kāi)始我發(fā)現(xiàn)vl_feat有一個(gè)用于fisher編碼的內(nèi)置庫(kù),他們有一個(gè)教程,以及鏈接here
現(xiàn)在我已經(jīng)完成了所需的大部分工作,但實(shí)際上編碼的內(nèi)容讓我很困惑,例如教程清楚地表明使用GMM獲得的參數(shù)執(zhí)行Fisher編碼,例如[均值,協(xié)方差,先驗(yàn)]和SIFT根據(jù)教程,GMM中將使用提取的特征:
The Fisher encoding uses GMM to construct a visual word dictionary. To
exemplify constructing a GMM, consider a number of 2 dimensional data
points. In practice, these points would be a collection of SIFT or
other local image features.
numFeatures = 5000 ;
dimension = 2 ;
data = rand(dimension,numFeatures) ;
numClusters = 30 ;
[means, covariances, priors] = vl_gmm(data, numClusters);
一旦我執(zhí)行了這一步,我將編碼另一個(gè)數(shù)據(jù)集?這讓我很困惑.我已經(jīng)使用我提取的SIFT功能生成GMM的參數(shù).
Next, we create another random set of vectors, which should be encoded
using the Fisher Vector representation and the GMM just obtained:
encoding = vl_fisher(datatoBeEncoded, means, covariances, priors);
所以這里編碼是最終結(jié)果,但它編碼了什么?我想要從我的圖像中提取的SIFT功能進(jìn)行編碼,但是如果我按照GMM中使用的教程進(jìn)行編碼.如果是這種情況那么什么是datatoBeEncoded?我是否再次使用SIFT專長(zhǎng)?
謝謝
更新:
@Shai
謝謝,但我相信我一定做錯(cuò)了.我不太明白你的意思是“將圖像與自己比較”.我有4個(gè)班,每班1000個(gè)圖像.所以我使用了第1類中的前600個(gè)圖像來(lái)學(xué)習(xí)gmm參數(shù),然后使用這些參數(shù)來(lái)編碼fisher矢量
numClusters = 128 ;
[means, covariances, priors] = vl_gmm(data, numClusters);
因此,每個(gè)均值,協(xié)方差大小為128 x 128,大小為1 x 128
現(xiàn)在,當(dāng)我使用這些函數(shù)來(lái)對(duì)400幅圖像上的fisher矢量進(jìn)行編碼時(shí)
encoding = vl_fisher(datatoBeEncoded, means, covariances, priors);
編碼的大小非常不同,大小為12000 x 1.這些無(wú)法與生成的模型進(jìn)行比較.
我已經(jīng)有一個(gè)系統(tǒng)正在處理數(shù)據(jù)集的非編碼版本,它運(yùn)行良好,但我想看看編碼將如何產(chǎn)生影響,理論上應(yīng)該改進(jìn)結(jié)果.
如果需要,我可以在這里添加代碼,但它適用于UBM-GMM,我感到困惑的原因是因?yàn)槟闾岬降挠?xùn)練方法是我用于UBM的.
如果我只編碼測(cè)試圖像,由于尺寸不匹配,我不能在分類器中使用它們.
也許我沒(méi)有正確地選擇這個(gè)或者犯了一些愚蠢的錯(cuò)誤,是否有可能得到一個(gè)簡(jiǎn)單的例子,我可以通過(guò)它來(lái)理解工作.
非常感謝
總結(jié)
以上是生活随笔為你收集整理的matlab怎么提取特征,matlab – 了解提取特征的编码的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: matlab查找替换指令,使用matla
- 下一篇: 用360急救箱后电脑恢复(360系统急救