目标检测最新进展总结与展望

本文详细介绍了目标检测在计算机视觉中的重要性及其发展历程,特别是深度学习在目标检测领域的应用。文章阐述了One-Stage和Two-Stage目标检测算法的原理和区别,包括YOLO、SSD、CornerNet、R-CNN系列等代表性算法,讨论了区域选择、特征提取和分类等步骤,并探讨了不同算法在精度和速度上的平衡。最后,文章提到了目标检测领域的挑战和未来发展方向。
摘要由CSDN通过智能技术生成

其它机器学习、深度学习算法的全面系统讲解可以阅读《机器学习-原理、算法与应用》,清华大学出版社,雷明著,由SIGAI公众号作者倾力打造。

导言

目标检测是计算机视觉和数字图像处理的一个热门方向,广泛应用于机器人导航、智能视频监控、工业检测、航空航天等诸多领域,通过计算机视觉减少对人力资本的消耗,具有重要的现实意义。因此,目标检测也就成为了近年来理论和应用的研究热点,它是图像处理和计算机视觉学科的重要分支,也是智能监控系统的核心部分,同时目标检测也是泛身份识别领域的一个基础性的算法,对后续的人脸识别、步态识别、人群计数、实例分割等任务起着至关重要的作用。由于深度学习的广泛运用,目标检测算法得到了较为快速的发展,本文广泛调研国内外目标检测方法,主要介绍基于深度学习的两种目标检测算法思路,分别为One-Stage目标检测算法和Two-Stage目标检测算法。

 

1.      相关介绍

1.1    背景介绍

从 2006 年以来,在 Hinton、Bengio、Lecun 等人的引领下,大量深度神经网络的论文被发表,尤其是 2012 年,Hinton课题组首次参加 ImageNet图像识别比赛,其通过构建的 CNN 网络AlexNet[1]一举夺得冠军,从此神经网络开始受到广泛的关注。深度学习利用多层计算模型来学习抽象的数据表示,能够发现大数据中的复杂结构,目前,这项技术已成功地应用在包括计算机视觉领域在内的多种模式分类问题上。计算机视觉对于目标运动的分析可以大致分为三个层次:运动分割,目标检测;目标跟踪;动作识别,行为描述[2]。其中,目标检测既是计算机视觉领域要解决的基础任务之一,同时它也是视频监控技术的基本任务。由于视频中的目标具有不同姿态且经常出现遮挡、其运动具有不规则性,同时考虑到监控视频的景深、分辨率、天气、光照等条件和场景的多样性,而且目标检测算法的结果将直接影响后续的跟踪、动作识别和行为描述的效果。故即使在技术发展的今天,目标检测这一基本任务仍然是非常具有挑战性的课题,存在很大的提升潜力和空间。

1.2    什么是目标检测

图1: 任务对比图

 

目标检测即找出图像中所有感兴趣的物体,包含物体定位和物体分类两个子任务,同时确定物体的类别和位置。

 

1.3    传统算法概述

传统目标检测的方法一般分为三个阶段:首先在给定的图像上选择一些候选的区域,然 后对这些区域提取特征,最后使用训练的分类器进行分类。下面我们对这三个阶段分别进行介绍。

(1)区域选择:这一步是为了对目标的位置进行定位。由于目标可能出现在图像的任何位置,而且目标的大小、长宽比例也不确定,所以最初采用滑动窗口的策略对整幅图像进行遍历,而且需要设置不同的尺度,不同的长宽比。这种穷举的策略虽然包含了目标所有可能出现的位置,但是缺点也是显而易见的:时间复杂度太高,产生冗余窗口太多,这也严重影响后续特征提取和分类的速度和性能。

(2)特征提取:由于目标的形态多样性,光照变化多样性,背景多样性等因素使得设计一个鲁棒的特征并不是那么容易。然而提取特征的好坏直接影响到分类的准确性。其中,这个阶段常用的特征有 SIFT[3]、HOG[4]等。

(3)分类:根据第二步提取到的特征对目标进行分类,分类器主要有 SVM,AdaBoost 等。

 

2.      基于深度学习的目标检测算法

2.1    算法概述

目标检测任务可分为两个关键的子任务:目标分类和目标定位。目标分类任务负责判断输入图像或图像区域中是否有感兴趣类别的物体出现,输出一系列带分数的标签表明感兴趣类别的物体出现在输入图像或图像区域中的可能性。目标定位任务负责确定输入图像或图像区域中感兴趣类别的物体的位置和范围,输出物体的包围盒、或物体中心、或物体的闭合边界等,通常方形包围盒是最常用的选择。

目前主流的目标检测算法主要是基于深度学习模型,其可以分成两大类:

(1)One-Stage检测算法,其不需要Region Proposal阶段,直接产生物体的类别概率和位置坐标值,比较典型的算法如YOLO、SSD和CornerNet;

(2)Two-Stage目标检测算法,其将检测问题划分为两个阶段,首先产生候选区域(region proposals),然后对候选区域进行分类和位置精修,这类算法的典型代表是基于region proposal的R-CNN系列算法,如R-CNN,Fast R-CNN,Faster R-CNN等。

目标检测模型的主要性能指标是检测准确度和速度,对于准确度,目标检测要考虑物体的定位以及分类准确度。一般情况下,Two-Stage算法在准确度上有优势,而One-Stage算法在速度上有优势。不过,随着研究的发展,两类算法都在两个方面做改进,均能在准确度以及速度上取得较好的结果。

 

2.2    One-Stage目标检测算法

One-Stage目标检测算法可以在一个stage直接产生物体的类别概率和位置坐标值,相比于Two-Stage的目标检测算法不需要Region Proposal阶段,整体流程较为简单。如下图所示,在Testing的时候输入图片产生输出,解码生成对应检测框即可;在Training的时候需要将Ground Truth编码成CNN输出对应的格式以便计算对应损失loss。

  • 12
    点赞
  • 136
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值