Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
OpenDAS
OpenPCDet
Commits
63d6540c
Commit
63d6540c
authored
Jul 01, 2020
by
Shaoshuai Shi
Browse files
update README.md
parent
b32fbddb
Changes
8
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
27 additions
and
13 deletions
+27
-13
README.md
README.md
+24
-7
docs/INSTALL.md
docs/INSTALL.md
+1
-1
docs/dataset_vs_model.png
docs/dataset_vs_model.png
+0
-0
docs/model_framework.png
docs/model_framework.png
+0
-0
docs/open_mmlab.png
docs/open_mmlab.png
+0
-0
pcdet/datasets/augmentor/data_augmentor.py
pcdet/datasets/augmentor/data_augmentor.py
+0
-2
pcdet/datasets/processor/data_processor.py
pcdet/datasets/processor/data_processor.py
+1
-2
setup.py
setup.py
+1
-1
No files found.
README.md
View file @
63d6540c
# OpenLidarPerceptron
<img
src=
"docs/open_mmlab.png"
align=
"right"
width=
"30%"
>
# OpenPCDet
## Introduction
## Introduction
`OpenLidarPerceptron`
is an open source project for LiDAR-based 3D scene perception.
`OpenPCDet`
is an open source project for LiDAR-based 3D scene perception.
As of now, it mainly consists of
`PCDet`
toolbox for 3D object detection from point cloud,
As of now, it mainly consists of
`PCDet`
toolbox for 3D object detection from point cloud.
and we are going to support LiDAR segmentation and odometry in the next phase.
### What does `PCDet` toolbox do?
### What does `PCDet` toolbox do?
...
@@ -22,9 +23,21 @@ It is also the official code release of [`[Part-A^2 net]`](https://arxiv.org/abs
...
@@ -22,9 +23,21 @@ It is also the official code release of [`[Part-A^2 net]`](https://arxiv.org/abs
We are actively updating this repo currently, and more datasets and models will be supported soon.
We are actively updating this repo currently, and more datasets and models will be supported soon.
Contributions are also welcomed.
Contributions are also welcomed.
### `PCDet` design pattern
*
Data-Model separation with unified point cloud coordinate for easily extending to custom datasets:
<p
align=
"center"
>
<img
src=
"docs/dataset_vs_model.png"
width=
"95%"
height=
"320"
>
</p>
*
Flexible and clear model structure to easily support various 3D detection models:
<p
align=
"center"
>
<img
src=
"docs/model_framework.png"
width=
"95%"
>
</p>
### Currently Supported Features
### Currently Supported Features
-
[x] Unified point cloud coordinate and clear code structure and for supporting lots of datasets and approaches
-
[x] Support both one-stage and two-stage 3D object detection frameworks
-
[x] Support both one-stage and two-stage 3D object detection frameworks
-
[x] Support distributed training & testing with multiple GPUs and multiple machines
-
[x] Support distributed training & testing with multiple GPUs and multiple machines
-
[x] Support multiple heads on different scales to detect different classes
-
[x] Support multiple heads on different scales to detect different classes
...
@@ -33,6 +46,7 @@ Contributions are also welcomed.
...
@@ -33,6 +46,7 @@ Contributions are also welcomed.
-
[x] Support RoI-aware point cloud pooling & RoI-grid point cloud pooling
-
[x] Support RoI-aware point cloud pooling & RoI-grid point cloud pooling
-
[x] Support GPU version 3D IoU calculation and rotated NMS
-
[x] Support GPU version 3D IoU calculation and rotated NMS
## Model Zoo
## Model Zoo
### KITTI 3D Object Detection Baselines
### KITTI 3D Object Detection Baselines
...
@@ -48,6 +62,9 @@ All models are trained with 8 GPUs and are available for download.
...
@@ -48,6 +62,9 @@ All models are trained with 8 GPUs and are available for download.
|
[
SECOND-MultiHead
](
tools/cfgs/kitti_models/second_multihead.yaml
)
| 32 | - | - | - | ongoing |
|
[
SECOND-MultiHead
](
tools/cfgs/kitti_models/second_multihead.yaml
)
| 32 | - | - | - | ongoing |
| PointRCNN | 32 | - | - | - | ongoing|
| PointRCNN | 32 | - | - | - | ongoing|
### Other datasets
More datasets are on the way.
## Installation
## Installation
Please refer to
[
INSTALL.md
](
docs/INSTALL.md
)
for installation and dataset preparation.
Please refer to
[
INSTALL.md
](
docs/INSTALL.md
)
for installation and dataset preparation.
...
@@ -59,10 +76,10 @@ Please refer to [GETTING_STARTED.md](docs/GETTING_STARTED.md) to learn more usag
...
@@ -59,10 +76,10 @@ Please refer to [GETTING_STARTED.md](docs/GETTING_STARTED.md) to learn more usag
## License
## License
`Open
LidarPerceptron
`
is released under the
[
Apache 2.0 license
](
LICENSE
)
.
`Open
PCDet
`
is released under the
[
Apache 2.0 license
](
LICENSE
)
.
## Acknowledgement
## Acknowledgement
`Open
LidarPerceptron
`
is an open source project for LiDAR-based 3D scene perception that supports multiple
`Open
PCDet
`
is an open source project for LiDAR-based 3D scene perception that supports multiple
LiDAR-based perception models as shown above. Some parts of
`PCDet`
are learned from the official released codes of the above supported methods.
LiDAR-based perception models as shown above. Some parts of
`PCDet`
are learned from the official released codes of the above supported methods.
We would like to thank for their proposed methods and the official implementation.
We would like to thank for their proposed methods and the official implementation.
...
...
docs/INSTALL.md
View file @
63d6540c
...
@@ -14,7 +14,7 @@ NOTE: Please re-install `pcdet v0.2` by running `python setup.py develop` if you
...
@@ -14,7 +14,7 @@ NOTE: Please re-install `pcdet v0.2` by running `python setup.py develop` if you
a. Clone this repository.
a. Clone this repository.
```
shell
```
shell
git clone https://github.com/open-mmlab/Open
LidarPerceptron
.git
git clone https://github.com/open-mmlab/Open
PCDet
.git
```
```
b. Install the dependent libraries as follows:
b. Install the dependent libraries as follows:
...
...
docs/dataset_vs_model.png
0 → 100644
View file @
63d6540c
123 KB
docs/model_framework.png
0 → 100644
View file @
63d6540c
102 KB
docs/open_mmlab.png
0 → 100644
View file @
63d6540c
256 KB
pcdet/datasets/augmentor/data_augmentor.py
View file @
63d6540c
...
@@ -46,7 +46,6 @@ class DataAugmentor(object):
...
@@ -46,7 +46,6 @@ class DataAugmentor(object):
data_dict
[
'points'
]
=
points
data_dict
[
'points'
]
=
points
return
data_dict
return
data_dict
def
random_world_rotation
(
self
,
data_dict
=
None
,
config
=
None
):
def
random_world_rotation
(
self
,
data_dict
=
None
,
config
=
None
):
if
data_dict
is
None
:
if
data_dict
is
None
:
return
partial
(
self
.
random_world_rotation
,
config
=
config
)
return
partial
(
self
.
random_world_rotation
,
config
=
config
)
...
@@ -61,7 +60,6 @@ class DataAugmentor(object):
...
@@ -61,7 +60,6 @@ class DataAugmentor(object):
data_dict
[
'points'
]
=
points
data_dict
[
'points'
]
=
points
return
data_dict
return
data_dict
def
random_world_scaling
(
self
,
data_dict
=
None
,
config
=
None
):
def
random_world_scaling
(
self
,
data_dict
=
None
,
config
=
None
):
if
data_dict
is
None
:
if
data_dict
is
None
:
return
partial
(
self
.
random_world_scaling
,
config
=
config
)
return
partial
(
self
.
random_world_scaling
,
config
=
config
)
...
...
pcdet/datasets/processor/data_processor.py
View file @
63d6540c
...
@@ -14,7 +14,6 @@ class DataProcessor(object):
...
@@ -14,7 +14,6 @@ class DataProcessor(object):
cur_processor
=
getattr
(
self
,
cur_cfg
.
NAME
)(
config
=
cur_cfg
)
cur_processor
=
getattr
(
self
,
cur_cfg
.
NAME
)(
config
=
cur_cfg
)
self
.
data_processor_queue
.
append
(
cur_processor
)
self
.
data_processor_queue
.
append
(
cur_processor
)
def
mask_points_and_boxes_outside_range
(
self
,
data_dict
=
None
,
config
=
None
):
def
mask_points_and_boxes_outside_range
(
self
,
data_dict
=
None
,
config
=
None
):
if
data_dict
is
None
:
if
data_dict
is
None
:
return
partial
(
self
.
mask_points_and_boxes_outside_range
,
config
=
config
)
return
partial
(
self
.
mask_points_and_boxes_outside_range
,
config
=
config
)
...
...
setup.py
View file @
63d6540c
...
@@ -33,7 +33,7 @@ if __name__ == '__main__':
...
@@ -33,7 +33,7 @@ if __name__ == '__main__':
setup
(
setup
(
name
=
'pcdet'
,
name
=
'pcdet'
,
version
=
version
,
version
=
version
,
description
=
'PCDet is a general codebase for 3D object detection from point cloud'
,
description
=
'
Open
PCDet is a general codebase for 3D object detection from point cloud'
,
install_requires
=
[
install_requires
=
[
'numpy'
,
'numpy'
,
'torch>=1.1'
,
'torch>=1.1'
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment