目标检测的发展与现状

简介: 目标检测领域发展至今已有二十余载,从早期的传统方法到如今的深度学习方法,精度越来越高的同时速度也越来越快,这得益于深度学习等相关技术的不断发展。

     目标检测作为计算机视觉领域中最根本也是最具有挑战性的问题之一,近年来受到社会各界的广泛研究与探索。作为计算机视觉领域的一项重要任务,目标检测通常需要完成的是:提供数字图像中某类视觉对象(如人类、动物或汽车)的具体位置。此外,目标检测也是许多其他任务(例如:实例分割、图像描述生成、目标追踪等)的重要环节。

     从应用的角度来看,目标检测可以分为两个研究主题:一般场景下的目标检测和特定类别的目标检测。两者的区别是:前者类似于模拟人类的视觉和认知,主要意图是探索在统一框架下检测出不同类别物体的方法;而后者是指在特定的应用场景下的检测,如人脸检测、行人检测、车辆检测等任务。近年来,深度学习技术的飞速发展给目标检测带来了显著的突破。目标检测目前已经被广泛地应用于许多现实世界的场景中,如自动驾驶、机器人视觉、视频监控等。

     过去的 20 年,目标检测的发展历程大致经历了两个历史时期:传统的目标检测时期(2014 年以前)和基于深度学习的检测时期(2014 年以后)。传统的目标检测算法可以概括为以下几个步骤:首先,采取滑动窗口的方式遍历整张图像,产生一定数量的候选框;其次,提取候选框的特征;最后,利用支持向量机(SVM)等分类方法对提取到的特征进行分类,进而得到结果。由于当时缺乏有效的图像表示,人们只能设计复杂的特征表示,并通过各种加速技能来充分利用有限的计算资源。该时期主要的检测方法有:

(1)Viola Jones 检测器:Viola Jones 检测器由三个核心步骤组成,即 Haar特征和积分图、Adaboost 分类器以及级联分类器。

(2)HOG 检测器:HOG 检测器利用了方向梯度直方图(HOG)特征描述子,通过计算和统计局部区域的梯度方向直方图来构建特征。HOG 特征与 SVM 分类器算法的结合,在行人检测任务中应用广泛且效果显著。然而,HOG 检测器的缺点是始终需要保持检测窗口的大小不变,如果待检测目标的大小不一,那么 HOG检测器需要多次缩放输入图像。

(3)基于部件的可变形模型(DPM):DPM 所遵循的思想是“分而治之”,训练过程中学习的是如何将目标物体进行正确地分解,而推理时则是将不同的部件组合到一起。比如说,检测“汽车”问题可以分解为检测“车窗”、“车身”和“车轮”等。

     早期的目标检测任务提取特征时,主要的方式是人工提取,具有一定的局限性,手工特征的性能也趋于饱和。2012 年起,卷积神经网络的广泛应用使得目标检测也开启了新的征程。2014 年 R. Girshick 等人提出的 R-CNN算法横空出世,目标检测开始以前所未有的速度快速发展。深度学习时代,目标检测算法根据检测思想的不同通常可以分为两大类别:两阶段(two-stage)检测和一阶段(one-stage)检测。

     两阶段检测算法基于提议的候选框,是一个“由粗到细”的过程。首先产生区域候选框,其次提取每个候选框的特征,最后产生位置框并预测对应的类别,特点是精度高但速度慢。最早期的 R-CNN 算法利用“选择性搜索”方法产生候选框、卷积神经网络提取特征、支持向量机分类器进行分类和预测。虽然 R-CNN 算法具有一定的开创性,但生成的候选框大量重叠,存在计算冗余的问题。2014 年,He 等人提出 SPPNet算法,利用空间金字塔池化层对不同尺度的特征图进行池化并生成固定长度的特征表示,减少反复缩放图像对检测结果造成的影响。然而,SPPNet的缺点是:模型的训练仍然是分多步的;SPPNet 很难对 SPP 层之前的网络进行参数微调,导致效率降低。2015 年,R. Girshick 等人提出 Fast R-CNN算法,对 R-CNN 与 SPPNet 算法做出进一步改进,提出感兴趣区域池化层(ROI),使得检测的速度和精度大大提升。不久后,Ren 等人提出 Faster R-CNN算法,实现了端到端地训练,用 RPN 网络代替选择性搜索,大大减少了训练和测试的时间。

    一阶段检测算法基于边界框的回归,是一个“一步到位”的过程。一阶段检测网络在产生候选框的同时进行分类和边界框回归,特点是速度快但精度稍逊。2016年,Redmon 等人提出了 YOLOv1[9]算法,该算法将图像分割成 S×S 个网格,基于每个网格对应的包围框直接预测类别概率和回归位置信息。同年,Liu 等人提出SSD 算法,该算法借鉴 YOLO 算法的思想,并利用多尺度特征图进行预测。2017年,Redmon 等人提出 YOLOv2算法,用 DarkNet-19 对 YOLOv1 的网络结构进行了修改。2018 年,Redmon 等人提出 YOLOv3[11]算法,改进之处是:YOLOv3 借鉴 FPN 结构,进行了多尺度预测;借鉴 ResNet网络结构,将 DarkNet-19 改进为DarkNet-53。研究者们对算法不断地改进,使得检测的性能不断提高。

     此外,基于关键点(anchor-free)进行的目标检测是近期一个比较新颖的研究方向。主流的目标检测算法,比如两阶段的 R-CNN 算法和一阶段的 SSD 算法,基本上都是基于边界框(anchor-based)完成的。基于边界框的设计思想存在一些问题:许多目标的形状是不规则的,边界框可能会包含一些非目标的区域,对检测造成干扰;边界框的数量、大小和宽高比等超参数的设置需要根据数据集的不同而调整;边界框的庞大数量可能导致正、负样本的不平衡问题,导致检测的性能不佳。2018 年,Law  H 等人提出 CornerNet,将目标检测问题转换为关键点检测问题。CornerNet 使用单个卷积神经网络,预测目标的左上角和右下角两个关键点,进而得到预测框。CornerNet 关注的是目标的边缘,而对于目标来说,最具有辨识度的信息应该在目标的内部。因此,2019 年 Duan K 等人提出 CenterNet,增加了对中心点的检测,通过中心点的位置再回归目标的其他属性。

相关文章
|
机器学习/深度学习 人工智能 算法
目标检测的国内外研究现状
作为计算机领域的一个重要的研究成果,深度卷积神经网络已经广泛用于图像分类问题。随着图像分类的准确度提高,基于卷积神经网络的图像目标检测算法已逐渐成为当前的研究热点。
5792 0
|
12天前
|
机器学习/深度学习 数据可视化 算法
如何对某个研究方向的领域论文进行分析?如何快速了解某个研究方向的发展现状?如何利用VOSviewer分析研究领域的发展现状?
本文介绍了如何使用VOSviewer软件对特定研究方向的领域论文进行可视化分析,以ESN(Echo State Network)网络研究为例,展示了从安装软件、检索文献、导入数据到进行关键词分析、作者分析和引用量分析的完整流程,帮助用户快速了解并深入研究某个学术领域的发展趋势和现状。
22 0
如何对某个研究方向的领域论文进行分析?如何快速了解某个研究方向的发展现状?如何利用VOSviewer分析研究领域的发展现状?
|
14天前
|
数据采集 人工智能 监控
构建未来:人工智能在城市规划中的应用与挑战
【8月更文挑战第6天】随着人工智能技术的飞速发展,其在各行各业的应用日益深入。本文将探讨人工智能在城市规划领域的应用及其所面临的挑战,分析AI技术如何助力城市发展更加智能、高效和可持续,同时指出在实施过程中需要注意的问题和潜在风险。通过对未来趋势的展望,本文旨在为城市规划者和决策者提供参考,促进人工智能技术在城市建设中的健康发展。
|
24天前
|
机器学习/深度学习 自然语言处理 算法
AIGC技术的核心算法与发展趋势
【7月更文第27天】随着人工智能技术的迅速发展,AIGC技术已经逐渐成为内容创造领域的一个重要组成部分。这些技术不仅能够帮助人们提高工作效率,还能创造出以往难以想象的新颖内容。本文将重点介绍几种核心算法,并通过一个简单的代码示例来展示如何使用这些算法。
34 7
|
2月前
|
人工智能 自然语言处理 搜索推荐
【人工智能】第六部分:ChatGPT的进一步发展和研究方向
【人工智能】第六部分:ChatGPT的进一步发展和研究方向
28 3
|
3月前
|
机器学习/深度学习 存储 人工智能
构建未来:人工智能在持续学习系统中的进化基于人工智能的图像识别技术在自动驾驶中的应用
【5月更文挑战第27天】 在人工智能(AI)的浩瀚领域中,持续学习系统(Lifelong Learning Systems)代表着一种前沿探索,致力于模拟人类学习新任务的能力同时保留旧知识。本文深入探讨了这些系统的最新进展,包括它们如何通过深度学习、转移学习和元学习策略来优化知识存储与技能提炼。我们还将分析持续学习在现实世界应用中面临的挑战,并提出可能的解决方案,以期推动该领域的进一步发展。
|
3月前
|
机器学习/深度学习 人工智能 算法
XAI:探索AI决策透明化的前沿与展望
XAI:探索AI决策透明化的前沿与展望
|
3月前
|
人工智能 算法 安全
AI编程发展预测:未来趋势与潜在变革
AI编程发展预测:未来趋势与潜在变革
254 4
|
3月前
|
人工智能
AIGC的技术—经济特征
【2月更文挑战第13天】AIGC的技术—经济特征
67 1
AIGC的技术—经济特征
|
3月前
|
机器学习/深度学习 人工智能 供应链
人工智能在社会中的影响与未来展望
人工智能(AI)作为一项重要的技术革新,正在深刻地改变着我们的生活方式、工作方式以及社会结构。本文旨在探讨人工智能在社会中的影响,并展望其未来发展趋势。首先,我们回顾了人工智能的发展历程,从其起源到当前的发展阶段,概述了人工智能技术的基本原理和应用领域。其次,我们分析了人工智能对各个行业的影响,包括但不限于医疗保健、金融、制造业、交通运输和教育等领域。人工智能的广泛应用使得这些行业更加智能化、高效化,但也带来了一些挑战,如就业岗位的变化、隐私安全问题等。接着,我们讨论了人工智能在社会中的伦理和道德问题,包括人工智能算法的公平性、透明性和责任问题。最后,我们展望了人工智能的未来发展,包括强化学习
153 0