自动驾驶——SimpleNet的学习笔记

1 预处理

DENSE_RATIO = 4

选择比例为4的原因如下:

1. DetectoRS的FPN最下层特征图的采样比例为4,

可以看看他们的配置文件:https://github.com/joe-siyuan-qiao/DetectoRS/blob/master/configs/DetectoRS/DetectoRS_mstrain_400_1200_x101_32x4d_40e.py

2 预训练模型

我们在训练模型时,也需要使用预训练模型,其中预训练的数据来自于历史采集数据;

2 目标函数的设计

2.1 正负样本的定义

这里,正负样本的定义我们参照的是COCO数据集的标准,

(今后,我们还需要根据测试定义适合此项目的正负样本的定义标准)

在COCO数据集中,正负样本的区分是通过IoU来实现的,

其中正负样本的阈值为:IoU = 0.5

截图如下:

2.2 loss_heat_map——基于 Focal Loss

在热点图的回归中,“样本不平衡”是一个十分严重的问题,于是我们将基于FL来设计loss函数;

2.2.1 正负阈值的设置——十分重要!!!

正负阈值的设置很重要,较高的正样本阈值对于去除重复的检测框,具有很好的效果;

其中包含的物理含义是:使得center_heat_map的能量峰更为集中,从而gaussian_nms()会有更好的效果;

在CenterNet的代码中,只选取了一个正样本,也就是样本中心,如图所示:

3 Post process后处理

3.1 NMS——使用Soft-NMS

因为CenterNet的论文中使用的Soft-NMS算法;

4 备注

4.1 如果输入不一致怎么办呢

可以先使用仿射变换将输入图像填充至模型最大的输入尺寸;

5 调试笔记

5.1 提高Focal Loss正负样本的阈值会使得imbalance的问题变得严重

我在尝试解决“多个重复检测框”时,将neg_loss_t()中的threshold的阈值调到了0.95,结果imbalance的问题,变得严重了,

置信度预测出现了0.4左右的预测分数,如图所示,

出现这种情况的话,可以进一步加大FL的系数alpha的值;

而且loss似乎也降低了,

猜你喜欢

转载自blog.csdn.net/songyuc/article/details/106640599