VISION-SJTU / USOT

[ICCV2021] Learning to Track Objects from Unlabeled Videos
63 stars 7 forks source link

Is this test the same as trackers like Siam RPN? #11

Closed Zoeey123 closed 2 years ago

zhengjilai commented 2 years ago

Our tracker has both an offline branch and an online memory branch, while SiamRPN only has an offline branch. The implementation of USOT testing scripts refers to that of Ocean in the TracKit framework.

For more details, please refer to README.md for how to test our tracker. As far as I know, SiamRPN and SiamRPN++ also use pysot-toolkit for evaluation (both implemented in the pysot framework), so there exists some similarities in terms of implementation, to some extent.

Zoeey123 commented 2 years ago

Thanks. Is the whole test process the same as a regular siamese network tracker?Search area, template area, track forward?

zhengjilai commented 2 years ago

In terms of the offline branch, it seems to be almost the same. It is worth mentioning that Ocean additionally adds some tricks such as window influence and scale penalty (see usot_tracker.py), and we inherit these tricks from Ocean.

chenrxi commented 2 years ago

image

I ask a question about the code in this issue. line 264-270 in usot_tracker.py, whether the “* mem_length“ in the definition of start index and end index is correct? And what does the comment mean? @zhengjilai

zhengjilai commented 2 years ago

Yes. It is definitely a bug. You can remove the code piece "* mem_length" to obtain the truly-wanted memory queue implementation. It notice the bug on 2021.12.19, so I add the comment there.

I leave the bug there for two reasons. First, I have to keep align with the reported performance in paper, as fixing this bug causes pisitive/negative performance effect on every benchmark. Second, I have actually fixed it in an advanced version of USOT, which will be released soon in this repo.