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
f70902b8
Commit
f70902b8
authored
Jul 13, 2020
by
Shaoshuai Shi
Browse files
add config cbgs_1conv_sepreg_dir.yaml
parent
eaa36cef
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
234 additions
and
6 deletions
+234
-6
pcdet/models/dense_heads/anchor_head_multi.py
pcdet/models/dense_heads/anchor_head_multi.py
+8
-6
tools/cfgs/nuscenes_models/cbgs_1conv_sepreg_dir.yaml
tools/cfgs/nuscenes_models/cbgs_1conv_sepreg_dir.yaml
+226
-0
No files found.
pcdet/models/dense_heads/anchor_head_multi.py
View file @
f70902b8
...
...
@@ -324,8 +324,9 @@ class AnchorHeadMulti(AnchorHeadTemplate):
if
isinstance
(
self
.
anchors
,
list
):
if
self
.
use_multihead
:
anchors
=
torch
.
cat
(
[
anchor
.
permute
(
3
,
4
,
0
,
1
,
2
,
5
).
contiguous
().
view
(
-
1
,
anchor
.
shape
[
-
1
])
for
anchor
in
self
.
anchors
],
dim
=
0
)
[
anchor
.
permute
(
3
,
4
,
0
,
1
,
2
,
5
).
contiguous
().
view
(
-
1
,
anchor
.
shape
[
-
1
])
for
anchor
in
self
.
anchors
],
dim
=
0
)
else
:
anchors
=
torch
.
cat
(
self
.
anchors
,
dim
=-
3
)
else
:
...
...
@@ -336,9 +337,10 @@ class AnchorHeadMulti(AnchorHeadTemplate):
box_losses
=
0
tb_dict
=
{}
for
idx
,
box_pred
in
enumerate
(
box_preds
):
box_pred
=
box_pred
.
view
(
batch_size
,
-
1
,
box_pred
.
shape
[
-
1
]
//
self
.
num_anchors_per_location
if
not
self
.
use_multihead
else
box_pred
.
shape
[
-
1
])
box_pred
=
box_pred
.
view
(
batch_size
,
-
1
,
box_pred
.
shape
[
-
1
]
//
self
.
num_anchors_per_location
if
not
self
.
use_multihead
else
box_pred
.
shape
[
-
1
]
)
box_reg_target
=
box_reg_targets
[:,
start_idx
:
start_idx
+
box_pred
.
shape
[
1
]]
reg_weight
=
reg_weights
[:,
start_idx
:
start_idx
+
box_pred
.
shape
[
1
]]
# sin(a - b) = sinacosb-cosasinb
...
...
@@ -351,7 +353,7 @@ class AnchorHeadMulti(AnchorHeadTemplate):
loc_loss
=
loc_loss
*
self
.
model_cfg
.
LOSS_CONFIG
.
LOSS_WEIGHTS
[
'loc_weight'
]
box_losses
+=
loc_loss
tb_dict
[
'rpn_loss_loc'
]
=
tb_dict
.
get
(
'rpn_loss_loc'
,
0
)
+
loc_loss
tb_dict
[
'rpn_loss_loc'
]
=
tb_dict
.
get
(
'rpn_loss_loc'
,
0
)
+
loc_loss
.
item
()
if
box_dir_cls_preds
is
not
None
:
if
not
isinstance
(
box_dir_cls_preds
,
list
):
...
...
tools/cfgs/nuscenes_models/cbgs_1conv_sepreg_dir.yaml
0 → 100644
View file @
f70902b8
CLASS_NAMES
:
[
'
car'
,
'
truck'
,
'
construction_vehicle'
,
'
bus'
,
'
trailer'
,
'
barrier'
,
'
motorcycle'
,
'
bicycle'
,
'
pedestrian'
,
'
traffic_cone'
]
DATA_CONFIG
:
_BASE_CONFIG_
:
cfgs/dataset_configs/nuscenes_dataset.yaml
MODEL
:
NAME
:
SECONDNet
VFE
:
NAME
:
MeanVFE
BACKBONE_3D
:
NAME
:
VoxelResBackBone8x
MAP_TO_BEV
:
NAME
:
HeightCompression
NUM_BEV_FEATURES
:
256
BACKBONE_2D
:
NAME
:
BaseBEVBackbone
LAYER_NUMS
:
[
5
,
5
]
LAYER_STRIDES
:
[
1
,
2
]
NUM_FILTERS
:
[
128
,
256
]
UPSAMPLE_STRIDES
:
[
1
,
2
]
NUM_UPSAMPLE_FILTERS
:
[
256
,
256
]
DENSE_HEAD
:
NAME
:
AnchorHeadMulti
CLASS_AGNOSTIC
:
False
USE_DIRECTION_CLASSIFIER
:
True
DIR_OFFSET
:
0.78539
DIR_LIMIT_OFFSET
:
0.0
NUM_DIR_BINS
:
2
USE_MULTIHEAD
:
True
SEPARATE_MULTIHEAD
:
True
ANCHOR_GENERATOR_CONFIG
:
[
{
'
class_name'
:
car
,
'
anchor_sizes'
:
[[
4.63
,
1.97
,
1.74
]],
'
anchor_rotations'
:
[
0
,
1.57
],
'
anchor_bottom_heights'
:
[
-0.95
],
'
align_center'
:
False
,
'
feature_map_stride'
:
8
,
'
matched_threshold'
:
0.6
,
'
unmatched_threshold'
:
0.45
},
{
'
class_name'
:
truck
,
'
anchor_sizes'
:
[[
6.93
,
2.51
,
2.84
]],
'
anchor_rotations'
:
[
0
,
1.57
],
'
anchor_bottom_heights'
:
[
-0.6
],
'
align_center'
:
False
,
'
feature_map_stride'
:
8
,
'
matched_threshold'
:
0.55
,
'
unmatched_threshold'
:
0.4
},
{
'
class_name'
:
construction_vehicle
,
'
anchor_sizes'
:
[[
6.37
,
2.85
,
3.19
]],
'
anchor_rotations'
:
[
0
,
1.57
],
'
anchor_bottom_heights'
:
[
-0.225
],
'
align_center'
:
False
,
'
feature_map_stride'
:
8
,
'
matched_threshold'
:
0.5
,
'
unmatched_threshold'
:
0.35
},
{
'
class_name'
:
bus
,
'
anchor_sizes'
:
[[
10.5
,
2.94
,
3.47
]],
'
anchor_rotations'
:
[
0
,
1.57
],
'
anchor_bottom_heights'
:
[
-0.085
],
'
align_center'
:
False
,
'
feature_map_stride'
:
8
,
'
matched_threshold'
:
0.55
,
'
unmatched_threshold'
:
0.4
},
{
'
class_name'
:
trailer
,
'
anchor_sizes'
:
[[
12.29
,
2.90
,
3.87
]],
'
anchor_rotations'
:
[
0
,
1.57
],
'
anchor_bottom_heights'
:
[
0.115
],
'
align_center'
:
False
,
'
feature_map_stride'
:
8
,
'
matched_threshold'
:
0.5
,
'
unmatched_threshold'
:
0.35
},
{
'
class_name'
:
barrier
,
'
anchor_sizes'
:
[[
0.50
,
2.53
,
0.98
]],
'
anchor_rotations'
:
[
0
,
1.57
],
'
anchor_bottom_heights'
:
[
-1.33
],
'
align_center'
:
False
,
'
feature_map_stride'
:
8
,
'
matched_threshold'
:
0.55
,
'
unmatched_threshold'
:
0.4
},
{
'
class_name'
:
motorcycle
,
'
anchor_sizes'
:
[[
2.11
,
0.77
,
1.47
]],
'
anchor_rotations'
:
[
0
,
1.57
],
'
anchor_bottom_heights'
:
[
-1.085
],
'
align_center'
:
False
,
'
feature_map_stride'
:
8
,
'
matched_threshold'
:
0.5
,
'
unmatched_threshold'
:
0.3
},
{
'
class_name'
:
bicycle
,
'
anchor_sizes'
:
[[
1.70
,
0.60
,
1.28
]],
'
anchor_rotations'
:
[
0
,
1.57
],
'
anchor_bottom_heights'
:
[
-1.18
],
'
align_center'
:
False
,
'
feature_map_stride'
:
8
,
'
matched_threshold'
:
0.5
,
'
unmatched_threshold'
:
0.35
},
{
'
class_name'
:
pedestrian
,
'
anchor_sizes'
:
[[
0.73
,
0.67
,
1.77
]],
'
anchor_rotations'
:
[
0
,
1.57
],
'
anchor_bottom_heights'
:
[
-0.935
],
'
align_center'
:
False
,
'
feature_map_stride'
:
8
,
'
matched_threshold'
:
0.6
,
'
unmatched_threshold'
:
0.4
},
{
'
class_name'
:
traffic_cone
,
'
anchor_sizes'
:
[[
0.41
,
0.41
,
1.07
]],
'
anchor_rotations'
:
[
0
,
1.57
],
'
anchor_bottom_heights'
:
[
-1.285
],
'
align_center'
:
False
,
'
feature_map_stride'
:
8
,
'
matched_threshold'
:
0.6
,
'
unmatched_threshold'
:
0.4
},
]
SHARED_CONV_NUM_FILTER
:
64
RPN_HEAD_CFGS
:
[
{
'
HEAD_CLS_NAME'
:
[
'
car'
],
},
{
'
HEAD_CLS_NAME'
:
[
'
truck'
,
'
construction_vehicle'
],
},
{
'
HEAD_CLS_NAME'
:
[
'
bus'
,
'
trailer'
],
},
{
'
HEAD_CLS_NAME'
:
[
'
barrier'
],
},
{
'
HEAD_CLS_NAME'
:
[
'
motorcycle'
,
'
bicycle'
],
},
{
'
HEAD_CLS_NAME'
:
[
'
pedestrian'
,
'
traffic_cone'
],
},
]
SEPARATE_REG_CONFIG
:
NUM_MIDDLE_CONV
:
1
NUM_MIDDLE_FILTER
:
64
REG_LIST
:
[
'
reg:2'
,
'
height:1'
,
'
size:3'
,
'
angle:1'
,
'
velo:2'
]
TARGET_ASSIGNER_CONFIG
:
NAME
:
AxisAlignedTargetAssigner
POS_FRACTION
:
-1.0
SAMPLE_SIZE
:
512
NORM_BY_NUM_EXAMPLES
:
False
MATCH_HEIGHT
:
False
BOX_CODER
:
ResidualCoder
BOX_CODER_CONFIG
:
{
'
code_size'
:
9
,
'
encode_angle_by_sincos'
:
False
}
LOSS_CONFIG
:
REG_LOSS_TYPE
:
WeightedL1Loss
LOSS_WEIGHTS
:
{
'
pos_cls_weight'
:
1.0
,
'
neg_cls_weight'
:
2.0
,
'
cls_weight'
:
1.0
,
'
loc_weight'
:
0.25
,
'
dir_weight'
:
0.2
,
'
code_weights'
:
[
1.0
,
1.0
,
1.0
,
1.0
,
1.0
,
1.0
,
1.0
,
0.2
,
0.2
]
}
POST_PROCESSING
:
RECALL_THRESH_LIST
:
[
0.3
,
0.5
,
0.7
]
SCORE_THRESH
:
0.1
OUTPUT_RAW_SCORE
:
False
EVAL_METRIC
:
kitti
NMS_CONFIG
:
MULTI_CLASSES_NMS
:
False
NMS_TYPE
:
nms_gpu
NMS_THRESH
:
0.2
NMS_PRE_MAXSIZE
:
1000
NMS_POST_MAXSIZE
:
100
OPTIMIZATION
:
OPTIMIZER
:
adam_onecycle
LR
:
0.003
WEIGHT_DECAY
:
0.01
MOMENTUM
:
0.9
MOMS
:
[
0.95
,
0.85
]
PCT_START
:
0.4
DIV_FACTOR
:
10
DECAY_STEP_LIST
:
[
35
,
45
]
LR_DECAY
:
0.1
LR_CLIP
:
0.0000001
LR_WARMUP
:
False
WARMUP_EPOCH
:
1
GRAD_NORM_CLIP
:
10
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