当前所在位置:首页>新闻中心>行业资讯

工业视觉中的目标检测与天池大赛优胜方案

时间:2019-08-23 小编: 点击:531

    目标检测是计算机视觉领域研究最火热的方向,这从计算机视觉顶会CVPR相关论文数量就能看得出来。

    目标检测应用范围广泛,上至卫星遥感,下至自动驾驶,大到鲸鱼保护,小到生物细胞分析,都有其用武之地。

    在论文中常见的MS COCO数据集,多以生活类自然场景中的目标为主,做一个通用的目标检测器,当然很有意思,但在工业视觉领域有很多特定的目标,如果能解决好了,往往非常具有商业价值。这个领域商业化模式清晰,足够垂直,国家也鼓励工业 4.0 。一套自动化的产品瑕疵(缺陷)检测系统,一年就可以帮工厂省几百万甚至上千万资金。

    阿里天池平台曾经举办过大量的数据竞赛,让人印象深刻的计算机视觉比赛比如津南数字制造算法挑战赛【赛场二】X光图像的违禁物品检测分割,2018广东工业智造大数据创新大赛—智能算法赛铝型材表面瑕疵识别,和最近刚上线的百万奖金!天池发起广东工业制造创新大赛赛场一:布匹疵点智能识别,都与目标检测相关。

    比赛当然是追求高精度,下面将结合一些最新的论文和天池上目标检测相关比赛的优胜方案,谈谈如何提高模型精度。

    首先要推荐的是亚马逊李沐团队的论文及代码:

    Bag of Freebies for Training Object Detection Neural Networks

    https://arxiv.org/abs/1902.04103v1

    https://github.com/dmlc/gluon-cv

    作者们在文章主要公布了以下训练实用技巧:

    1.视觉一致的Image Mixup(Visually Coherent Image Mixup for Object De- tection),Image Mixup已经成功用于图像分类的样本增广,在很多比赛中也经常被冠军所用,做法非常简单,图像简单按照比例进行像素混合,同样,将带有目标的两幅图像也可以像素混合,生成新的图像含有含有原来的目标,用在目标检测的Image Mixup示意如下:

    2.分类头标签平滑(Classification Head Label Smoothing)

   3.数据预处理(Data Pre-processing) 主要是随机几何变换和颜色扰动。

    4.训练调度程序改造(Training Scheduler Revamping)改进学习率的衰减方法,使用cosine schedule 代替step schedule取得了更好的结果,如下图:

   5.同步批归一化(Synchronized Batch Normalization)为了方便多GPU训练。

   6.随机形状训练(Random shapes training for single-stage object detection networks)通过组合以上目标检测训练技巧,训练Faster RCNN和YOLOv3之后,获得的精度增益,相同的算法最多竟有+4.0%AP的增长(COCO数据集)!

    另外,研究往届比赛的优胜方案也能对我们有所启发。

    冠军们使用什么框架?

    商汤开源的mmdetection和Facebook开源的Detectron是被提及最多的目标检测框架,它们本身实现了大量state-of-the-art算法,而且用户众多,有问题也比较容易解决,是大家快速参与比赛的首选。

    https://github.com/open-mmlab/mmdetection

    https://github.com/facebookresearch/Detectron

    选择哪一种目标检测算法?

    这时候不能不提到 Cascade RCNN,曾经在多个比赛中斩获冠军。Cascade R-CNN升级!目标检测制霸COCO,实例分割超越Mask R-CNN

   目前也是COCO数据集上的最高分获得者。但也不能完全迷信论文里的state-of-the-art,在铝型材表面瑕疵识别比赛中,冠军使用模型的基础结构是Faster RCNN(但是也做了大量改进)。

    数据增广和模型融合是必不可少的!

    所有的优胜团队都会提到数据增广,图像翻转、旋转、平移、颜色扰动等。尤其是处理类别不平衡问题,有时候甚至成为比赛获胜的关键。

在目标检测领域还有一大难点是小目标的检测,这里强烈推荐大家参考论文:Augmentation for small object detection;https://arxiv.org/abs/1902.07296,通过造数据的方式使得小目标类别在整体更均衡,可以有效改进算法效果。


分享: