R-CNN、SPP-Net、Fast R-CNN…你都掌握了吗?一文总结目标检测必备经典模型(1)

简介: R-CNN、SPP-Net、Fast R-CNN…你都掌握了吗?一文总结目标检测必备经典模型

本专栏由机器之心SOTA!模型资源站出品,每周日于机器之心公众号持续更新。 本专栏将逐一盘点自然语言处理、计算机视觉等领域下的常见任务,并对在这些任务上取得过 SOTA 的经典模型逐一详解。前往 SOTA!模型资源站(sota.jiqizhixin.com)即可获取本文中包含的模型实现代码、预训练模型及 API 等资源。

本文将分 3 期进行连载,共介绍 16 目标检测任务上曾取得 SOTA 的经典模型。


  • 第 1 期:R-CNN、SPP-Net、Fast R-CNN、Faster R-CNN、OHEM
  • 第 2 期:R-FCN、Mask RCNN、YoLo、SSD、FPN、RetinaNet
  • 第 3 期:RRC detection、CornerNet、M2Det、FOCS、ObjectBox

您正在阅读的是其中的第 1 期。前往 SOTA!模型资源站(sota.jiqizhixin.com)即可获取本文中包含的模型实现代码、预训练模型及 API 等资源。


本期收录模型速览

模型 SOTA!模型资源站收录情况 模型来源论文
R-CNN

https://sota.jiqizhixin.com/project/r-cnn-2

收录实现数量:2

支持框架:MindSpore


Rich feature hierarchies for accurate object detection and semantic segmentation
SPP-Net

https://sota.jiqizhixin.com/project/sppnet

收录实现数量:3

支持框架:PyTorch,MindSpore等


Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition
Fast R-CNN

https://sota.jiqizhixin.com/project/fast-rcnn-2

收录实现数量:27

支持框架:PyTorch,TensorFlow等


Fast R-CNN
Faster R-CNN

https://sota.jiqizhixin.com/project/faster-r-cnn-2

收录实现数量:16

支持框架:PyTorch,TensorFlow等

Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks
OHEM

https://sota.jiqizhixin.com/project/ohem

收录实现数量:5

支持框架:PyTorch,TensorFlow

Training Region-based Object Detectors with Online Hard Example Mining

目标检测作为计算机视觉的基本问题之一,是许多其他计算机视觉任务的基础,如实例分割、图像字幕、对象跟踪等。简单来说,目标检测就是对图片中物体正确分类,同时找到物体的具体位置,具体是指识别图片中有哪些物体以及物体的位置(坐标位置)的技术。在互联网、大数据、人工智能等技术的发展浪潮下,目标检测展现出巨大的应用价值,受到工业界、学术界越来越多的关注。

目标检测的发展大致经历了两个历史时期:“ 传统的目标检测时期 ” ( 2014年以前 ) 和 “ 深度学习的目标检测时期 ” ( 2014年以后 )。本文重点回顾深度学习时代的经典模型。在深度学习时代,目标检测可以分为两类:“ two-stage detection ” 和 “ one-stage detection ”,前者将检测框定为一个 “ 从粗到细 ” 的过程,而后者将其定义为 “ 一步完成 ”。我们在介绍过程中,将分两类进行分析。两阶段模型(two-stage detection)因其对图片的两阶段处理得名,也称为基于区域(Region-based)的方法,R-CNN系列工作就是这一类型的代表。单阶段模型(one-stage detection)没有中间的区域检出过程,直接从图片获得预测结果,也被称为Region-free方法。

本文回顾目标检测中必备的TOP模型,包括one-stage模型和two-stage模型。

一、two-stage模型


1、 R-CNN


R-CNN是以深度神经网络为基础的物体检测模型 ,R-CNN在当时以优异的性能令世人瞩目,更重要的是,后续的SPPNet、Fast R-CNN、Faster R-CNN模型都是照着这个检测思路来工作的。R-CNN是这个系列的开山之作。

R-CNN将检测抽象为两个过程,首先,基于图片提出若干可能包含物体的区域(即图片的局部裁剪,被称为Region Proposal),文中使用的是Selective Search算法。其次,在提出的这些区域上运行当时表现最好的分类网络(文中使用AlexNet),得到每个区域内物体的类别。

如图1,R-CNN模型的具体实现步骤(以AlexNet网络为基准)如下:(1)确定图片中可能存在目标的侯选区域 (region proposal);(2)将候选区域调整为适应AlexNet网络的输入图像的大小227×227,通过CNN对候选区域提取特征向量,将2000个CNN特征组确定为AlexNet的最终输出,输出的大小为2000×4096;(3)利用2000×4096维特征训练SVM分类器,生成2000×20种类别矩阵;(4)分别对2000×20维矩阵进行非极大值抑制(Non-maximum suppression,NMS)剔除重叠的候选框,得到与目标物体最相关的一些建议框;(5)修正bbox,对bbox做回归微调。


图1. R-CNN目标检测系统概览

当前 SOTA!平台收录 R-CNN 共 2 个模型实现资源。


项目 SOTA!平台项目详情页
R-CNN 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/r-cnn-2
相关文章
|
4天前
|
数据可视化
R语言弹性网络Elastic Net正则化惩罚回归模型交叉验证可视化
R语言弹性网络Elastic Net正则化惩罚回归模型交叉验证可视化
|
4天前
|
机器学习/深度学习 存储 计算机视觉
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现-4
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现
|
4天前
|
机器学习/深度学习 算法 TensorFlow
TensorFlow 2keras开发深度学习模型实例:多层感知器(MLP),卷积神经网络(CNN)和递归神经网络(RNN)
TensorFlow 2keras开发深度学习模型实例:多层感知器(MLP),卷积神经网络(CNN)和递归神经网络(RNN)
|
4天前
|
机器学习/深度学习 算法 数据可视化
MATLAB基于深度学习U-net神经网络模型的能谱CT的基物质分解技术研究
MATLAB基于深度学习U-net神经网络模型的能谱CT的基物质分解技术研究
|
4天前
|
机器学习/深度学习 存储 算法
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现(下)
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现
|
4天前
|
机器学习/深度学习 并行计算 算法
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现(上)
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现
|
4天前
|
机器学习/深度学习 算法 数据可视化
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现-3
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现
|
4天前
|
并行计算
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现-2
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现
|
4天前
|
算法 数据可视化
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现-1
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现
|
4天前
|
机器学习/深度学习 人工智能 数据可视化
【视频】CNN(卷积神经网络)模型以及R语言实现回归数据分析
【视频】CNN(卷积神经网络)模型以及R语言实现回归数据分析

热门文章

最新文章

相关实验场景

更多