Unverified Commit a347ac75 authored by xiliu8006's avatar xiliu8006 Committed by GitHub
Browse files

[Enhance] Modify readme (#310)

* Modify README

* modify the mmdetection to mmdetection3d in CONTRIBUTING.md and add model zoo link before demo in getting_started.md

* arxiv->Arxiv

* Add model zoo link
parent 5592a505
# Contributing to mmdetection We appreciate all contributions to improve MMDetection3D. Please refer to [CONTRIBUTING.md](https://github.com/open-mmlab/mmcv/blob/master/CONTRIBUTING.md) in MMCV for more details about the contributing guideline.
All kinds of contributions are welcome, including but not limited to the following.
- Fixes (typo, bugs)
- New features and components
## Workflow
1. fork and pull the latest mmdetection
2. checkout a new branch (do not use master branch for PRs)
3. commit your changes
4. create a PR
Note
- If you plan to add some new features that involve large changes, it is encouraged to open an issue for discussion first.
- If you are the author of some papers and would like to include your method to mmdetection,
please contact Kai Chen (chenkaidev[at]gmail[dot]com) and Wenwei Zhang (zwwdev[at]gmail[dot]com). We will much appreciate your contribution.
## Code style
### Python
We adopt [PEP8](https://www.python.org/dev/peps/pep-0008/) as the preferred code style.
We use the following tools for linting and formatting:
- [flake8](http://flake8.pycqa.org/en/latest/): linter
- [yapf](https://github.com/google/yapf): formatter
- [isort](https://github.com/timothycrosley/isort): sort imports
Style configurations of yapf and isort can be found in [setup.cfg](../setup.cfg).
We use [pre-commit hook](https://pre-commit.com/) that checks and formats for `flake8`, `yapf`, `isort`, `trailing whitespaces`,
fixes `end-of-files`, sorts `requirments.txt` automatically on every commit.
The config for a pre-commit hook is stored in [.pre-commit-config](../.pre-commit-config.yaml).
After you clone the repository, you will need to install initialize pre-commit hook.
```
pip install -U pre-commit
```
From the repository folder
```
pre-commit install
```
After this on every commit check code linters and formatter will be enforced.
>Before you create a PR, make sure that your code lints and is formatted by yapf.
### C++ and CUDA
We follow the [Google C++ Style Guide](https://google.github.io/styleguide/cppguide.html).
...@@ -66,6 +66,25 @@ Please refer to [changelog.md](docs/changelog.md) for details and release histor ...@@ -66,6 +66,25 @@ Please refer to [changelog.md](docs/changelog.md) for details and release histor
Supported methods and backbones are shown in the below table. Supported methods and backbones are shown in the below table.
Results and models are available in the [model zoo](docs/model_zoo.md). Results and models are available in the [model zoo](docs/model_zoo.md).
Support backbones:
- [x] PointNet (CVPR'2017)
- [x] PointNet++ (NeurIPS'2017)
- [x] RegNet (CVPR'2020)
Support methods
- [x] [SECOND (Sensor'2018)](configs/second/README.md)
- [x] [PointPillars (CVPR'2019)](configs/pointpillars/README.md)
- [x] [FreeAnchor (NeurIPS'2019)](configs/free_anchor/README.md)
- [x] [VoteNet (ICCV'2019)](configs/votenet/README.md)
- [x] [H3DNet (ECCV'2020)](configs/h3dnet/README.md)
- [x] [3DSSD (CVPR'2020)](configs/3dssd/README.md)
- [x] [Part-A2 (TPAMI'2020)](configs/parta2/README.md)
- [x] [MVXNet (ICRA'2019)](configs/mvxnet/README.md)
- [x] [CenterPoint (Arxiv'2020)](configs/centerpoint/README.md)
- [x] [SSN (ECCV'2020)](configs/ssn/README.md)
| | ResNet | ResNeXt | SENet |PointNet++ | HRNet | RegNetX | Res2Net | | | ResNet | ResNeXt | SENet |PointNet++ | HRNet | RegNetX | Res2Net |
|--------------------|:--------:|:--------:|:--------:|:---------:|:-----:|:--------:|:-----:| |--------------------|:--------:|:--------:|:--------:|:---------:|:-----:|:--------:|:-----:|
| SECOND | ☐ | ☐ | ☐ | ✗ | ☐ | ✓ | ☐ | | SECOND | ☐ | ☐ | ☐ | ✗ | ☐ | ✓ | ☐ |
......
...@@ -5,7 +5,20 @@ ...@@ -5,7 +5,20 @@
- PyTorch 1.3+ - PyTorch 1.3+
- CUDA 9.2+ (If you build PyTorch from source, CUDA 9.0 is also compatible) - CUDA 9.2+ (If you build PyTorch from source, CUDA 9.0 is also compatible)
- GCC 5+ - GCC 5+
- [mmcv](https://github.com/open-mmlab/mmcv) - [MMCV](https://mmcv.readthedocs.io/en/latest/#installation)
The required versions of MMCV and MMDetection for different versions of MMDetection3D are as below. Please install the correct version of MMCV and MMDetection to avoid installation issues.
| MMDetection3D version | MMDetection version | MMCV version |
|:-------------------:|:-------------------:|:-------------------:|
| master | mmdet>=2.5.0 | mmcv-full>=1.2.4, <=1.3|
| 0.10.0 | mmdet>=2.5.0 | mmcv-full>=1.2.4, <=1.3|
| 0.9.0 | mmdet>=2.5.0 | mmcv-full>=1.2.4, <=1.3|
| 0.8.0 | mmdet>=2.5.0 | mmcv-full>=1.1.5, <=1.3|
| 0.7.0 | mmdet>=2.5.0 | mmcv-full>=1.1.5, <=1.3|
| 0.6.0 | mmdet>=2.4.0 | mmcv-full>=1.1.3, <=1.2|
| 0.5.0 | 2.3.0 | mmcv-full==1.0.5|
# Installation # Installation
...@@ -45,18 +58,34 @@ If you build PyTorch from source instead of installing the prebuilt pacakge, ...@@ -45,18 +58,34 @@ If you build PyTorch from source instead of installing the prebuilt pacakge,
you can use more CUDA versions such as 9.0. you can use more CUDA versions such as 9.0.
**c. Install [MMCV](https://mmcv.readthedocs.io/en/latest/).** **c. Install [MMCV](https://mmcv.readthedocs.io/en/latest/).**
*mmcv-full* is necessary since MMDetection3D relies on MMDetection, CUDA ops in *mmcv-full* are required. *mmcv-full* is necessary since MMDetection3D relies on MMDetection, CUDA ops in *mmcv-full* are required.
`e.g.` The pre-build *mmcv-full* could be installed by running: (available versions could be found [here](https://mmcv.readthedocs.io/en/latest/#install-with-pip)) `e.g.` The pre-build *mmcv-full* could be installed by running: (available versions could be found [here](https://mmcv.readthedocs.io/en/latest/#install-with-pip))
```shell
pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/{cu_version}/{torch_version}/index.html
```
Please replace `{cu_version}` and `{torch_version}` in the url to your desired one. For example, to install the latest `mmcv-full` with `CUDA 11` and `PyTorch 1.7.0`, use the following command:
```shell ```shell
pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/cu101/torch1.5.0/index.html pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/cu110/torch1.7.0/index.html
``` ```
See [here](https://github.com/open-mmlab/mmcv#install-with-pip) for different versions of MMCV compatible to different PyTorch and CUDA versions.
Optionally, you could also build the full version from source: Optionally, you could also build the full version from source:
```shell ```shell
pip install mmcv-full # need a long time git clone https://github.com/open-mmlab/mmcv.git
cd mmcv
MMCV_WITH_OPS=1 pip install -e . # package mmcv-full will be installed after this step
cd ..
```
Or directly run
```shell
pip install mmcv-full
``` ```
**d. Install [MMDetection](https://github.com/open-mmlab/mmdetection).** **d. Install [MMDetection](https://github.com/open-mmlab/mmdetection).**
...@@ -74,20 +103,6 @@ pip install -r requirements/build.txt ...@@ -74,20 +103,6 @@ pip install -r requirements/build.txt
pip install -v -e . # or "python setup.py develop" pip install -v -e . # or "python setup.py develop"
``` ```
**Important**:
1. The required versions of MMCV and MMDetection for different versions of MMDetection3D are as below. Please install the correct version of MMCV and MMDetection to avoid installation issues.
| MMDetection3D version | MMDetection version | MMCV version |
|:-------------------:|:-------------------:|:-------------------:|
| master | mmdet>=2.5.0 | mmcv-full>=1.2.4, <=1.3|
| 0.10.0 | mmdet>=2.5.0 | mmcv-full>=1.2.4, <=1.3|
| 0.9.0 | mmdet>=2.5.0 | mmcv-full>=1.2.4, <=1.3|
| 0.8.0 | mmdet>=2.5.0 | mmcv-full>=1.1.5, <=1.3|
| 0.7.0 | mmdet>=2.5.0 | mmcv-full>=1.1.5, <=1.3|
| 0.6.0 | mmdet>=2.4.0 | mmcv-full>=1.1.3, <=1.2|
| 0.5.0 | 2.3.0 | mmcv-full==1.0.5|
**e. Clone the MMDetection3D repository.** **e. Clone the MMDetection3D repository.**
```shell ```shell
...@@ -177,7 +192,7 @@ PYTHONPATH="$(dirname $0)/..":$PYTHONPATH ...@@ -177,7 +192,7 @@ PYTHONPATH="$(dirname $0)/..":$PYTHONPATH
### Point cloud demo ### Point cloud demo
We provide a demo script to test a single sample. We provide a demo script to test a single sample. Pre-trained models can be downloaded from [model zoo](model_zoo.md)
```shell ```shell
python demo/pcd_demo.py ${PCD_FILE} ${CONFIG_FILE} ${CHECKPOINT_FILE} [--device ${GPU_ID}] [--score-thr ${SCORE_THR}] [--out-dir ${OUT_DIR}] python demo/pcd_demo.py ${PCD_FILE} ${CONFIG_FILE} ${CHECKPOINT_FILE} [--device ${GPU_ID}] [--score-thr ${SCORE_THR}] [--out-dir ${OUT_DIR}]
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment