1. 前言
AB3MOT是经典的3D多目标跟踪框架,将2D卡尔曼推广到了3D,并将2D IOU匹配推广到了3D。由于论文的原理基本上与2D相同所以作者在文中没有叙述很多细节,要理解具体实现细节,只能看代码。
项目代码
论文地址
2.环境配置
anaconda 官网下载
KITTI数据集 KITTI这是会发现很大如果简单测试可以先不下载,我是先按照README测试了QuickDemo后,最后测试的完整数据集,因为校园网很贵,或者凌晨下载,凌晨不要钱,总之你如果下载数据集不方便可以跳过继续看。
参考链接1:
ubuntu18.04配置AB3DMOT多目标跟踪算法,详细配置流程–暧昧的呆呆猫
按照官方README一步一步来,遇到问题参考“参考链接1”,最后添加环境变量:
sudo gedit ~/.bashrc
加入
export PYTHONPATH=${PYTHONPATH}:/home/rock/AB3DMOT
export PYTHONPATH=${PYTHONPATH}:/home/rock/AB3DMOT/Xinshuo_PyToolbox
注意rock是我的用户名字,改成你的,还要注意文件夹结构的对应
source ~/.bashrc
3.QuickDemo
此时准备好环境后直接运行QuickDemo会报错,因为文件跟代码存在问题,首先是需要OXTS数据集文件
KITTI官网下载。并在AB3MOT/data/KITTI/目录下新建tracking文件夹,此时提醒你已有文件夹,删除重建好了,因为原始的丢失了
将下载好的文件解压进去,最好使用linux的标准的解压命令Ubuntu 常用解压与压缩命令-蕉叉熵
,有时解压由于编码问题也会出现莫名bug.
你可以看到data目录下有个mini的文件夹,复制里面训练集与测试集的calib与image_02到相应的tracking文件夹下
此时运行README的QuickDemo还是报错,哎(当时我在想不是吧大佬的代码这么多bug!!!),后来我发现读懂代码是复现大佬代码的第一道门槛,嘿嘿
修改代码,
因为mini数据集不全,所以把AB3MOT/AB3MOT_libs/utils.py中验证集的参数改为
为什么呢,看下图,因为复制的mini只有这两个,原始代码是完整KITTI数据集的
此时运行,发现成功了结果在AB3MOT/results/KITTI/pointrcnn_val_H1_thres
分别是图片与视频,由于图片很少所以视频很短,接下来需要下载KITTI数据集,复现长的视频序列。
4.KITTI数据集测试
刚开始你会发现官网让你下载完整数据集,然后看到数据集大小,就劝退了,后来经过细细阅读代码,我发现只需要下载15G的图像数据即可:
并不需要雷达的35GB除非你想可视化点云的。因此我只下载左相机的,一定看清楚左相机,数据集后面也有描述。漫长的等待,其实就是吃了饭的功夫,嘿嘿~
删除tracking中原先的图像数据,解压新的。剩下的跟QuickDemo的命令一样,结果存放位置也一样。
python3 main.py --dataset KITTI --split val --det_name pointrcnn
python3 scripts/post_processing/trk_conf_threshold.py --dataset KITTI --result_sha pointrcnn_val_H1
python3 scripts/post_processing/visualization.py --result_sha pointrcnn_val_H1_thres --split val
打开就是结果的视频了,0001.mp4见复现结果,接下来慢慢研究,嘿嘿文章来源:https://www.toymoban.com/news/detail-779385.html
复现结果
tip:markdown图片gif居中小技巧
后缀加入#pic_center
文章来源地址https://www.toymoban.com/news/detail-779385.html
到了这里,关于【论文复现】AB3DMOT: A Baseline for 3D Multi-Object Tracking and New Evaluation Metrics的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!