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
mmdetection3d
Commits
c2fe651f
Commit
c2fe651f
authored
Jul 20, 2022
by
zhangshilong
Committed by
ChaimZhu
Jul 20, 2022
Browse files
refactor directory
parent
bc5806ba
Changes
275
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
80 additions
and
842 deletions
+80
-842
mmdet3d/datasets/nuscenes_mono_dataset.py
mmdet3d/datasets/nuscenes_mono_dataset.py
+0
-801
mmdet3d/datasets/s3dis_dataset.py
mmdet3d/datasets/s3dis_dataset.py
+3
-3
mmdet3d/datasets/scannet_dataset.py
mmdet3d/datasets/scannet_dataset.py
+2
-2
mmdet3d/datasets/seg3d_dataset.py
mmdet3d/datasets/seg3d_dataset.py
+1
-1
mmdet3d/datasets/sunrgbd_dataset.py
mmdet3d/datasets/sunrgbd_dataset.py
+1
-1
mmdet3d/datasets/transforms/__init__.py
mmdet3d/datasets/transforms/__init__.py
+0
-0
mmdet3d/datasets/transforms/compose.py
mmdet3d/datasets/transforms/compose.py
+0
-0
mmdet3d/datasets/transforms/data_augment_utils.py
mmdet3d/datasets/transforms/data_augment_utils.py
+1
-1
mmdet3d/datasets/transforms/dbsampler.py
mmdet3d/datasets/transforms/dbsampler.py
+2
-2
mmdet3d/datasets/transforms/formating.py
mmdet3d/datasets/transforms/formating.py
+2
-3
mmdet3d/datasets/transforms/loading.py
mmdet3d/datasets/transforms/loading.py
+2
-8
mmdet3d/datasets/transforms/test_time_aug.py
mmdet3d/datasets/transforms/test_time_aug.py
+0
-0
mmdet3d/datasets/transforms/transforms_3d.py
mmdet3d/datasets/transforms/transforms_3d.py
+6
-5
mmdet3d/datasets/utils.py
mmdet3d/datasets/utils.py
+11
-12
mmdet3d/datasets/waymo_dataset.py
mmdet3d/datasets/waymo_dataset.py
+3
-3
mmdet3d/engine/__init__.py
mmdet3d/engine/__init__.py
+4
-0
mmdet3d/engine/scheduler/__init__.py
mmdet3d/engine/scheduler/__init__.py
+0
-0
mmdet3d/engine/scheduler/betas_scheduler.py
mmdet3d/engine/scheduler/betas_scheduler.py
+0
-0
mmdet3d/evaluation/__init__.py
mmdet3d/evaluation/__init__.py
+23
-0
mmdet3d/evaluation/functional/__init__.py
mmdet3d/evaluation/functional/__init__.py
+19
-0
No files found.
mmdet3d/datasets/nuscenes_mono_dataset.py
deleted
100644 → 0
View file @
bc5806ba
This diff is collapsed.
Click to expand it.
mmdet3d/datasets/s3dis_dataset.py
View file @
c2fe651f
...
@@ -4,11 +4,11 @@ from typing import Callable, List, Optional, Union
...
@@ -4,11 +4,11 @@ from typing import Callable, List, Optional, Union
import
numpy
as
np
import
numpy
as
np
from
mmdet3d.core.bbox
import
DepthInstance3DBoxes
from
mmdet3d.registry
import
DATASETS
from
mmdet3d.registry
import
DATASETS
from
mmdet3d.structures
import
DepthInstance3DBoxes
from
.det3d_dataset
import
Det3DDataset
from
.det3d_dataset
import
Det3DDataset
from
.pipelines
import
Compose
from
.seg3d_dataset
import
Seg3DDataset
from
.seg3d_dataset
import
Seg3DDataset
from
.transforms
import
Compose
@
DATASETS
.
register_module
()
@
DATASETS
.
register_module
()
...
@@ -118,7 +118,7 @@ class S3DISDataset(Det3DDataset):
...
@@ -118,7 +118,7 @@ class S3DISDataset(Det3DDataset):
Returns:
Returns:
dict: Data information that will be passed to the data
dict: Data information that will be passed to the data
preprocessing
pipeline
s. It includes the following keys:
preprocessing
transform
s. It includes the following keys:
- pts_filename (str): Filename of point clouds.
- pts_filename (str): Filename of point clouds.
- file_name (str): Filename of point clouds.
- file_name (str): Filename of point clouds.
...
...
mmdet3d/datasets/scannet_dataset.py
View file @
c2fe651f
...
@@ -5,8 +5,8 @@ from typing import Callable, List, Optional, Union
...
@@ -5,8 +5,8 @@ from typing import Callable, List, Optional, Union
import
numpy
as
np
import
numpy
as
np
from
mmdet3d.core.bbox
import
DepthInstance3DBoxes
from
mmdet3d.registry
import
DATASETS
from
mmdet3d.registry
import
DATASETS
from
mmdet3d.structures
import
DepthInstance3DBoxes
from
.det3d_dataset
import
Det3DDataset
from
.det3d_dataset
import
Det3DDataset
from
.seg3d_dataset
import
Seg3DDataset
from
.seg3d_dataset
import
Seg3DDataset
...
@@ -111,7 +111,7 @@ class ScanNetDataset(Det3DDataset):
...
@@ -111,7 +111,7 @@ class ScanNetDataset(Det3DDataset):
Returns:
Returns:
dict: Data information that will be passed to the data
dict: Data information that will be passed to the data
preprocessing
pipeline
s. It includes the following keys:
preprocessing
transform
s. It includes the following keys:
"""
"""
info
[
'axis_align_matrix'
]
=
self
.
_get_axis_align_matrix
(
info
)
info
[
'axis_align_matrix'
]
=
self
.
_get_axis_align_matrix
(
info
)
info
[
'pts_instance_mask_path'
]
=
osp
.
join
(
info
[
'pts_instance_mask_path'
]
=
osp
.
join
(
...
...
mmdet3d/datasets/seg3d_dataset.py
View file @
c2fe651f
...
@@ -242,7 +242,7 @@ class Seg3DDataset(BaseDataset):
...
@@ -242,7 +242,7 @@ class Seg3DDataset(BaseDataset):
# use it in PointSegClassMapping pipeline
# use it in PointSegClassMapping pipeline
info
[
'label_mapping'
]
=
self
.
label_mapping
info
[
'label_mapping'
]
=
self
.
label_mapping
# 'eval_ann_info' will be updated in loading
pipeline
s
# 'eval_ann_info' will be updated in loading
transform
s
if
self
.
test_mode
and
self
.
load_eval_anns
:
if
self
.
test_mode
and
self
.
load_eval_anns
:
info
[
'eval_ann_info'
]
=
dict
()
info
[
'eval_ann_info'
]
=
dict
()
...
...
mmdet3d/datasets/sunrgbd_dataset.py
View file @
c2fe651f
...
@@ -5,8 +5,8 @@ from typing import Callable, List, Optional, Union
...
@@ -5,8 +5,8 @@ from typing import Callable, List, Optional, Union
import
numpy
as
np
import
numpy
as
np
from
mmdet3d.core.bbox
import
DepthInstance3DBoxes
from
mmdet3d.registry
import
DATASETS
from
mmdet3d.registry
import
DATASETS
from
mmdet3d.structures
import
DepthInstance3DBoxes
from
.det3d_dataset
import
Det3DDataset
from
.det3d_dataset
import
Det3DDataset
...
...
mmdet3d/datasets/
pipeline
s/__init__.py
→
mmdet3d/datasets/
transform
s/__init__.py
View file @
c2fe651f
File moved
mmdet3d/datasets/
pipeline
s/compose.py
→
mmdet3d/datasets/
transform
s/compose.py
View file @
c2fe651f
File moved
mmdet3d/datasets/
pipeline
s/data_augment_utils.py
→
mmdet3d/datasets/
transform
s/data_augment_utils.py
View file @
c2fe651f
...
@@ -5,7 +5,7 @@ import numba
...
@@ -5,7 +5,7 @@ import numba
import
numpy
as
np
import
numpy
as
np
from
numba.core.errors
import
NumbaPerformanceWarning
from
numba.core.errors
import
NumbaPerformanceWarning
from
mmdet3d.
core.bbox
import
box_np_ops
from
mmdet3d.
structures.ops
import
box_np_ops
warnings
.
filterwarnings
(
'ignore'
,
category
=
NumbaPerformanceWarning
)
warnings
.
filterwarnings
(
'ignore'
,
category
=
NumbaPerformanceWarning
)
...
...
mmdet3d/datasets/
pipeline
s/dbsampler.py
→
mmdet3d/datasets/
transform
s/dbsampler.py
View file @
c2fe651f
...
@@ -6,9 +6,9 @@ import warnings
...
@@ -6,9 +6,9 @@ import warnings
import
mmcv
import
mmcv
import
numpy
as
np
import
numpy
as
np
from
mmdet3d.core.bbox
import
box_np_ops
from
mmdet3d.datasets.transforms
import
data_augment_utils
from
mmdet3d.datasets.pipelines
import
data_augment_utils
from
mmdet3d.registry
import
TRANSFORMS
from
mmdet3d.registry
import
TRANSFORMS
from
mmdet3d.structures.ops
import
box_np_ops
class
BatchSampler
:
class
BatchSampler
:
...
...
mmdet3d/datasets/
pipeline
s/formating.py
→
mmdet3d/datasets/
transform
s/formating.py
View file @
c2fe651f
...
@@ -8,10 +8,9 @@ from mmcv import BaseTransform
...
@@ -8,10 +8,9 @@ from mmcv import BaseTransform
from
mmengine
import
InstanceData
from
mmengine
import
InstanceData
from
numpy
import
dtype
from
numpy
import
dtype
from
mmdet3d.core
import
Det3DDataSample
,
PointData
from
mmdet3d.core.bbox
import
BaseInstance3DBoxes
from
mmdet3d.core.points
import
BasePoints
from
mmdet3d.registry
import
TRANSFORMS
from
mmdet3d.registry
import
TRANSFORMS
from
mmdet3d.structures
import
BaseInstance3DBoxes
,
Det3DDataSample
,
PointData
from
mmdet3d.structures.points
import
BasePoints
def
to_tensor
(
def
to_tensor
(
...
...
mmdet3d/datasets/
pipeline
s/loading.py
→
mmdet3d/datasets/
transform
s/loading.py
View file @
c2fe651f
...
@@ -6,9 +6,9 @@ import numpy as np
...
@@ -6,9 +6,9 @@ import numpy as np
from
mmcv.transforms
import
LoadImageFromFile
from
mmcv.transforms
import
LoadImageFromFile
from
mmcv.transforms.base
import
BaseTransform
from
mmcv.transforms.base
import
BaseTransform
from
mmdet3d.core.points
import
BasePoints
,
get_points_type
from
mmdet3d.registry
import
TRANSFORMS
from
mmdet3d.registry
import
TRANSFORMS
from
mmdet.datasets.pipelines
import
LoadAnnotations
from
mmdet3d.structures.points
import
BasePoints
,
get_points_type
from
mmdet.datasets.transforms
import
LoadAnnotations
@
TRANSFORMS
.
register_module
()
@
TRANSFORMS
.
register_module
()
...
@@ -760,12 +760,6 @@ class LoadAnnotations3D(LoadAnnotations):
...
@@ -760,12 +760,6 @@ class LoadAnnotations3D(LoadAnnotations):
else
:
else
:
results
[
'gt_bboxes'
]
=
np
.
array
(
results
[
'gt_bboxes'
]
=
np
.
array
(
gt_bboxes
,
dtype
=
np
.
float32
).
reshape
((
-
1
,
4
))
gt_bboxes
,
dtype
=
np
.
float32
).
reshape
((
-
1
,
4
))
if
self
.
denorm_bbox
:
bbox_num
=
results
[
'gt_bboxes'
].
shape
[
0
]
if
bbox_num
!=
0
:
h
,
w
=
results
[
'img_shape'
]
results
[
'gt_bboxes'
][:,
0
::
2
]
*=
w
results
[
'gt_bboxes'
][:,
1
::
2
]
*=
h
if
'eval_ann_info'
in
results
:
if
'eval_ann_info'
in
results
:
results
[
'eval_ann_info'
][
'gt_bboxes'
]
=
results
[
'gt_bboxes'
]
results
[
'eval_ann_info'
][
'gt_bboxes'
]
=
results
[
'gt_bboxes'
]
...
...
mmdet3d/datasets/
pipeline
s/test_time_aug.py
→
mmdet3d/datasets/
transform
s/test_time_aug.py
View file @
c2fe651f
File moved
mmdet3d/datasets/
pipeline
s/transforms_3d.py
→
mmdet3d/datasets/
transform
s/transforms_3d.py
View file @
c2fe651f
...
@@ -8,12 +8,13 @@ import numpy as np
...
@@ -8,12 +8,13 @@ import numpy as np
from
mmcv
import
is_tuple_of
from
mmcv
import
is_tuple_of
from
mmcv.transforms
import
BaseTransform
from
mmcv.transforms
import
BaseTransform
from
mmdet3d.core
import
VoxelGenerator
from
mmdet3d.models.task_modules
import
VoxelGenerator
from
mmdet3d.core.bbox
import
(
CameraInstance3DBoxes
,
DepthInstance3DBoxes
,
LiDARInstance3DBoxes
,
box_np_ops
)
from
mmdet3d.core.points
import
BasePoints
from
mmdet3d.registry
import
TRANSFORMS
from
mmdet3d.registry
import
TRANSFORMS
from
mmdet.datasets.pipelines
import
RandomFlip
from
mmdet3d.structures
import
(
CameraInstance3DBoxes
,
DepthInstance3DBoxes
,
LiDARInstance3DBoxes
)
from
mmdet3d.structures.ops
import
box_np_ops
from
mmdet3d.structures.points
import
BasePoints
from
mmdet.datasets.transforms
import
RandomFlip
from
.data_augment_utils
import
noise_per_object_v3_
from
.data_augment_utils
import
noise_per_object_v3_
...
...
mmdet3d/datasets/utils.py
View file @
c2fe651f
...
@@ -5,16 +5,15 @@ from mmcv.transforms import LoadImageFromFile
...
@@ -5,16 +5,15 @@ from mmcv.transforms import LoadImageFromFile
from
pyquaternion
import
Quaternion
from
pyquaternion
import
Quaternion
# yapf: disable
# yapf: disable
from
mmdet3d.datasets.
pipeline
s
import
(
LoadAnnotations3D
,
from
mmdet3d.datasets.
transform
s
import
(
LoadAnnotations3D
,
LoadImageFromFileMono3D
,
LoadImageFromFileMono3D
,
LoadMultiViewImageFromFiles
,
LoadMultiViewImageFromFiles
,
LoadPointsFromFile
,
LoadPointsFromFile
,
LoadPointsFromMultiSweeps
,
LoadPointsFromMultiSweeps
,
MultiScaleFlipAug3D
,
Pack3DDetInputs
,
MultiScaleFlipAug3D
,
Pack3DDetInputs
,
PointSegClassMapping
)
PointSegClassMapping
)
# yapf: enable
# yapf: enable
from
mmdet3d.registry
import
TRANSFORMS
from
mmdet3d.registry
import
TRANSFORMS
from
mmdet.datasets.pipelines
import
MultiScaleFlipAug
def
is_loading_function
(
transform
):
def
is_loading_function
(
transform
):
...
@@ -41,12 +40,12 @@ def is_loading_function(transform):
...
@@ -41,12 +40,12 @@ def is_loading_function(transform):
return
False
return
False
if
obj_cls
in
loading_functions
:
if
obj_cls
in
loading_functions
:
return
True
return
True
if
obj_cls
in
(
MultiScaleFlipAug3D
,
MultiScaleFlipAug
):
if
obj_cls
in
(
MultiScaleFlipAug3D
,
):
return
None
return
None
elif
callable
(
transform
):
elif
callable
(
transform
):
if
isinstance
(
transform
,
loading_functions
):
if
isinstance
(
transform
,
loading_functions
):
return
True
return
True
if
isinstance
(
transform
,
(
MultiScaleFlipAug3D
,
MultiScaleFlipAug
)):
if
isinstance
(
transform
,
(
MultiScaleFlipAug3D
)):
return
None
return
None
return
False
return
False
...
@@ -63,7 +62,7 @@ def get_loading_pipeline(pipeline):
...
@@ -63,7 +62,7 @@ def get_loading_pipeline(pipeline):
keep loading image, points and annotations related configuration.
keep loading image, points and annotations related configuration.
Examples:
Examples:
>>>
pipeline
s = [
>>>
transform
s = [
... dict(type='LoadPointsFromFile',
... dict(type='LoadPointsFromFile',
... coord_type='LIDAR', load_dim=4, use_dim=4),
... coord_type='LIDAR', load_dim=4, use_dim=4),
... dict(type='LoadImageFromFile'),
... dict(type='LoadImageFromFile'),
...
@@ -94,7 +93,7 @@ def get_loading_pipeline(pipeline):
...
@@ -94,7 +93,7 @@ def get_loading_pipeline(pipeline):
... keys=['points', 'img', 'gt_bboxes_3d', 'gt_labels_3d'])
... keys=['points', 'img', 'gt_bboxes_3d', 'gt_labels_3d'])
... ]
... ]
>>> assert expected_pipelines ==
\
>>> assert expected_pipelines ==
\
... get_loading_pipeline(
pipeline
s)
... get_loading_pipeline(
transform
s)
"""
"""
loading_pipeline
=
[]
loading_pipeline
=
[]
for
transform
in
pipeline
:
for
transform
in
pipeline
:
...
...
mmdet3d/datasets/waymo_dataset.py
View file @
c2fe651f
...
@@ -9,7 +9,7 @@ import torch
...
@@ -9,7 +9,7 @@ import torch
from
mmcv.utils
import
print_log
from
mmcv.utils
import
print_log
from
mmdet3d.registry
import
DATASETS
from
mmdet3d.registry
import
DATASETS
from
..core.bbox
import
Box3DMode
,
points_cam2img
from
mmdet3d.structures
import
Box3DMode
,
points_cam2img
from
.kitti_dataset
import
KittiDataset
from
.kitti_dataset
import
KittiDataset
...
@@ -188,7 +188,7 @@ class WaymoDataset(KittiDataset):
...
@@ -188,7 +188,7 @@ class WaymoDataset(KittiDataset):
pklfile_prefix
,
pklfile_prefix
,
submission_prefix
)
submission_prefix
)
if
'waymo'
in
data_format
:
if
'waymo'
in
data_format
:
from
..core
.evaluation.waymo_utils
.prediction_kitti_to_waymo
import
\
from
mmdet3d
.evaluation.
functional.
waymo_utils
import
\
KITTI2Waymo
# noqa
KITTI2Waymo
# noqa
waymo_root
=
osp
.
join
(
waymo_root
=
osp
.
join
(
self
.
data_root
.
split
(
'kitti_format'
)[
0
],
'waymo_format'
)
self
.
data_root
.
split
(
'kitti_format'
)[
0
],
'waymo_format'
)
...
@@ -257,7 +257,7 @@ class WaymoDataset(KittiDataset):
...
@@ -257,7 +257,7 @@ class WaymoDataset(KittiDataset):
pklfile_prefix
,
pklfile_prefix
,
submission_prefix
,
submission_prefix
,
data_format
=
'kitti'
)
data_format
=
'kitti'
)
from
mmdet3d.
core.
evaluation
import
kitti_eval
from
mmdet3d.evaluation
import
kitti_eval
gt_annos
=
[
info
[
'annos'
]
for
info
in
self
.
data_infos
]
gt_annos
=
[
info
[
'annos'
]
for
info
in
self
.
data_infos
]
if
isinstance
(
result_files
,
dict
):
if
isinstance
(
result_files
,
dict
):
...
...
mmdet3d/engine/__init__.py
0 → 100644
View file @
c2fe651f
# Copyright (c) OpenMMLab. All rights reserved.
from
.scheduler
import
BetasSchedulerMixin
,
CosineAnnealingBetas
__all__
=
[
'BetasSchedulerMixin'
,
'CosineAnnealingBetas'
]
mmdet3d/scheduler/__init__.py
→
mmdet3d/
engine/
scheduler/__init__.py
View file @
c2fe651f
File moved
mmdet3d/scheduler/betas_scheduler.py
→
mmdet3d/
engine/
scheduler/betas_scheduler.py
View file @
c2fe651f
File moved
mmdet3d/evaluation/__init__.py
0 → 100644
View file @
c2fe651f
# Copyright (c) OpenMMLab. All rights reserved.
from
mmdet3d.evaluation.functional.kitti_utils
import
(
do_eval
,
eval_class
,
kitti_eval
,
kitti_eval_coco_style
)
from
.functional
import
(
aggregate_predictions
,
average_precision
,
eval_det_cls
,
eval_map_recall
,
fast_hist
,
get_acc
,
get_acc_cls
,
get_classwise_aps
,
get_single_class_aps
,
indoor_eval
,
instance_seg_eval
,
load_lyft_gts
,
load_lyft_predictions
,
lyft_eval
,
per_class_iou
,
rename_gt
,
seg_eval
)
from
.metrics
import
(
IndoorMetric
,
InstanceSegMetric
,
KittiMetric
,
LyftMetric
,
NuScenesMetric
,
SegMetric
)
__all__
=
[
'kitti_eval_coco_style'
,
'kitti_eval'
,
'indoor_eval'
,
'lyft_eval'
,
'seg_eval'
,
'instance_seg_eval'
,
'average_precision'
,
'eval_det_cls'
,
'eval_map_recall'
,
'indoor_eval'
,
'aggregate_predictions'
,
'rename_gt'
,
'instance_seg_eval'
,
'load_lyft_gts'
,
'load_lyft_predictions'
,
'lyft_eval'
,
'get_classwise_aps'
,
'get_single_class_aps'
,
'fast_hist'
,
'per_class_iou'
,
'get_acc'
,
'get_acc_cls'
,
'seg_eval'
,
'KittiMetric'
,
'NuScenesMetric'
,
'IndoorMetric'
,
'LyftMetric'
,
'SegMetric'
,
'InstanceSegMetric'
,
'eval_class'
,
'do_eval'
]
mmdet3d/evaluation/functional/__init__.py
0 → 100644
View file @
c2fe651f
# Copyright (c) OpenMMLab. All rights reserved.
from
.indoor_eval
import
(
average_precision
,
eval_det_cls
,
eval_map_recall
,
indoor_eval
)
from
.instance_seg_eval
import
(
aggregate_predictions
,
instance_seg_eval
,
rename_gt
)
from
.kitti_utils
import
do_eval
,
kitti_eval
,
kitti_eval_coco_style
from
.lyft_eval
import
(
get_classwise_aps
,
get_single_class_aps
,
load_lyft_gts
,
load_lyft_predictions
,
lyft_eval
)
from
.scannet_utils
import
evaluate_matches
,
scannet_eval
from
.seg_eval
import
fast_hist
,
get_acc
,
get_acc_cls
,
per_class_iou
,
seg_eval
__all__
=
[
'average_precision'
,
'eval_det_cls'
,
'eval_map_recall'
,
'indoor_eval'
,
'aggregate_predictions'
,
'rename_gt'
,
'instance_seg_eval'
,
'load_lyft_gts'
,
'load_lyft_predictions'
,
'lyft_eval'
,
'get_classwise_aps'
,
'get_single_class_aps'
,
'fast_hist'
,
'per_class_iou'
,
'get_acc'
,
'get_acc_cls'
,
'seg_eval'
,
'kitti_eval'
,
'kitti_eval_coco_style'
,
'scannet_eval'
,
'evaluate_matches'
,
'do_eval'
]
Prev
1
2
3
4
5
6
…
14
Next
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