复现和理解pointpillar算法和VoxelNet之后,下面对mmdetection3d的模型框架进行解读。
该篇文章参考:带你玩转 3D 检测和分割(一):MMDetection3D 整体框架介绍_用mmdetion3d写一个简单的语义分割模型-CSDN博客
以下是本人在学习3D目标检测过程中的一些过程记录和理解,仅供大家参考:
基于kitti数据集的3D目标检测算法复现流程:基于kitti数据集的3D目标检测算法的训练流程_pointpillar训练kitti数据集-CSDN博客
pointpillar文献理解:PointPillars文献理解_pillar feature net-CSDN博客
VoxelNet文献理解:VoxelNet文献理解-CSDN博客
目录
一、前言
由于 3D 本身数据的复杂性和 MMDetection3D 支持任务(点云 3D 检测、单目 3D 检测、多模态 3D 检测和点云 3D 语义分割等)和场景(室内和室外)的多样性,整个框架结构相对复杂,新人用户的上手门槛相对较高。所以我们推出新的系列文章,让各个细分方向的用户都能轻松上手 MMDetection3D,基于框架进行自己的研究和开发。
首先展示整个代码库的目录结构,方便初步认识:
# MMDetection3D 代码目录结构,展示主要部分
mmdetection3d
|
|- configs # 配置文件
|- data # 原始数据及预处理后数据文件
|- mmdet3d
| |- ops # cuda 算子(即将迁移到 mmcv 中)
| |- core # 核心组件
| |- datasets # 数据集相关代码
| |- models # 模型相关代码
| |- utils # 辅助工具
| |- ...
|- tools
| |- analysis_tools # 分析工具,包括可视化、计算flops等
| |- data_converter # 各个数据集预处理转换脚本
| |- create_data.py # 数据预处理入口
| |- train.py # 训练脚本
| |- test.py # 测试脚本
| |- ...
|- ...
在编辑器上可以看到更为完全的目录结构:

其中常用的有configs、mmdet3d、tools和work_dirs四个文件夹。其中visualization文件夹是我在进行数据集可视化时创建的,kitti数据集的可视化可以参考这篇博客: