赞
踩
1、复制pcdet/datasets/kitti/kitti_dataset.py为WJ_dataset.py
2、 复制pcdet/utils/object3d_kitti.py 为objetc3d_WJ.py,根据数据标注格式加载读取对应标签。
3、pcdet/datasets/dataset.py, __init__.py中添加
4、复制kitti_dataset.yaml为WJ_dataset.yaml
POINT_CLOUD_RANGE: [-73.44, -79.36, -6, 73.44, 79.36, 2] 类别信息
5、复制pv_rcnn.yaml
6、tensorboard远程访问
1、在登录远程服务器的时候使用命令:
ssh -L 8008:localhost:6006 liangyanyu@10.102.1.217
如果6006冲突了,换成其他端口号。(一般ssh远程登录命令:ssh liang@10.102.×.××)
2、训练完模型之后使用如下命令:
tensorboard --logdir=./tensorboard/ --port=6006
(‘/path/to/log-directory’为自己设定的日志存放路径)
最后,在本地访问地址:http://10.102.1.217:6006/
1、RuntimeError: Sizes of tensors must match except in dimension 1. Expected size 199 but got size 200 for tensor number 1 in the list
原因:base_bev_backbone.py文件中x = torch.cat(ups, dim=1)行。
网络下采样、上采样得到的特征图进行concat,但是第三维尺度不匹配。由于voxelsize设定导致。
PVRCNN官方建议 Voxel设置:X,Y方向个数是16的倍数。Z方向为40。
2、训练集和验证集数据都放在training文件夹下,否则出现如下错误。
assert img_file.exists() # 如果该图片文件不存在,直接报错
3、训练完成后运行demo.py可视化模型检测结果,检测框错误,。
解决方法:
(1)检查生成的gt_database是否正确,可视化每个目标看方向,大小是否是标注的目标。
(2)检测spconv库版本,训练和测试的版本不一致会有问题。
4、训练模型的检测结果car类型车检测不到,其它类别目标可以检测到。
解决方法:
(1)数据验证:查看训练数据送到网络训练前,self.prepare_data(data_dict=input_dict)
是否正确。openpcdet将类别添加到box最后一列进行拼接,组成8维向量。删除了data_dict
中的names。
(2)推理后处理验证:验证nms前目标的类别是否有car目标。
(3)配置文件验证:配置文件中目标类别字符核对。(我的问题就出现在car和Car的大小写问题)。导致car目标在生成anchor时无对应,未进行训练。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。