第一步:环境配置
先在GitHub上下载SiamCAR论文的代码,附上下载地址https://github.com/ohhhyeahhh/SiamCAR
论文地址:https://arxiv.org/abs/1911.07241
按照GitHub上给的要求pip install -r以下包
numpy
pytorch==1.2.0
opencv-python
pyyaml
yacs
tqdm
colorama
matplotlib
cython
tensorboardX
第二步:下载模型
Github上给出了模型的百度云下载路径
general_model code: lw7w
got10k_model code: p4zx
LaSOT_model code: 6wer
将模型下载好后在tool文件夹下新建一个snapshot文件夹,用来放置模型
第三步:下载数据集
在这里笔者所用的数据集是OTB100,在网上很多地方都可以下载,在这就不给出链接了,下载好数据集后在SiamCAR目录下建立testing_dataset文件夹用来存放数据集以及下载好的json文件,json文件下载地址github中也已给出百度云SOT_eval_免费高速下载|百度网盘-分享无限制,下载好后放在数据集文件夹下,使用别的数据集也是同样的步骤。
第四步
测试运行 打开tools文件夹下的test.py文件,将第55行的dataset_root设置为上面步骤中新建文件夹testing_dataset的绝对路径(为了避免不必要的报错,最好设置绝对路径)
dataset_root = os.path.join(cur_dir,'C:\\Users\\cheng\\Desktop\\SiamCAR\\testing_dataset', args.dataset)
而后在terminal工作台中将工作路径cd至tools下,在工作台输入命令,代码提供了可视化实现,若是想要进行可视化的实现可以输入第二行的命令
python test.py --dataset OTB100 --snapshot snapshot/model_general.pth
python test.py --dataset OTB100 --snapshot snapshot/model_general.pth--vis #可视化
若是使用不同数据集以及模型,只需在命令中进行替换即可。
如果想要使用got10k_model 和LaSOT_model进行测试,需要修改一个地方的代码。打开pysot\models\model_builder.py文件,修改第42行代码。如果使用model_general.pth模型,需要将该行代码修改为下面第一行代码,如果使用SiamCAR_LaSOT.pth和SiamCAR-GOT.pth,则需要将该行代码修改为下面第二行代码
self.down = nn.ConvTranspose2d(256 * 3, 256, 1, 1) #model_general.pth
self.down = nn.Conv2d(256 * 3, 256, 1, 1) #SiamCAR_LaSOT.pth和SiamCAR-GOT.pth
第五步 遇到的错误
AssertionError: C:\Users\cheng\Desktop\SiamCAR\testing_dataset\OTB100\Human4-2/img/0001.jpg
这是因为OTB100数据集下的Human4文件夹与OTB100.json文件中的Human4-2不对应,此时需要修改OTB100.json文件,将文件中的Human4-2使用Ctra+R全部替换为Human4(除了第一个) ,注意第一个不要替换,否则会产生覆盖报错。同样情况的还有将Jogging-1和Jogging-2,替换成Jogging,将Skating2-1和Skating2-2,替换成Skating2。
第六步 运行成功
而后重新输入命令,运行成功。