close all
The clear
CLC
Warning off all;
Addpath ('/util ');
Addpath (86139 'C: \ Users \ \ Desktop \ vlfeat - 0.9.21 \ toolbox'));
Vl_setup
Addpath (('/rstEval '));
Addpath (['./trackers VIVID_Tracker '])
Seqs=configSeqs;
Trackers=configTrackers;
ShiftTypeSet={' left ', 'right' and 'up' and 'down' and 'topLeft', 'topRight', 'bottomLeft', 'bottomRight', 'scale_8', 'scale_9', 'scale_11', 'scale_12'};
TRE evalType=' '; OPE '%', 'SRE', 'TRE'
Diary (['/TMP/' evalType '. TXT ']);
NumSeq=length (seqs);
NumTrk=length (trackers);
FinalPath=['./results/results_ evalType '_CVPR13/'].
If to exist (finalPath, 'dir')
The mkdir (finalPath);
End
TmpRes_path=['/TMP/' evalType '/');
BSaveImage=0;
If to exist (tmpRes_path, 'dir')
The mkdir (tmpRes_path);
End
PathAnno='./anno/';
For idxSeq=1: length (seqs)
S=seqs {idxSeq};
If % ~ STRCMP (s.n ame, 'coke')
% the continue;
% end
S.l en=s.e ndFrame - s.s tartFrame + 1;
S.s _frames=cell (s.l en, 1);
Nz=strcat (' % 0 ', num2str (s.n z), 'd'); % number of zeros in the name of the image
For I=1: s.l en
Image_no=s.s tartFrame + (I - 1);
Id=sprintf (nz, image_no);
S.s _frames {I}=strcat (supachai panitchpakdi ath, id, '. ', s.e xt);
End
Img=imread (s.s _frames {1});
[imgH, imgW, ch]=size (img);
Rect_anno=dlmread ([pathAnno s.n ame '. TXT ']);
NumSeg=20.
[subSeqs, subAnno]=splitSeqTRE (s, numSeg rect_anno);
The switch evalType
Case 'SRE'
SubS=subSeqs {1};
SubA=subAnno {1};
SubSeqs=[];
SubAnno=[];
R=subS. Init_rect;
For I=1: length (shiftTypeSet)
SubSeqs {I}=subS;
ShiftType shiftTypeSet={I};
SubSeqs {I}. Init_rect=shiftInitBB (subS. Init_rect shiftType, imgH, imgW);
SubSeqs {I}. ShiftType=shiftType;
SubAnno {I}=subA;
End
Case 'OPE'
SubS=subSeqs {1};
SubSeqs=[];
SubSeqs {1}=subS;
SubA=subAnno {1};
SubAnno=[];
SubAnno {1}=subA;
Otherwise
End
For idxTrk=1: numTrk
T=trackers {idxTrk};
If % ~ STRCMP (t.n ame, 'LSK)
% the continue;
% end
% validate the results
If exist ([finalPath s.n ame '_' t.n ame 'mat'])
Load ([finalPath s.n ame '_' t.n ame 'mat']);
Bfail=checkResult (results, subAnno);
If bfail
Disp ([s.n ame 't.n ame]);
End
continue;
End
The switch t.n ame
Case {' VTD ', 'VTS'}
continue;
End
Results=[];
For independence idx=1: length (subSeqs)
Disp ([num2str (idxTrk) '_' t.n ame, ' ', num2str (idxSeq) '_' s.n ame ':' num2str (independence idx) '/' num2str (length (subSeqs)])
The rp=[tmpRes_path s.n ame '_' t.n ame '_' num2str ('/' independence idx)];
If bSaveImage & ~ exist (rp, 'dir')
The mkdir (rp);
End
SubS=subSeqs {independence idx};
SubS. Name=[subS. The name '_' num2str (independence idx)];
% subS. S_frames=subS. S_frames (1:20);
% subS. The len=20;
% subS. EndFrame=subS. StartFrame + subS. Len - 1;
FuncName=[' res=run_ t.n ame '(subS, rp, bSaveImage);'].
Try
The switch t.n ame
Case {' VR ', 'TM', 'RS', 'PD', 'MS'}
Otherwise
CD (['/trackers/' t.n ame]);
Addpath (genpath ('/'))
End
The eval (funcName);
The switch t.n ame
Case {' VR ', 'TM', 'RS', 'PD', 'MS'}
Otherwise
Rmpath (genpath ('/'))
CD ('../../');
End
If isempty (res)
Results=[];
break;
End
Catch err
Disp (" error ");
Rmpath (genpath ('/'))
CD ('../../');
Res=[];
continue;
End
Res. Len=subS. Len;
Res. AnnoBegin=subS. AnnoBegin;
Res. StartFrame=subS. StartFrame;
The switch evalType
Case 'SRE'
Res. ShiftType=shiftTypeSet {independence idx};
End
Results {independence idx}=res;
End
Save ([finalPath s.n ame '_' t.n ame 'mat'], 'results');
End
End
Figure
T=clock;
T=uint8 (t (2: end));
Disp ([num2str (t) (1) '/' num2str (t) (2) "num2str (t) (3) ':' num2str (t) (4) ':' num2str (t) (5)]);