@@ -80,17 +80,21 @@ module.exports = () => {
8080 'TrackerTLD'
8181 ] ;
8282
83- if ( cv . version . minor > 0 ) {
83+ const hasCSRT = ( cv . version . minor > 4 || ( cv . version . minor === 4 && cv . version . patch > 0 ) ) ;
84+ const hasMOSSE = ( cv . version . minor > 3 ) ;
85+ const hasKCF = ( cv . version . minor > 0 ) ;
86+
87+ if ( hasKCF ) {
8488 trackerNames . push ( 'TrackerKCF' ) ;
8589 }
8690
8791 if ( cv . version . minor > 1 ) {
8892 // trackerNames.push('TrackerGOTURN'); TODO: sample goturn.prototxt
8993 }
90- if ( cv . version . minor > 4 || ( cv . version . minor === 4 && cv . version . patch > 0 ) ) {
94+ if ( hasCSRT ) {
9195 trackerNames . push ( 'TrackerCSRT' ) ;
9296 }
93- if ( cv . version . minor > 3 ) {
97+ if ( hasMOSSE ) {
9498 trackerNames . push ( 'TrackerMOSSE' ) ;
9599 }
96100 trackerNames . forEach ( ( trackerName ) => {
@@ -128,40 +132,43 @@ module.exports = () => {
128132 const ret = tracker . addKCF ( testImg , new cv . Rect ( 0 , 0 , 10 , 10 ) ) ;
129133 expect ( ret ) . to . true ;
130134 } ) ;
131-
132- it ( 'addCSRT' , ( ) => {
133- const tracker = new cv . MultiTracker ( ) ;
134- const ret = tracker . addCSRT ( testImg , new cv . Rect ( 0 , 0 , 10 , 10 ) ) ;
135- expect ( ret ) . to . true ;
136- } ) ;
137-
138- it ( 'addMOSSE' , ( ) => {
139- const tracker = new cv . MultiTracker ( ) ;
140- const ret = tracker . addMOSSE ( testImg , new cv . Rect ( 0 , 0 , 10 , 10 ) ) ;
141- expect ( ret ) . to . true ;
142- } ) ;
135+ if ( hasCSRT ) {
136+ it ( 'addCSRT' , ( ) => {
137+ const tracker = new cv . MultiTracker ( ) ;
138+ const ret = tracker . addCSRT ( testImg , new cv . Rect ( 0 , 0 , 10 , 10 ) ) ;
139+ expect ( ret ) . to . true ;
140+ } ) ;
141+ }
142+
143+ if ( hasMOSSE ) {
144+ it ( 'addMOSSE' , ( ) => {
145+ const tracker = new cv . MultiTracker ( ) ;
146+ const ret = tracker . addMOSSE ( testImg , new cv . Rect ( 0 , 0 , 10 , 10 ) ) ;
147+ expect ( ret ) . to . true ;
148+ } ) ;
149+ }
143150 } ) ;
144151
145152 describe ( 'update' , ( ) => {
146153 funcShouldRequireArgs ( ( ) => ( new cv . MultiTracker ( ) ) . update ( ) ) ;
147154
148155 it ( 'returns bounding box' , ( ) => {
149156 const tracker = new cv . MultiTracker ( ) ;
150- const methods = [ 'addMIL' , 'addBOOSTING' , 'addMEDIANFLOW' , 'addTLD' , 'addKCF' , 'addCSRT' , 'addMOSSE' ] ;
151- if ( cv . version . minor > 0 ) {
157+ const methods = [ 'addMIL' , 'addBOOSTING' , 'addMEDIANFLOW' , 'addTLD' , 'addKCF' ] ;
158+ if ( hasKCF ) {
152159 methods . push ( 'addKCF' ) ;
153160 }
154161
155162 // if (cv.version.minor > 1) {
156163 // methods.push('addGOTURN');
157164 // }
158- if ( cv . version . minor > 4 || ( cv . version . minor === 4 && cv . version . patch > 0 ) ) {
165+ if ( hasCSRT ) {
159166 methods . push ( 'addCSRT' ) ;
160167 }
161- if ( cv . version . minor > 3 ) {
168+ if ( hasMOSSE ) {
162169 methods . push ( 'addMOSSE' ) ;
163170 }
164-
171+
165172 methods . forEach ( ( addMethod ) => {
166173 tracker [ addMethod ] ( testImg , new cv . Rect ( 0 , 0 , 10 , 10 ) ) ;
167174 } ) ;
0 commit comments