BEVFormer
本篇笔记是代码精读,并不涉及理论分析。
代码仓库:github
仍在施工中。
Tree
.
├── docs
│ ├── can_bus.ipynb
│ ├── getting_started.md
│ ├── install.md
│ └── prepare_dataset.md
├── figs
│ ├── arch.png
│ └── sota_results.png
├── LICENSE
├── projects
│ ├── configs
│ │ ├── _base_
│ │ │ ├── datasets
│ │ │ │ ├── coco_instance.py
│ │ │ │ ├── kitti-3d-3class.py
│ │ │ │ ├── kitti-3d-car.py
│ │ │ │ ├── lyft-3d.py
│ │ │ │ ├── nuim_instance.py
│ │ │ │ ├── nus-3d.py
│ │ │ │ ├── nus-mono3d.py
│ │ │ │ ├── range100_lyft-3d.py
│ │ │ │ ├── s3dis-3d-5class.py
│ │ │ │ ├── s3dis_seg-3d-13class.py
│ │ │ │ ├── scannet-3d-18class.py
│ │ │ │ ├── scannet_seg-3d-20class.py
│ │ │ │ ├── sunrgbd-3d-10class.py
│ │ │ │ ├── waymoD5-3d-3class.py
│ │ │ │ └── waymoD5-3d-car.py
│ │ │ ├── default_runtime.py
│ │ │ ├── models
│ │ │ │ ├── 3dssd.py
│ │ │ │ ├── cascade_mask_rcnn_r50_fpn.py
│ │ │ │ ├── centerpoint_01voxel_second_secfpn_nus.py
│ │ │ │ ├── centerpoint_02pillar_second_secfpn_nus.py
│ │ │ │ ├── fcos3d.py
│ │ │ │ ├── groupfree3d.py
│ │ │ │ ├── h3dnet.py
│ │ │ │ ├── hv_pointpillars_fpn_lyft.py
│ │ │ │ ├── hv_pointpillars_fpn_nus.py
│ │ │ │ ├── hv_pointpillars_fpn_range100_lyft.py
│ │ │ │ ├── hv_pointpillars_secfpn_kitti.py
│ │ │ │ ├── hv_pointpillars_secfpn_waymo.py
│ │ │ │ ├── hv_second_secfpn_kitti.py
│ │ │ │ ├── hv_second_secfpn_waymo.py
│ │ │ │ ├── imvotenet_image.py
│ │ │ │ ├── mask_rcnn_r50_fpn.py
│ │ │ │ ├── paconv_cuda_ssg.py
│ │ │ │ ├── paconv_ssg.py
│ │ │ │ ├── parta2.py
│ │ │ │ ├── pointnet2_msg.py
│ │ │ │ ├── pointnet2_ssg.py
│ │ │ │ └── votenet.py
│ │ │ └── schedules
│ │ │ ├── cosine.py
│ │ │ ├── cyclic_20e.py
│ │ │ ├── cyclic_40e.py
│ │ │ ├── mmdet_schedule_1x.py
│ │ │ ├── schedule_2x.py
│ │ │ ├── schedule_3x.py
│ │ │ ├── seg_cosine_150e.py
│ │ │ ├── seg_cosine_200e.py
│ │ │ └── seg_cosine_50e.py
│ │ ├── bevformer
│ │ │ ├── bevformer_base.py
│ │ │ ├── bevformer_small.py
│ │ │ └── bevformer_tiny.py
│ │ ├── bevformer_fp16
│ │ │ └── bevformer_tiny_fp16.py
│ │ ├── bevformerv2
│ │ │ ├── bevformerv2-r50-t1-24ep.py
│ │ │ ├── bevformerv2-r50-t1-48ep.py
│ │ │ ├── bevformerv2-r50-t1-base-24ep.py
│ │ │ ├── bevformerv2-r50-t1-base-48ep.py
│ │ │ ├── bevformerv2-r50-t2-24ep.py
│ │ │ ├── bevformerv2-r50-t2-48ep.py
│ │ │ └── bevformerv2-r50-t8-24ep.py
│ │ └── datasets
│ │ ├── custom_lyft-3d.py
│ │ ├── custom_nus-3d.py
│ │ └── custom_waymo-3d.py
│ ├── __init__.py
│ └── mmdet3d_plugin
│ ├── bevformer
│ │ ├── apis
│ │ │ ├── __init__.py
│ │ │ ├── mmdet_train.py
│ │ │ ├── test.py
│ │ │ └── train.py
│ │ ├── dense_heads
│ │ │ ├── bevformer_head.py
│ │ │ ├── bev_head.py
│ │ │ └── __init__.py
│ │ ├── detectors
│ │ │ ├── bevformer_fp16.py
│ │ │ ├── bevformer.py
│ │ │ ├── bevformerV2.py
│ │ │ └── __init__.py
│ │ ├── hooks
│ │ │ ├── custom_hooks.py
│ │ │ └── __init__.py
│ │ ├── __init__.py
│ │ ├── modules
│ │ │ ├── custom_base_transformer_layer.py
│ │ │ ├── decoder.py
│ │ │ ├── encoder.py
│ │ │ ├── group_attention.py
│ │ │ ├── __init__.py
│ │ │ ├── multi_scale_deformable_attn_function.py
│ │ │ ├── spatial_cross_attention.py
│ │ │ ├── temporal_self_attention.py
│ │ │ ├── transformer.py
│ │ │ └── transformerV2.py
│ │ └── runner
│ │ ├── epoch_based_runner.py
│ │ └── __init__.py
│ ├── core
│ │ ├── bbox
│ │ │ ├── assigners
│ │ │ │ ├── hungarian_assigner_3d.py
│ │ │ │ └── __init__.py
│ │ │ ├── coders
│ │ │ │ ├── __init__.py
│ │ │ │ └── nms_free_coder.py
│ │ │ ├── match_costs
│ │ │ │ ├── __init__.py
│ │ │ │ └── match_cost.py
│ │ │ └── util.py
│ │ └── evaluation
│ │ ├── eval_hooks.py
│ │ ├── __init__.py
│ │ └── kitti2waymo.py
│ ├── datasets
│ │ ├── builder.py
│ │ ├── __init__.py
│ │ ├── nuscenes_dataset.py
│ │ ├── nuscenes_dataset_v2.py
│ │ ├── nuscenes_mono_dataset.py
│ │ ├── nuscnes_eval.py
│ │ ├── pipelines
│ │ │ ├── augmentation.py
│ │ │ ├── dd3d_mapper.py
│ │ │ ├── formating.py
│ │ │ ├── __init__.py
│ │ │ ├── loading.py
│ │ │ └── transform_3d.py
│ │ └── samplers
│ │ ├── distributed_sampler.py
│ │ ├── group_sampler.py
│ │ ├── __init__.py
│ │ └── sampler.py
│ ├── dd3d
│ │ ├── datasets
│ │ │ ├── __init__.py
│ │ │ ├── nuscenes.py
│ │ │ └── transform_utils.py
│ │ ├── __init__.py
│ │ ├── layers
│ │ │ ├── iou_loss.py
│ │ │ ├── normalization.py
│ │ │ └── smooth_l1_loss.py
│ │ ├── modeling
│ │ │ ├── core.py
│ │ │ ├── disentangled_box3d_loss.py
│ │ │ ├── fcos2d.py
│ │ │ ├── fcos3d.py
│ │ │ ├── __init__.py
│ │ │ ├── nuscenes_dd3d.py
│ │ │ └── prepare_targets.py
│ │ ├── structures
│ │ │ ├── boxes3d.py
│ │ │ ├── image_list.py
│ │ │ ├── __init__.py
│ │ │ ├── pose.py
│ │ │ └── transform3d.py
│ │ └── utils
│ │ ├── comm.py
│ │ ├── geometry.py
│ │ ├── tasks.py
│ │ ├── tensor2d.py
│ │ └── visualization.py
│ ├── __init__.py
│ └── models
│ ├── backbones
│ │ ├── __init__.py
│ │ └── vovnet.py
│ ├── hooks
│ │ ├── hooks.py
│ │ └── __init__.py
│ ├── opt
│ │ ├── adamw.py
│ │ └── __init__.py
│ └── utils
│ ├── bricks.py
│ ├── grid_mask.py
│ ├── __init__.py
│ ├── position_embedding.py
│ └── visual.py
├── README.md
├── tools
│ ├── analysis_tools
│ │ ├── analyze_logs.py
│ │ ├── benchmark.py
│ │ ├── get_params.py
│ │ ├── __init__.py
│ │ └── visual.py
│ ├── create_data.py
│ ├── data_converter
│ │ ├── create_gt_database.py
│ │ ├── indoor_converter.py
│ │ ├── __init__.py
│ │ ├── kitti_converter.py
│ │ ├── kitti_data_utils.py
│ │ ├── lyft_converter.py
│ │ ├── lyft_data_fixer.py
│ │ ├── nuimage_converter.py
│ │ ├── nuscenes_converter.py
│ │ ├── s3dis_data_utils.py
│ │ ├── scannet_data_utils.py
│ │ ├── sunrgbd_data_utils.py
│ │ └── waymo_converter.py
│ ├── dist_test.sh
│ ├── dist_train.sh
│ ├── fp16
│ │ ├── dist_train.sh
│ │ └── train.py
│ ├── misc
│ │ ├── browse_dataset.py
│ │ ├── fuse_conv_bn.py
│ │ ├── print_config.py
│ │ └── visualize_results.py
│ ├── model_converters
│ │ ├── convert_votenet_checkpoints.py
│ │ ├── publish_model.py
│ │ └── regnet2mmdet.py
│ ├── test.py
│ └── train.py
└── tree.txt
46 directories, 191 files