查看原文
其他

百度AI获ECCV 2020 “双料冠军” ,获奖目标检测技术细节首曝光


2020年8月23-28日,原定于在英国格拉斯哥举行的ECCV 2020受疫情影响,改为虚拟形式在线上进行,但这并未影响参加者的热情,依然输出了相当多计算机视觉领域优质内容。百度作为计算机视觉领域的“佼佼者”,在ECCV 2020上也有不菲的成绩,先有10篇论文中选被收录,如今又“连中两元”拿下两个Workshop冠军,分别是Tiny Object Detection目标检测领域最权威的比赛COCO


目标检测领域,百度可谓是获奖“常客”去年,在目前规模最大的目标检测公开数据集Open Images Dataset V5(OIDV5)中,百度凭借领先的AI技术,摘得桂冠;在CVPR 2019 Workshop中,百度获得"Objects365 物体检测"国际竞赛 Full Track 冠军。


ECCV是世界计算机视觉顶级会议之一,每两年举办一场,与CVPR和ICCV并称计算机视觉领域三大会议。在本届的Workshop中,COCO Object Detection备受关注,它是目前学术界最权威的检测和例分割比赛。首届Tiny Object Detection是为了帮助更多新兴领域提出新的基准微小目标检测方式,解决行业痛点、满足应用需求。


一、COCO Object Detection

COCO数据集中囊括11万训练数据、80个类别,百度团队基于PaddleDetection,在此次目标检测实例分割任务中通过3种方法进行优化:强大的目标检测效果;加强版FPN模块和加强版header;Two pipeline策略。



1、强大的检测分支


在比赛中,百度用效果优良的cascade mask rcnn和htc网络作为基础网络,在这些基础网络上,加入更多改进策略来提升检测部分的效果。


首先,百度通过飞桨框架下的ImageNet蒸馏模型作为预训练模型对Objects365数据集的检测模型进行训练,训练好的Objects365检测模型可以作为预训练模型,并用来训练相同网络结构的COCO模型,这样可以在检测任务上获得显著提升的效果。对于具体的网络结构而言,百度训练的Res2net200模型、CBResnet200、SE154模型作为检测模型的backbone,其中Res2net200的检测模型在单尺度下mAP可以达到56.2%。


其次,百度采用加强版的FPN模块提升网络效果:使用Acfpn网络增强检测能力,该模型可以解决高分辨率输入上特征图分辨率与感受域之间的矛盾,Acfpn包括两个模块,加入Acfpn后,box mAP增加了0.8%;除了Acfpn,还使用DetectoRS中的RFP网络,RFP网络将反馈连接添加到自底向上的主干层中,它在htc-r50上使box mAP提升4.2%。


除了加强版的FPN模块,百度还用了non-local算子和数据增强策略。non-local算子用于描述距离像素之间的关联,输出特征图的每个元素都会受到所有输入特征图的影响;同时,百度还根据COCO数据集的特性,使用随机擦除的数据增强策略——在图像中随机选取一个矩形区域,并在训练中对其像素进行随机擦除,降低过拟合风险,并提高模型对于遮挡目标的检测鲁棒性。


2、分割模块


为了提高模型最终的mask准确率,百度使用增强版的header模块,在此模块中,使用htc的header作为基础header。在此基础上,百度用增强的双网络box header代替原有的box header,除此之外,mask header分支整合了rescoring信息,实际坐标信息和边缘信息,组合成增强版的header。



原始的htc的box header只有两个全卷积层用于目标框的回归和分类,而增强版的双分支box header使用两个分支,分别预测框的坐标和类别,为了提高效率,百度没有用过重的head结构,只使用一个bottleblock模块代替第一个卷积层,其他的卷积层不变;而对于分割rescoring分支,为了避免计算量过大,百度只在最后一个阶段加入分割rescoring分支,并用rescoring分支的结果取代原有的box分值赋给mask;而边缘分割分支,是在mask header里融入了边缘信息,以提升mask mAP。



3、Two Pipeline


最后,为了可以高效利用多个检测网络的结果,百度将检测网络结果当作候选框输入到分割网络的head前,得到实例分割网络的最终mask结果,通过这种two pipeline策略,mask mAP可以增长3.1%。基于上述优化方法,百度团队在COCO objectdetectiontrack中一举夺魁。



此次竞赛中,百度团队使用了最新发布的“PP-YOLO,它是YOLOv3的“华丽变身”。PP-YOLO的高精度和高推理速度,即使对检测视频中非常快速运动的目标也可以达到很好的效果。经过一系列优化方法,飞桨研发人员已将训练迭代次数和学习率衰减迭代次数调整至和原始YOLOv3模型的迭代次数一致,也就是训练迭代次数从25万次增加到50万次,对应学习率减的迭代次数调整至40万和45万,使PP-YOLO模型在COCO minival数据集精度达到45.3%,单卡V100上batch size=1时的预测速度为72.9 FPS。如果使用COCO test_dev2017数据集测试,精度将达到45.9%。


如下表所示,在不同输入尺度下PP-YOLO模型与YOLOv4模型在COCO数据集精度和V100推理速度的交手结果。



而PP-YOLO所应用的这套优化策略,也可以被尝试应用到该系列的其它模型上,产业开发者或者科研人员可借鉴这套优化算法展开进一步的探索。


目标检测是计算机视觉领域中的核心任务,也是百度的拿手强项。去年,在目前规模最大的目标检测公开数据集Open Images Dataset V5(OIDV5)中,百度基于飞桨PaddleDetection目标模型库研发了大规模图像目标检测模型MSF-DET (Multi-Strategy Fused Detection framework),它也成为了OIDV5  2019目标检测比赛中的最好单模型,并且在计算机视觉领域的顶级学术会议ICCV 2019上进行技术分享。此外,在CVPR 2019 Workshop中,百度获得"Objects365 物体检测"国际竞赛 Full Track 冠军,而 Full Track 主要用于探索目标检测系统的性能上限,备受瞩目。


二、小目标检测 Tiny Object Detection

TinyPerson数据集包括794张训练图片,每张图片中包括上百个小目标人物需要检出。任务的目标是评估测试图片中的tiny大小(20*20~40*40像素)的人体目标的AP(AveragePrecision)。


百度研究了常见的两级检测器:Faster R-CNN、FPN、Deformable R-CNN、Cascade R-CNN等,从而探查其对不懂IoU阈值的检测标准的适合性。该方法主要分为四个部分:数据增强、训练策略改进、模型改进和模型融合。



1.数据增强


针对一般无人机采集的人群数据集,如Semantic Drone Dataset、Stanford Drone Dataset,由于数据集数量较小难以达到快速收敛和较好的检测效果。百度采用额外的同类数据来进行同尺度预训练,从而提高模型对同等先验知识的理解提高模型的检测能力。通过加入数据增强策略,AP50(tiny)提升2%至3%。


2.训练策略改进


对于无人机航拍收集的数据,不同图像的原始尺寸和目标的相对尺寸会有所不同,这样会造成检测器对有些图像的理解困难。在训练过程中,百度随机将输入图像的大小调整为原始大小的0.5、1.5倍、1.5倍,以帮助解决尺度差异问题。在改进训练策略以后,AP50(tiny)由57.9%提升至65.38%。


3.模型改进


对于传统的二阶段检测器,如R-CNN和FPN系列,通常使用ResNet系列网络作为骨架网络。为了改进这种系列检测器,对于FPN检测器,P3层为微小物体的检测提供了相对应尺度的特征。然而,P3层的不足在于它具有语义描述。因此百度用PAFPN代替FPN,提高网络的语义识别能力。相较普通的FPN,PAFPN增加了一条自下而上的路径,从而提高了基于提议的实例分割框架中的信息流。此外,在下采样模块中,百度通过“carafe”采样方法来代替原来的卷积模块下采样方法,然后使用可变形卷积模块。在上采样模块中,百度基于可变形卷积模块代替原来的卷积模块对特征进行上采样。改进后的PAFPN,AP50(tiny)提升了1.5%。



4.模型融合


对于难度较大的无人机航拍目标的小目标检测任务,单模型单尺度显然无法满足图像的复杂以及低信噪比特性,因此,百度考虑使用多尺度多模型实现高精度检测。对于模型融合方法,百度采用具有不同骨架网络(Res2Net, ResNet200,ResNeXt101,SENet154等)的Cascade R-CNN检测器进行融合。对于每个模型,百度预测了NMS后的边界框。给每个模型一个从0到1的标量权重,所有权重总和为1,每个模型的盒子的可信度分数乘以其权重,最后合并来自所有模型的框并运行原始的NMS,除了百度添加来自不同模型的分数而不是只保留最高的一个。依次顺序使用NMS的修改合并了不同IoU阈值的预测框。最终,模型的AP50(tiny)达到了72.23%。



通过以上优化,百度团队在Tiny Object Detection比赛中获得冠军,领先第二名0.8%。与此同时,百度通过这样的优化方式,能对更多不同领域的微小目标检测需求提供更有力的帮助,为各行各业赋能。


百度持续在物体检测技术上深耕,近两年在国际检测大赛中,斩获5项国际比赛冠军;取得了业内最重磅的Coco Object Detection检测比赛冠军,代表了百度在目标检测领域的领先性;取得Ttiny Object Detection比赛的冠军,更表明了百度在小目标检测领域技术的突破。取得这些成绩的同时,百度产研并重,深度布局不同领域。2017年至今,百度AI工业已落地电子、汽车、钢铁、能源、橡胶、纺织等 10多个行业,超过 50 个细分垂类。


其实,百度在工业质检领域布局早,依托百度工业视觉智能平台打造解决方案,用户提及率高,其主要优势在于突出的AI能力、开放的产品能力和丰富的落地经验。通过整合百度工业视觉智能平台、昆仑芯片、飞桨框架和自研算法,百度实现了核心AI能力完全自主可控,并开发出灵活多变的深度适配模型,降低AI使用门槛,与合作伙伴共建软硬一体方案,用多种合作模式赋能终端用户。


百度在国际视觉领域赛事中拿下“双料冠军”,是AI技术的长期积累、全面发力,也是百度AI技术实力领跑全球的最好证明。目前,百度AI 技术的集大成者——百度大脑正在不断开放前沿顶尖的 AI 技术,已对外开放视觉、语音、自然语言处理等 260 多项领先的 AI 能力,服务超过210万名开发者,为广大开发者提供 AI 技术研发支持,赋能各行业。







您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存