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
e3b5253b
Commit
e3b5253b
authored
May 24, 2022
by
ZCMax
Committed by
ChaimZhu
Jul 20, 2022
Browse files
Update all registries and fix some ut problems
parent
8dd8da12
Changes
122
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
68 additions
and
60 deletions
+68
-60
mmdet3d/models/dense_heads/centerpoint_head.py
mmdet3d/models/dense_heads/centerpoint_head.py
+5
-4
mmdet3d/models/dense_heads/fcos_mono3d_head.py
mmdet3d/models/dense_heads/fcos_mono3d_head.py
+3
-2
mmdet3d/models/dense_heads/free_anchor3d_head.py
mmdet3d/models/dense_heads/free_anchor3d_head.py
+2
-2
mmdet3d/models/dense_heads/groupfree3d_head.py
mmdet3d/models/dense_heads/groupfree3d_head.py
+3
-2
mmdet3d/models/dense_heads/monoflex_head.py
mmdet3d/models/dense_heads/monoflex_head.py
+4
-3
mmdet3d/models/dense_heads/parta2_rpn_head.py
mmdet3d/models/dense_heads/parta2_rpn_head.py
+2
-2
mmdet3d/models/dense_heads/pgd_head.py
mmdet3d/models/dense_heads/pgd_head.py
+3
-2
mmdet3d/models/dense_heads/point_rpn_head.py
mmdet3d/models/dense_heads/point_rpn_head.py
+3
-2
mmdet3d/models/dense_heads/shape_aware_head.py
mmdet3d/models/dense_heads/shape_aware_head.py
+4
-3
mmdet3d/models/dense_heads/smoke_mono3d_head.py
mmdet3d/models/dense_heads/smoke_mono3d_head.py
+2
-2
mmdet3d/models/dense_heads/ssd_3d_head.py
mmdet3d/models/dense_heads/ssd_3d_head.py
+3
-2
mmdet3d/models/dense_heads/vote_head.py
mmdet3d/models/dense_heads/vote_head.py
+3
-2
mmdet3d/models/detectors/centerpoint.py
mmdet3d/models/detectors/centerpoint.py
+2
-2
mmdet3d/models/detectors/dynamic_voxelnet.py
mmdet3d/models/detectors/dynamic_voxelnet.py
+2
-2
mmdet3d/models/detectors/fcos_mono3d.py
mmdet3d/models/detectors/fcos_mono3d.py
+2
-2
mmdet3d/models/detectors/groupfree3dnet.py
mmdet3d/models/detectors/groupfree3dnet.py
+2
-2
mmdet3d/models/detectors/h3dnet.py
mmdet3d/models/detectors/h3dnet.py
+2
-2
mmdet3d/models/detectors/imvotenet.py
mmdet3d/models/detectors/imvotenet.py
+12
-13
mmdet3d/models/detectors/imvoxelnet.py
mmdet3d/models/detectors/imvoxelnet.py
+6
-6
mmdet3d/models/detectors/mvx_faster_rcnn.py
mmdet3d/models/detectors/mvx_faster_rcnn.py
+3
-3
No files found.
mmdet3d/models/dense_heads/centerpoint_head.py
View file @
e3b5253b
...
...
@@ -10,12 +10,13 @@ from mmdet3d.core import (circle_nms, draw_heatmap_gaussian, gaussian_radius,
xywhr2xyxyr
)
from
mmdet3d.core.post_processing
import
nms_bev
from
mmdet3d.models
import
builder
from
mmdet3d.models.builder
import
build_loss
from
mmdet3d.models.utils
import
clip_sigmoid
from
mmdet3d.registry
import
MODELS
from
mmdet.core
import
build_bbox_coder
,
multi_apply
from
..builder
import
HEADS
,
build_loss
@
HEAD
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
SeparateHead
(
BaseModule
):
"""SeparateHead for CenterHead.
...
...
@@ -121,7 +122,7 @@ class SeparateHead(BaseModule):
return
ret_dict
@
HEAD
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
DCNSeparateHead
(
BaseModule
):
r
"""DCNSeparateHead for CenterHead.
...
...
@@ -240,7 +241,7 @@ class DCNSeparateHead(BaseModule):
return
ret
@
HEAD
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
CenterHead
(
BaseModule
):
"""CenterHead for CenterPoint.
...
...
mmdet3d/models/dense_heads/fcos_mono3d_head.py
View file @
e3b5253b
...
...
@@ -9,15 +9,16 @@ from torch import nn as nn
from
mmdet3d.core
import
(
box3d_multiclass_nms
,
limit_period
,
points_img2cam
,
xywhr2xyxyr
)
from
mmdet3d.models.builder
import
build_loss
from
mmdet3d.registry
import
MODELS
from
mmdet.core
import
multi_apply
from
mmdet.core.bbox.builder
import
build_bbox_coder
from
..builder
import
HEADS
,
build_loss
from
.anchor_free_mono3d_head
import
AnchorFreeMono3DHead
INF
=
1e8
@
HEAD
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
FCOSMono3DHead
(
AnchorFreeMono3DHead
):
"""Anchor-free head used in FCOS3D.
...
...
mmdet3d/models/dense_heads/free_anchor3d_head.py
View file @
e3b5253b
...
...
@@ -4,12 +4,12 @@ from mmcv.runner import force_fp32
from
torch.nn
import
functional
as
F
from
mmdet3d.core.bbox
import
bbox_overlaps_nearest_3d
from
..builder
import
HEAD
S
from
mmdet3d.registry
import
MODEL
S
from
.anchor3d_head
import
Anchor3DHead
from
.train_mixins
import
get_direction_target
@
HEAD
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
FreeAnchor3DHead
(
Anchor3DHead
):
r
"""`FreeAnchor <https://arxiv.org/abs/1909.02466>`_ head for 3D detection.
...
...
mmdet3d/models/dense_heads/groupfree3d_head.py
View file @
e3b5253b
...
...
@@ -14,8 +14,9 @@ from torch import nn as nn
from
torch.nn
import
functional
as
F
from
mmdet3d.core.post_processing
import
aligned_3d_nms
from
mmdet3d.registry
import
MODELS
from
mmdet.core
import
build_bbox_coder
,
multi_apply
from
..builder
import
HEADS
,
build_loss
from
..builder
import
build_loss
from
.base_conv_bbox_head
import
BaseConvBboxHead
EPS
=
1e-6
...
...
@@ -106,7 +107,7 @@ class GeneralSamplingModule(nn.Module):
return
new_xyz
,
new_features
,
sample_inds
@
HEAD
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
GroupFree3DHead
(
BaseModule
):
r
"""Bbox head of `Group-Free 3D <https://arxiv.org/abs/2104.00678>`_.
...
...
mmdet3d/models/dense_heads/monoflex_head.py
View file @
e3b5253b
...
...
@@ -3,21 +3,22 @@ import torch
from
mmcv.cnn
import
xavier_init
from
torch
import
nn
as
nn
from
mmdet3d.core.bbox.builder
import
build_bbox_coder
from
mmdet3d.core.utils
import
get_ellip_gaussian_2D
from
mmdet3d.models.builder
import
build_loss
from
mmdet3d.models.model_utils
import
EdgeFusionModule
from
mmdet3d.models.utils
import
(
filter_outside_objs
,
get_edge_indices
,
get_keypoints
,
handle_proj_objs
)
from
mmdet3d.registry
import
MODELS
from
mmdet.core
import
multi_apply
from
mmdet.core.bbox.builder
import
build_bbox_coder
from
mmdet.models.utils
import
gaussian_radius
,
gen_gaussian_target
from
mmdet.models.utils.gaussian_target
import
(
get_local_maximum
,
get_topk_from_heatmap
,
transpose_and_gather_feat
)
from
..builder
import
HEADS
,
build_loss
from
.anchor_free_mono3d_head
import
AnchorFreeMono3DHead
@
HEAD
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
MonoFlexHead
(
AnchorFreeMono3DHead
):
r
"""MonoFlex head used in `MonoFlex <https://arxiv.org/abs/2104.02323>`_
...
...
mmdet3d/models/dense_heads/parta2_rpn_head.py
View file @
e3b5253b
...
...
@@ -5,11 +5,11 @@ from mmcv.runner import force_fp32
from
mmdet3d.core
import
limit_period
,
xywhr2xyxyr
from
mmdet3d.core.post_processing
import
nms_bev
,
nms_normal_bev
from
..builder
import
HEAD
S
from
mmdet3d.registry
import
MODEL
S
from
.anchor3d_head
import
Anchor3DHead
@
HEAD
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
PartA2RPNHead
(
Anchor3DHead
):
"""RPN head for PartA2.
...
...
mmdet3d/models/dense_heads/pgd_head.py
View file @
e3b5253b
...
...
@@ -8,12 +8,13 @@ from torch.nn import functional as F
from
mmdet3d.core
import
box3d_multiclass_nms
,
xywhr2xyxyr
from
mmdet3d.core.bbox
import
points_cam2img
,
points_img2cam
from
mmdet3d.models.builder
import
build_loss
from
mmdet3d.registry
import
MODELS
from
mmdet.core
import
distance2bbox
,
multi_apply
from
..builder
import
HEADS
,
build_loss
from
.fcos_mono3d_head
import
FCOSMono3DHead
@
HEAD
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
PGDHead
(
FCOSMono3DHead
):
r
"""Anchor-free head used in `PGD <https://arxiv.org/abs/2107.14160>`_.
...
...
mmdet3d/models/dense_heads/point_rpn_head.py
View file @
e3b5253b
...
...
@@ -7,11 +7,12 @@ from mmdet3d.core import xywhr2xyxyr
from
mmdet3d.core.bbox.structures
import
(
DepthInstance3DBoxes
,
LiDARInstance3DBoxes
)
from
mmdet3d.core.post_processing
import
nms_bev
,
nms_normal_bev
from
mmdet3d.models.builder
import
build_loss
from
mmdet3d.registry
import
MODELS
from
mmdet.core
import
build_bbox_coder
,
multi_apply
from
..builder
import
HEADS
,
build_loss
@
HEAD
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
PointRPNHead
(
BaseModule
):
"""RPN module for PointRCNN.
...
...
mmdet3d/models/dense_heads/shape_aware_head.py
View file @
e3b5253b
...
...
@@ -8,12 +8,13 @@ from mmcv.runner import BaseModule
from
torch
import
nn
as
nn
from
mmdet3d.core
import
box3d_multiclass_nms
,
limit_period
,
xywhr2xyxyr
from
mmdet3d.registry
import
MODELS
from
mmdet.core
import
multi_apply
from
..builder
import
HEADS
,
build_head
from
..builder
import
build_head
from
.anchor3d_head
import
Anchor3DHead
@
HEAD
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
BaseShapeHead
(
BaseModule
):
"""Base Shape-aware Head in Shape Signature Network.
...
...
@@ -164,7 +165,7 @@ class BaseShapeHead(BaseModule):
return
ret
@
HEAD
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
ShapeAwareHead
(
Anchor3DHead
):
"""Shape-aware grouping head for SSN.
...
...
mmdet3d/models/dense_heads/smoke_mono3d_head.py
View file @
e3b5253b
...
...
@@ -2,17 +2,17 @@
import
torch
from
torch.nn
import
functional
as
F
from
mmdet3d.registry
import
MODELS
from
mmdet.core
import
multi_apply
from
mmdet.core.bbox.builder
import
build_bbox_coder
from
mmdet.models.utils
import
gaussian_radius
,
gen_gaussian_target
from
mmdet.models.utils.gaussian_target
import
(
get_local_maximum
,
get_topk_from_heatmap
,
transpose_and_gather_feat
)
from
..builder
import
HEADS
from
.anchor_free_mono3d_head
import
AnchorFreeMono3DHead
@
HEAD
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
SMOKEMono3DHead
(
AnchorFreeMono3DHead
):
r
"""Anchor-free head used in `SMOKE <https://arxiv.org/abs/2002.10111>`_
...
...
mmdet3d/models/dense_heads/ssd_3d_head.py
View file @
e3b5253b
...
...
@@ -7,12 +7,13 @@ from torch.nn import functional as F
from
mmdet3d.core.bbox.structures
import
(
DepthInstance3DBoxes
,
LiDARInstance3DBoxes
,
rotation_3d_in_axis
)
from
mmdet3d.registry
import
MODELS
from
mmdet.core
import
multi_apply
from
..builder
import
HEADS
,
build_loss
from
..builder
import
build_loss
from
.vote_head
import
VoteHead
@
HEAD
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
SSD3DHead
(
VoteHead
):
r
"""Bbox head of `3DSSD <https://arxiv.org/abs/2002.10187>`_.
...
...
mmdet3d/models/dense_heads/vote_head.py
View file @
e3b5253b
...
...
@@ -6,15 +6,16 @@ from mmcv.runner import BaseModule, force_fp32
from
torch.nn
import
functional
as
F
from
mmdet3d.core.post_processing
import
aligned_3d_nms
from
mmdet3d.models.builder
import
build_loss
from
mmdet3d.models.losses
import
chamfer_distance
from
mmdet3d.models.model_utils
import
VoteModule
from
mmdet3d.ops
import
build_sa_module
from
mmdet3d.registry
import
MODELS
from
mmdet.core
import
build_bbox_coder
,
multi_apply
from
..builder
import
HEADS
,
build_loss
from
.base_conv_bbox_head
import
BaseConvBboxHead
@
HEAD
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
VoteHead
(
BaseModule
):
r
"""Bbox head of `Votenet <https://arxiv.org/abs/1904.09664>`_.
...
...
mmdet3d/models/detectors/centerpoint.py
View file @
e3b5253b
...
...
@@ -2,11 +2,11 @@
import
torch
from
mmdet3d.core
import
bbox3d2result
,
merge_aug_bboxes_3d
from
..builder
import
DETECTOR
S
from
mmdet3d.registry
import
MODEL
S
from
.mvx_two_stage
import
MVXTwoStageDetector
@
DETECTOR
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
CenterPoint
(
MVXTwoStageDetector
):
"""Base class of Multi-modality VoxelNet."""
...
...
mmdet3d/models/detectors/dynamic_voxelnet.py
View file @
e3b5253b
...
...
@@ -3,11 +3,11 @@ import torch
from
mmcv.runner
import
force_fp32
from
torch.nn
import
functional
as
F
from
..builder
import
DETECTOR
S
from
mmdet3d.registry
import
MODEL
S
from
.voxelnet
import
VoxelNet
@
DETECTOR
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
DynamicVoxelNet
(
VoxelNet
):
r
"""VoxelNet using `dynamic voxelization <https://arxiv.org/abs/1910.06528>`_.
"""
...
...
mmdet3d/models/detectors/fcos_mono3d.py
View file @
e3b5253b
# Copyright (c) OpenMMLab. All rights reserved.
from
..builder
import
DETECTOR
S
from
mmdet3d.registry
import
MODEL
S
from
.single_stage_mono3d
import
SingleStageMono3DDetector
@
DETECTOR
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
FCOSMono3D
(
SingleStageMono3DDetector
):
r
"""`FCOS3D <https://arxiv.org/abs/2104.10956>`_ for monocular 3D object detection.
...
...
mmdet3d/models/detectors/groupfree3dnet.py
View file @
e3b5253b
...
...
@@ -2,11 +2,11 @@
import
torch
from
mmdet3d.core
import
bbox3d2result
,
merge_aug_bboxes_3d
from
..builder
import
DETECTOR
S
from
mmdet3d.registry
import
MODEL
S
from
.single_stage
import
SingleStage3DDetector
@
DETECTOR
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
GroupFree3DNet
(
SingleStage3DDetector
):
"""`Group-Free 3D <https://arxiv.org/abs/2104.00678>`_."""
...
...
mmdet3d/models/detectors/h3dnet.py
View file @
e3b5253b
...
...
@@ -2,11 +2,11 @@
import
torch
from
mmdet3d.core
import
merge_aug_bboxes_3d
from
..builder
import
DETECTOR
S
from
mmdet3d.registry
import
MODEL
S
from
.two_stage
import
TwoStage3DDetector
@
DETECTOR
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
H3DNet
(
TwoStage3DDetector
):
r
"""H3DNet model.
...
...
mmdet3d/models/detectors/imvotenet.py
View file @
e3b5253b
...
...
@@ -6,8 +6,7 @@ import torch
from
mmdet3d.core
import
bbox3d2result
,
merge_aug_bboxes_3d
from
mmdet3d.models.utils
import
MLP
from
..
import
builder
from
..builder
import
DETECTORS
from
mmdet3d.registry
import
MODELS
from
.base
import
Base3DDetector
...
...
@@ -53,7 +52,7 @@ def sample_valid_seeds(mask, num_sampled_seed=1024):
return
sample_inds
@
DETECTOR
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
ImVoteNet
(
Base3DDetector
):
r
"""`ImVoteNet <https://arxiv.org/abs/2001.10692>`_ for 3D detection."""
...
...
@@ -78,9 +77,9 @@ class ImVoteNet(Base3DDetector):
# point branch
if
pts_backbone
is
not
None
:
self
.
pts_backbone
=
builder
.
build_backbone
(
pts_backbone
)
self
.
pts_backbone
=
MODELS
.
build
(
pts_backbone
)
if
pts_neck
is
not
None
:
self
.
pts_neck
=
builder
.
build
_neck
(
pts_neck
)
self
.
pts_neck
=
MODELS
.
build
(
pts_neck
)
if
pts_bbox_heads
is
not
None
:
pts_bbox_head_common
=
pts_bbox_heads
.
common
pts_bbox_head_common
.
update
(
...
...
@@ -93,9 +92,9 @@ class ImVoteNet(Base3DDetector):
pts_bbox_head_img
=
pts_bbox_head_common
.
copy
()
pts_bbox_head_img
.
update
(
pts_bbox_heads
.
img
)
self
.
pts_bbox_head_joint
=
builder
.
build_hea
d
(
pts_bbox_head_joint
)
self
.
pts_bbox_head_pts
=
builder
.
build_hea
d
(
pts_bbox_head_pts
)
self
.
pts_bbox_head_img
=
builder
.
build_hea
d
(
pts_bbox_head_img
)
self
.
pts_bbox_head_joint
=
MODELS
.
buil
d
(
pts_bbox_head_joint
)
self
.
pts_bbox_head_pts
=
MODELS
.
buil
d
(
pts_bbox_head_pts
)
self
.
pts_bbox_head_img
=
MODELS
.
buil
d
(
pts_bbox_head_img
)
self
.
pts_bbox_heads
=
[
self
.
pts_bbox_head_joint
,
self
.
pts_bbox_head_pts
,
self
.
pts_bbox_head_img
...
...
@@ -104,26 +103,26 @@ class ImVoteNet(Base3DDetector):
# image branch
if
img_backbone
:
self
.
img_backbone
=
builder
.
build_backbone
(
img_backbone
)
self
.
img_backbone
=
MODELS
.
build
(
img_backbone
)
if
img_neck
is
not
None
:
self
.
img_neck
=
builder
.
build
_neck
(
img_neck
)
self
.
img_neck
=
MODELS
.
build
(
img_neck
)
if
img_rpn_head
is
not
None
:
rpn_train_cfg
=
train_cfg
.
img_rpn
if
train_cfg
\
is
not
None
else
None
img_rpn_head_
=
img_rpn_head
.
copy
()
img_rpn_head_
.
update
(
train_cfg
=
rpn_train_cfg
,
test_cfg
=
test_cfg
.
img_rpn
)
self
.
img_rpn_head
=
builder
.
build_hea
d
(
img_rpn_head_
)
self
.
img_rpn_head
=
MODELS
.
buil
d
(
img_rpn_head_
)
if
img_roi_head
is
not
None
:
rcnn_train_cfg
=
train_cfg
.
img_rcnn
if
train_cfg
\
is
not
None
else
None
img_roi_head
.
update
(
train_cfg
=
rcnn_train_cfg
,
test_cfg
=
test_cfg
.
img_rcnn
)
self
.
img_roi_head
=
builder
.
build_hea
d
(
img_roi_head
)
self
.
img_roi_head
=
MODELS
.
buil
d
(
img_roi_head
)
# fusion
if
fusion_layer
is
not
None
:
self
.
fusion_layer
=
builder
.
build_fusion_layer
(
fusion_layer
)
self
.
fusion_layer
=
MODELS
.
build
(
fusion_layer
)
self
.
max_imvote_per_pixel
=
fusion_layer
.
max_imvote_per_pixel
self
.
freeze_img_branch
=
freeze_img_branch
...
...
mmdet3d/models/detectors/imvoxelnet.py
View file @
e3b5253b
...
...
@@ -3,11 +3,11 @@ import torch
from
mmdet3d.core
import
bbox3d2result
,
build_prior_generator
from
mmdet3d.models.fusion_layers.point_fusion
import
point_sample
from
mmdet3d.registry
import
MODELS
from
mmdet.models.detectors
import
BaseDetector
from
..builder
import
DETECTORS
,
build_backbone
,
build_head
,
build_neck
@
DETECTOR
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
ImVoxelNet
(
BaseDetector
):
r
"""`ImVoxelNet <https://arxiv.org/abs/2106.01178>`_."""
...
...
@@ -23,12 +23,12 @@ class ImVoxelNet(BaseDetector):
pretrained
=
None
,
init_cfg
=
None
):
super
().
__init__
(
init_cfg
=
init_cfg
)
self
.
backbone
=
build_backbone
(
backbone
)
self
.
neck
=
build
_neck
(
neck
)
self
.
neck_3d
=
build
_neck
(
neck_3d
)
self
.
backbone
=
MODELS
.
build
(
backbone
)
self
.
neck
=
MODELS
.
build
(
neck
)
self
.
neck_3d
=
MODELS
.
build
(
neck_3d
)
bbox_head
.
update
(
train_cfg
=
train_cfg
)
bbox_head
.
update
(
test_cfg
=
test_cfg
)
self
.
bbox_head
=
build_hea
d
(
bbox_head
)
self
.
bbox_head
=
MODELS
.
buil
d
(
bbox_head
)
self
.
n_voxels
=
n_voxels
self
.
anchor_generator
=
build_prior_generator
(
anchor_generator
)
self
.
train_cfg
=
train_cfg
...
...
mmdet3d/models/detectors/mvx_faster_rcnn.py
View file @
e3b5253b
...
...
@@ -3,11 +3,11 @@ import torch
from
mmcv.runner
import
force_fp32
from
torch.nn
import
functional
as
F
from
..builder
import
DETECTOR
S
from
mmdet3d.registry
import
MODEL
S
from
.mvx_two_stage
import
MVXTwoStageDetector
@
DETECTOR
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
MVXFasterRCNN
(
MVXTwoStageDetector
):
"""Multi-modality VoxelNet using Faster R-CNN."""
...
...
@@ -15,7 +15,7 @@ class MVXFasterRCNN(MVXTwoStageDetector):
super
(
MVXFasterRCNN
,
self
).
__init__
(
**
kwargs
)
@
DETECTOR
S
.
register_module
()
@
MODEL
S
.
register_module
()
class
DynamicMVXFasterRCNN
(
MVXTwoStageDetector
):
"""Multi-modality VoxelNet using Faster R-CNN and dynamic voxelization."""
...
...
Prev
1
2
3
4
5
6
7
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