lucifer443 / RecurrentBEV

[ECCV 2024] RecurrentBEV: A Long-term Temporal Fusion Framework for Multi-view 3D Detection
Apache License 2.0
17 stars 1 forks source link
3d-object-detection 3d-perception autonomous-driving bev-perception nuscenes

RecurrentBEV

[ECCV 2024] RecurrentBEV: A Long-term Temporal Fusion Framework for Multi-view 3D Detection


## Introduction This repository is an official implementation of [RecurrentBEV](https://www.ecva.net/papers/eccv_2024/papers_ECCV/papers/09090.pdf). It is built based on MMDetection3D. ## Main Results #### NuScenes Val Set | Backbone | Img Size | Pretrain | NDS | mAP | Config | Download | |:--------:|:--------:|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:----:|:----:|:----------------------------------------------------------------------------:|:-------------------------------------------------------------------------------------------:| | Res50 | 256x704 | [ImageNet](https://download.pytorch.org/models/resnet50-0676ba61.pth) | 54.9 | 44.5 | [config](configs/recurrentbev/recurrentbev_res50_704x256_ep90.py) | [model](https://drive.google.com/file/d/1khQVn0dAZQAKzXGcYLdAaJXlnOaeZpES/view?usp=sharing) | | Res101 | 512x1408 | [ImageNet](https://download.pytorch.org/models/resnet50-0676ba61.pth) | 59.9 | 50.9 | [config](configs/recurrentbev/recurrentbev_res101_1408x512_ep90.py) | - | | Res101 | 512x1408 | [NuImages](https://download.openmmlab.com/mmdetection3d/v0.1.0_models/nuimages_semseg/cascade_mask_rcnn_r101_fpn_1x_nuim/cascade_mask_rcnn_r101_fpn_1x_nuim_20201024_134804-45215b1e.pth) | 61.2 | 52.8 | [config](configs/recurrentbev/recurrentbev_res101_1408x512_ep60_nuimages.py) | [model](https://drive.google.com/file/d/1Op8nBCWZD9kj-b_6ebK5X8S6M0JyAbFG/view?usp=sharing) | #### NuScenes Test Set | Backbone | Img Size | Pretrain | NDS | mAP | Config | Download | |:----------:|:--------:|:------------------------------------------------------------------------------------:|:----:|:----:|:-------------------------------------------------------------------------------------:|:-------------------------------------------------------------------------------------------:| | V2-99 | 640x1600 | [DD3D](https://github.com/exiawsh/storage/releases/download/v1.0/dd3d_det_final.pth) | 65.1 | 57.3 | [config](configs/recurrentbev/recurrentbev_v2-99_1600x640_ep60_trainval.py) | [model](https://drive.google.com/file/d/18TZJ_l928F_2GfXNtWckDnQqoBy8Fg9x/view?usp=sharing) | | ConvNeXt-B | 640x1600 | COCO | 65.1 | 57.4 | [config](configs/recurrentbev/recurrentbev_convnext-b_1600x640_ep60_trainval_coco.py) | - | #### Inference Speed The below table shows end-to-end FPS (Frames Per Second) of RecurrentBEV measured with a single RTX-3090. | Method | Pytorch-FP32 | TensorRT-FP32 | TensorRT-FP16 | TensorRT-INT8 | |:----------------------------------------------------------------------------------------------------------------------------------:|:------------:|:-------------:|:-------------:|:-------------:| | RecurrentBEV | 25.6 | 46.3 | 129.3 | **234.8** | | [StreamPETR](https://github.com/exiawsh/StreamPETR/blob/main/projects/configs/StreamPETR/stream_petr_r50_flash_704_bs2_seq_90e.py) | 26.7 | 53.9 | 134.6 | 167.4 | ## Getting Started Please follow our documentation step by step. If you like our work, please recommend it to your colleagues and friends. 1. [Environment Setup.](docs/data_preparation.md) 2. [Data Preparation.](docs/data_preparation.md) 3. [Training and Inference.](docs/training_and_inference.md) 4. [Visualization](docs/visualization.md). 5. [Deployment](docs/deployment.md). ## Features List - [x] RecurretBEV code - [ ] Visualization - [ ] Convert to TRT model - [ ] TensorRT inference ## Acknowledgements We thank these great works and open-source codebases: * [MMDetection3D](https://github.com/open-mmlab/mmdetection3d) * [BEVDet](https://github.com/HuangJunJie2017/BEVDet) * [SOLOFusion](https://github.com/Divadi/SOLOFusion) * [StreamPETR](https://github.com/exiawsh/StreamPETR/tree/main?tab=readme-ov-file) ## Citation If you find RecurrentBEV is useful in your research or applications, please consider giving us a star 🌟 and citing it by the following BibTeX entry.