天天看點

追蹤算法MUSTer體驗

對應論文:MUlti-Store Tracker (MUSTer): a Cognitive Psychology InspiredApproach to Object Tracking

作者該項目相關網站:MUlti-StoreTracker (MUSTer)

代碼下載下傳位址:MUSTer_code_v1.1.zip,或者也可以下載下傳我上傳到CSDN上的代碼,http://download.csdn.net/detail/hjl240/9585443。

下載下傳源代碼,解壓縮之後,将"*/MUSTer_code_v1/opencv"加入系統路徑中(system path)。

打開Matlab,運作run_tracker.m檔案。如果出現“InvalidMEX-file”錯誤,如下圖:

追蹤算法MUSTer體驗

則參考一下3步解決問題:

1) install opencv 2.4.6 required by mexopencv
2) setup mexopencv in the folder "mexopencv". Please follow the instruction in "http://kyamagu.github.io/mexopencv/".
3) compile "ICF/gradientMex.cpp"
           

都沒問題之後,重新運作run_tracker.m檔案,效果如下(截取了4幅圖像):

追蹤算法MUSTer體驗

觀察run_tracker.m,可以發現分為兩步驟,

第一步是加載視訊/圖檔資訊(load_video_info.m),

第二步就是使用MUSTer算法跟蹤(MUSTer_tracking.p)。

但是作者恰恰将關鍵部分的代碼封裝成了加密格式(.p檔案),我們無法檢視也無法修改。

粗略看了一下對應論文的實驗部分,作者采用3.4GHz, 8 cores,32GB RAM電腦的配置,在OOTB上的平均時間達到0.287s/frame。速度有點慢。

該算法與其他算法的比較如下:

追蹤算法MUSTer體驗

另外,我稍微修改了一下run_tracker.m,使得可以自己選擇(框出)追蹤物體,

使用方法:選擇(框出)物體之後,左鍵輕按兩下矩形框内,之後便可以運作。

代碼如下:

addpath('mexopencv');
 
addpath('ICF');
base_path = './';
res_path = 'Results/';
 
name = 'Jogging';
 
video_path = [base_path name '/'];
 
[ source.img_files, pos, target_sz, ground_truth, source.video_path]...
 = load_video_info(video_path);
source.n_frames = numel(source.img_files);
rect_init = [pos, target_sz];
%讀取并顯示圖檔
im = imread('./Jogging/img/0001.jpg');
figure,imshow(im);
%選擇需要追蹤的物體
[I,RECT] = imcrop();  %RECT:[XMIN YMIN WIDTH HEIGHT]
 
bboxes = MUSTer_tracking(source, RECT);
 
dlmwrite([res_path name '.txt'], bboxes);
           

效果如下:

追蹤算法MUSTer體驗

圖:手動選擇追蹤物體

追蹤算法MUSTer體驗

圖:手動選擇追蹤物體後運作效果

另外,我還寫了一個将自己的視訊檔案轉換為符合該測試代碼要求的圖檔,也就是将視訊的每一幀儲存到圖檔中。代碼如下:

fileName = 'E:\flip.avi'; 
obj = VideoReader(fileName);
numFrames = obj.NumberOfFrames;% 視訊幀總數
%若不存在檔案夾,則建立檔案夾
if ~exist('ImageTest')
     mkdir('ImageTest');
end
for k = 1 : numFrames
     frame = read(obj,k);
     %imshow(frame);%顯示幀
     imwrite(frame,strcat('./ImageTest/',sprintf('%04d.jpg',k)),'jpg'); 
end
           

運作該程式之後,将ImageTest檔案夾生成的圖檔覆寫到Jogging/img檔案夾下,便可以運作。

繼續閱讀