CIA-SSD那点事儿

1,数据部分:

  • kitti底面中心设置位置:如果要换成自己的数据集,需要改这里。

det3d/datasets/pipelines/loading.py中:

box_np_ops.change_box3d_center_(gt_boxes, [0.5, 0.5, 0], [0.5, 0.5, 0.5])

  • preprocess_v4/AssignTarget(object):/build_box_coder/GroundBox3dCoderTorch/GroundBox3dCoder/_encode & _decode/box_np_ops.second_box_encode中

   encode()中:

    #zg = zg + hg / 2
    #za = za + ha / 2

decode()中:

#za = za + ha / 2

...

#zg = zg - hg / 2

  • det3d/datasets/pipelines/preprocess_v4.py的init()中:

self.random_select = cfg.get("random_select", False)  # False  这个值可以设成True,表示40m以外的点都保留,40m以内的点进行抽样选取。

2,预处理部分:

  • bev_range

class Voxelization(object):中

 bv_range = pc_range[[0, 1, 3, 4]]  #如果坐标系变化,索引也要跟着变。

mask = prep.filter_gt_box_outside_range(gt_dict["gt_boxes"], bv_range) 需要check

  • voxel生成过程同pointpillar,优化也可参考该步骤的pointpillar

voxels, coordinates, num_points_per_voxel = self.voxel_generator.generate(points)

  • preprocess_v4.py的init()中:feature_map_size设置要同选取的range范围对应上。

feature_map_size = [1, 200, 176] #[1, 200, 176]

  • create_data/kitti_ds.create_kitti_info_file(root_path)中,dims的h,w,l排序会根据xyz轴进行对应,如果和kitti坐标系不一致的话,这里需要调整

  • 前面调整过hwl的次序之后,在这里生成create_gt_database时候,在piplines/loading中的这个box_camera_to_lidar也可以注销了,因为自己标注的数据就是在lidar坐标下的。

  • 配置文件

region_similarity_calculator=dict(type="rotate_iou_similarity",),   

db_prep_steps=[
        dict(filter_by_min_num_points=dict(car=5, vehicle=5, otherVel=5, person=5, nonVel=5)),
        #dict(filter_by_difficulty=[-1],), --- 自有数据该过滤条件要过滤
    ],

  • kitti_common/def get_label_anno(label_path):

annotations["dimensions"] = np.array([[float(info) for info in x[8:11]] for x in content]).reshape(-1, 3)[:, [2, 1, 0]] #----[2, 0, 1]

  • kitti_common/_calculate_num_points_in_gt():

        # if remove_outside: #-------
        #     points_v = box_np_ops.remove_outside_points(points_v, rect, Trv2c, P2, image_info["image_shape"])

  •   box_np_ops/rotation_2d():

    #rot_mat_T = np.stack([[rot_cos, -rot_sin], [rot_sin, rot_cos]])
    rot_mat_T = np.stack([[rot_cos, rot_sin], [-rot_sin, rot_cos]])

  • mg_head_v4_release.py/get_task_detections():

        total_scores = torch.softmax(cls_preds, dim=0)       # [70400, 1]-----------
         #total_scores = torch.sigmoid(cls_preds)       # [70400, 1]

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值