【水下目标检测】比赛记录和心得 day1


今天报名参加了一个水下目标检测比赛,数据集大概长这个样子:
在这里插入图片描述
就在这里记录一下每天的心得吧(因为自己比较菜所以就匿名啦)

(一)数据及分析:

数据的话大概就是上面这样子,有几个问题:

  1. 水下图片比较模糊,而且有的图片是运动时拍摄:在这里插入图片描述
  2. 样本存在分布不均衡的问题,如图:
    在这里插入图片描述
  3. 存在一些错误标注和噪声区域(图像为1080×1960大小):在这里插入图片描述在这里插入图片描述
  4. 大量目标为小目标,anchor 的大小较为集中,导致偶尔的大目标在训练时容易忽略;

(二)图像预处理:

由于水下拍摄的图像很不清晰,我们需要预处理一下;

现在水下图像去模糊已经研究的比较成熟,但是由于这个比赛的评审最终需要同时考虑精度和速度,我们需要一种高效的处理方式,这里使用了多尺度 retinex 图像增强算法:

在这里插入图片描述
上图为处理前,下图为处理后;

(三)网络框架选择:

由于我自己的电脑配置不是很高,所以选取目标检测网络框架主要集中在轻量级检测网络;

一开始想用 ThunderNet 来着,结果官方没有开放源码,Github 上的复现代码被反映有 Bug(自己训练确实也收敛不了),所以现在先做一个 Baseline 吧;

选取的是 Faster-rcnn 框架,使用 MobileNetV2 做 Backbone(为什么不用 V3 呢?因为没有预训练模型,,,),加了一个类似 ThunderNet 中的上下文增强模块(Context Enhancement Module)并额外增加了一个小的 anchor size;

(四)解决样本不均衡问题:

这是个大问题,导致一开始训练的模型是这样的:
在这里插入图片描述
(这么大只海参看不见吗,,,)
在这里插入图片描述
(黑乎乎的一律认为是海胆)
在这里插入图片描述
只能识别海胆,其他的一概不认识(白白浪费一次提交机会);

为了解决这个问题,用了两个方案:

  1. 使用了何恺明大佬团队提出了 Focal Loss(不过好像这是针对 one-stage 正负样本不均衡提出的,所以实测用处不是很大);
  2. 先在较为均衡分布的样本上训练,即先去掉只有海胆的图(去掉也不剩多少了,,,);

这样改进的网络正在训练中~

祝我自己好运~

发布了100 篇原创文章 · 获赞 142 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/weixin_44936889/article/details/104597606