MCPcopy Index your code
hub / github.com/WHU-USI3DV/MENet

github.com/WHU-USI3DV/MENet @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
309 symbols 947 edges 77 files 108 documented · 35% updated 2y ago★ 52
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

MENet

This is the official code for the paper 《MENet: Map-enhanced 3D object detection in bird’s-eye view for LiDAR point clouds》.

demo_nus

News

Catalogue

Performance

Performance without CBGS: | Method | Modality | mAP | NDS | Weights | | :-----------------------------------------------: | :------: | :---: | :---: | :---------------------------------------------------------------------------------------------------: | | CenterPoint | L | 52.7 | 61.2 | Google Drive | | MENet | L+M | 56.9 | 63.4 | Google Drive | | SECOND | L | 35.7 | 51.3 | Google Drive | | ME SECOND | L+M | 43.1 | 55.5 | Google Drive |

Performance with CBGS: | Method | Modality | mAP | NDS | Weights | | :------------------------------------: | :------: | :---: | :---: | :-----------: | | CenterPoint | L | 56.2 | 64.7 | TODO | | MENet | L+M | 56.7 | 65.5 | TODO | | SECOND | L | 47.6 | 59.2 | TODO | | ME SECOND | L+M | 50.9 | 61.4 | TODO |

Installation

Tested Environment

Steps

  1. Install the package listed above. We recommend that you create a new conda environment. To install the mmxxx series packages, you can click the hyperlinks and follow the instructions in the official documentations.
  2. Install cuda extension.
python setup.py develop

Dataset Preparation

You can download, organize and prepare the dataset according to the documentory of mmdetection3d(nuScenes | Lyft).

Train

Train on multiple GPUs

export CUDA_VISIBLE_DEVICES=0,1,2,3 # 4 GPUs for example
export GPU_NUM=4
export CONFIG_FILE="configs/menet.py" # the config of any model
export WORK_DIR="./work_dirs/menet" # the output directory
./tools/dist_train.sh ${CONFIG_FILE}  ${GPU_NUM} --work-dir ${WORK_DIR} --deterministic

Train on single GPU

python tools/train.py ${CONFIG_FILE} --work-dir ${WORK_DIR} --deterministic

Evaluate

Evaluate on multiple GPUs

export CUDA_VISIBLE_DEVICES=0,1,2,3 # 4 GPUs for example
export GPU_NUM=4
export EVAL_METRICS=bbox

export CONFIG_FILE=./configs/menet.py
export CHECKPOINT_FILE="path of the weight of the model"
export RESULT_FILE=./work_dirs/menet/results.pkl

./tools/dist_test.sh ${CONFIG_FILE}  ${CHECKPOINT_FILE}  ${GPU_NUM} --out ${RESULT_FILE} --eval ${EVAL_METRICS}

Evaluate on single GPU

python tools/test.py ${CONFIG_FILE}  ${CHECKPOINT_FILE} --eval ${EVAL_METRICS}

Related Projects

Core symbols most depended-on inside this repo

freeze_module
called by 9
menet/utils/weights_utils.py
load_module_from
called by 8
menet/utils/weights_utils.py
obtain_sensor2top
called by 4
tools/data_converter/nuscenes_converter.py
build_model
called by 4
menet/models/builder.py
get_bboxes
called by 4
menet/models/head/centerpoint.py
gather_map
called by 4
menet/models/encoder/map_encoder.py
nuscenes_data_prep
called by 3
tools/create_data.py
get_data_info
called by 3
menet/datasets/lyft_dataset.py

Shape

Method 179
Class 65
Function 64
Route 1

Languages

Python99%
C++1%

Modules by API surface

menet/models/backbone/swin.py31 symbols
menet/datasets/pipelines/transforms_3d.py31 symbols
menet/models/attentions/bam.py17 symbols
menet/models/attentions/cbam.py14 symbols
menet/datasets/pipelines/dpsampler.py14 symbols
menet/models/encoder/map_encoder.py13 symbols
menet/datasets/nuscenes_dataset.py13 symbols
menet/models/builder.py12 symbols
menet/models/fusion_models/base.py11 symbols
menet/datasets/pipelines/loading.py11 symbols
menet/utils/custom_init.py9 symbols
tools/data_converter/nuscenes_converter.py8 symbols

For agents

$ claude mcp add MENet \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact