写在前面///
前期环境部署跟着官网来就行,有部分包可能安装不成功,自己找对应的单独安装一下就行。
pycharm///
记得要更换解释器,新建一个正确的环境的python;如果local文件里的路径不对的话要更换成自己的,比如dataset的路径。
——代码部分
train///
下载官网给的foundation model,放置到pre trained目录下,官网给的是bash train_vipt.sh,不过这里我不需要用到一些多线程和蒸馏,所以就从lib.train.running_training文件开始。
这里主要需要改动的是main函数里的参数部分
--script 对应的你的跟踪器的脚本文件,我这里是vipt
--config 对应你训练时的配置文件,我这里训练rgbd,所以用的是deep_rgbd(experiment.vipt目录下的yaml文件)
yaml文件里的参数可以根据需求进行更改,需要添加给定的预训练文件名,也就是我们下载下来的foundation model,这里可能会出错提示找不到文件,那就把整个路径放进去,比较保险。我这里仅仅想跑通试试,所以把epoch改小就行了,包括几轮做一次val,几轮输出一个都在这里面改。
中间应该还有一些小bug调试,我忘了
训练起来之后,输出的参数在output里,pth.tar结尾,可以用于后续的test
test///
像vipt的代码里好像是没有test文件的,那就需要自己写一个,虽然我也不会写,先copy一个类似的过来,然后根据自己的需求改改。
这里还比较搞(因为自己菜),首先1.2两个参数和train里同理;
然后3.这里需要指定测试的dataset,因为我是做rgbd嘛,所以要放一个rgbd的数据集,如果用rgb的数据集的话后面就会出现3通道和6通道的匹配错误(maybe是叫这个),但是本身dataset文件里是没有depthtrack的,所以也需要自己加进去,用什么数据集test.evaluation里面就需要有对应的module,eg.我这里用了depthtrack,那么相应的就会用到test.evaluation.depthtrackdataset.py,没有的话就要自己加进去,以及test.evaluation.tracker里,数据集名称要放对。
最后4.这里的input_dtype是需要自己加进去的,如果没有的话,后面就没办法判断到底是rgb还是rgbd,加了这个参数之后就需要更改一系列相关的地方,不然会报错,可以根据报错提示一点点改。
test.py下
datasets.py下
data.py下