最近在看David Ross的Incremental Learning for Robust Visual Tracking,下面把自己的一點心得體會寫一下,以后會不斷補充,還希望多批評指正交流,謝謝!
1.IVT是基於粒子濾波框架的
2.增量子空間
遇到的問題:1.現在想先把Ross文中提到的incremental PCA algorithm 用基於opencv的代碼給實現了。在做矩陣的QR分解時用到opencv的cvQR()函數,但結果貌似不對,和matlab仿真的結果有很大的出入,目前還沒與找到好的qr算法。
解決方法:用cvQR()大概就是為了得到矩陣的正交基,無意間在網上看到一個利用施密特正交化來求正交基的程序,測試了一下效果還可以,查了一下opencv中也有這個函數,即void GramSchmidt(const CvMat* src, CvMat* dst),不過它是對行向量進行正交化的,而文中好像是要對列向量進行正交化,於是改寫了這個opencv函數,具體效果要等增量PCA算法寫完后進行測試了。
2.目前已把PCA的方法放到粒子濾波的框架里了,只是沒有實現增量更新的過程,目前對重構誤差方面還不是太熟悉,也就是對構建最后的目標函數還是比較模糊,只是調用了opencvx里的cvpcadist()函數,放到粒子濾波里還是有點問題。不知道有人在研究這方面沒,現在主要的問題是對於已求出來的特征向量U,對下一幀的每個候選目標區域,如何計算每個區域與上一幀目標的相似度。下一步將着重研究一下這個問題。