开放下载!从RCNN到SSD,这应该是最全的一份目标检测算法盘点
导读:从简单的图像分类到3D姿势识别,计算机视觉从来不缺乏有趣的问题和挑战。通过肉眼我们可以检测出一张宠物照中的猫和狗,可以识别出梵高作品《星夜》中的星星和月亮,那如何通过算法赋予机器“看”的智能,就是我们接下来要讲的。
本文首先会介绍目标检测的概念,然后介绍一种简化了的目标检测问题——定位 + 分类以及它存在的问题,最后由浅入深逐步进入到目标检测常用的模型及方法,如 Faster R-CNN、SSD 等。这个过程中 会涉及很多细节的概念和知识点,具体的技术讲解请下载下方电子书详阅。
书中精彩干货集合
1、目标检测常用的模型及方法
1.1R-CNN
学者们在这个方向做了很多研究,比较有名的是 selective search 方法,具体方法这里不做详细说明,感兴趣的读者可以看关于 selective search 的论文。大家只要知道这是一种从图片中选出潜在物体候选框(Regions of Interest,ROI)的方 法即可。有了获取 ROI 的方法,接下来就可以通过分类和合并的方法来获取最终的 目标检测结果。基于这个思路有了下面的 R-CNN 方法。
- 选出潜在目标候选框(ROI)
- 训练一个好的特征提取器
- 训练最终的分类器
- 为每个类训练一个回归模型,用来微调 ROI 与真实矩形框位置和大小的偏差
1.2Fast R-CNN
针对 R-CNN 的 3 个主要问题,我们思考一下是否有更好的解决方案。首先是速度,2000 个 ROI 的 CNN 特征提取占用了大量的时间,是否可以用更好的方法,比如共享卷积层来同时处理所有 2000 个 ROI ? 其次是 CNN 的特征不会因 SVM 和回归的调整而更新。
R-CNN 的操作流程比较复杂,能否有更好的方式使得训练过程成为端到端的? 接下来我们将介绍 Firshick 等人于 2015 年提出的 Fast R-CNN[2],它非常巧 妙地解决了 R-CNN 主要的几个问题。
1.3 Faster R-CNN
Faster R-CNN[3] 作为目标检测的经典方法在现今很多实战项目和比赛中频频出现。其实,Faster R-CNN 就是在 Fast R-CNN 的基础上构建一个小的网络,直接产生 region proposal 来代替通过其他方法(如 selective search)得到 ROI。这 个小型的网络被称为区域预测网络(Region Proposal Network,RPN)。Faster R-CNN 的训练流程其中的 RPN 是关键,其余流程基本和 Fast R-CNN一致。
接下来我们看下 Faster R-CNN 的训练过程:
- 使用 ImageNet 预训练好的模型训练一个 RPN 网络。
- 使用 ImageNet 预训练好的模型,以及第(1)步里产生的建议区域训练 Fast R-CNN 网络,得到物体实际类别以及微调的矩形框位置。
- 使用(2)中的网络初始化 RPN,固定前面卷积层,只有调整 RPN 层的参数。
- 固定前面的卷积层,只训练并调整 Fast R-CNN 的 FC 层。
1.4YOLO
由于在 R-CNN 的系列算法中都需要首先获取大量 proposal,但 proposal 之 间有很大的重叠,会带来很多重复的工作。YOLO[5] 一改基于 proposal 的预测思路, 将输入图片划分成 S*S 个小格子,在每个小格子中做预测,最终将结果合并。
接下来我们看一下 YOLO 学习的关键步骤:
YOLO 对于网络输入图片的尺寸有要求,首先需要将图片缩放到指定尺寸 (448448),再将图片划分成 SS 的小格。
每个小格里面做这几个预测:该小格是否包含物体、包含物体对应的矩形框 位置以及该小格对应 C 个类别的分数是多少。
1.5 SSD
SSD[4] 同时借鉴了 YOLO 网格的思想和 Faster R-CNN 的 anchor 机制,使 得 SSD 可以快速进行预测的同时又可以相对准确地获取目标的位置。接下来介绍SSD 的一些特点:
- 使用多尺度特征层进行检测。在 Faster Rcnn 的 RPN 中,anchor 是在主干 网络的最后一个特征层上生成的,而在 SSD 中,anchor 不仅仅在最后一个 特征层上产生,在几个高层特征层处同时也在产生 anchor。
- SSD 中所有特征层产生的 anchor 都将经过正负样本的筛选后直接进行分类分数以及 bbox 位置的学习。
2、目标检测的产业应用实践
前面具体讲解了目标检测的技术应用,技术如何和产业相结合,发挥出最大的价值,也是我们最为关注的。
在经济稳预期的形势下,国内制造业企业正在加快转型升级的步伐。阿里作为一家有情怀和使命感的科技公司,我们希望通过技术手段来帮助传统企业实现转型升级。
在光伏行业,质检环节长期面临专业度高、招工难、人力不足等问题。工业自动化水平较高的德国曾推出过组件 EL 质检技术,但只针对典型缺陷,仅能做到辅助人工(无法替代人工)。在国内,光伏企业在智能 AI 识别技术领域做了近 10 年的尝试,但多晶电池和组件的自动质检远未达到工业生产水平。
本文将重点介绍阿里推出的单晶、多晶组件 EL 质检功能,目前已在产线运行且精度稳定在 95% 以上。AI检测在工业视觉“降本增效”领域上已经有了非常明显的优势。阿里云未来将与更多的企业联合,书写智能制造新篇章。
本文作者:信雪蕊xxr
本文为云栖社区原创内容,未经允许不得转载。