前一段时间Part-A2的代码公布了,这里就记录一下自己的学习过程。
github代码仓库:传送门
对文章的解读:传送门
安装
其中,spare-conv安装起来有点难度。具体可以参考一篇SECOND的安装的博客,相比于在spare-conv的github中的安装介绍,我采坑的一点是要安装:
sudo apt-get install libboost-all-dev
否则会编译失败。还有就是scikit-image安装时出现错误,更新pip也许可以解决,参考另外一篇博客。
数据预处理
要求运行一下:
python kitti_dataset.py create_kitti_infos
这就看一下这个干了些什么:
# pcdet\datasets\kitti\kitti_dataset.py
def create_kitti_infos(data_path, save_path, workers=4):
...
print('---------------Start to generate data infos---------------')
dataset.set_split(train_split)
kitti_infos_train = dataset.get_infos(num_workers=workers, has_label=True, count_inside_pts=True)
with open(train_filename, 'wb') as f:
pickle.dump(kitti_infos_train, f)
print</

本文记录了Part-A2 Net的代码学习过程,包括安装步骤、数据预处理、模型结构和训练细节。在安装过程中遇到spare-conv的问题,需要安装libboost-all-dev。数据预处理涉及转换相机坐标系到LiDAR坐标系。在训练中,重点介绍了PartA2Net的网络结构,包括VFE、RPN、RPN Head和RCNN。前向计算过程涉及forward_rpn、forward_rcnn和get_training_loss函数。测试阶段与训练类似,但没有损失计算,最终通过NMS得到预测结果。
最低0.47元/天 解锁文章





