(完整版)目标检测综述

合集下载

机器视觉中的目标检测算法综述

机器视觉中的目标检测算法综述

机器视觉中的目标检测算法综述随着人工智能技术的迅速发展,机器视觉在各个领域中扮演着重要的角色。

目标检测是机器视觉中的核心问题之一,它是指通过计算机对图像或视频中的目标进行自动识别和定位。

目标检测广泛应用于安防监控、自动驾驶、人脸识别等领域。

本文将对目标检测算法进行综述,介绍常见的目标检测算法并分析其特点和应用。

一、基于传统图像处理的目标检测算法1. Haar特征与级联分类器Haar特征是一种基于图像灰度值计算得到的特征,它通过计算不同位置和大小的矩形区域的灰度和来描述图像的特征。

级联分类器结合了多个强分类器,并采用AdaBoost算法来提高分类器的准确性。

这种方法具有较高的检测精度和较快的速度,但对目标的旋转和尺度变化较为敏感。

2. HOG特征与支持向量机HOG(Histogram of Oriented Gradients)特征是一种基于图像梯度信息提取的特征,它可以有效地描述目标的外观。

支持向量机(SVM)是一种经典的机器学习算法,通过构造超平面来进行分类。

HOG特征与支持向量机的结合可以提高目标检测的准确性和鲁棒性。

二、基于深度学习的目标检测算法1. R-CNN系列算法R-CNN(Regions with Convolutional Neural Networks)算法是深度学习在目标检测领域的首次应用。

它通过候选区域的提取和CNN特征的计算来实现目标检测。

R-CNN系列算法包括Selective Search、Fast R-CNN和Faster R-CNN。

这些算法在准确性和鲁棒性方面取得了显著提升,但计算复杂度较高。

2. YOLO系列算法YOLO(You Only Look Once)算法是一种实时目标检测算法,它将目标检测问题看作一个回归问题,直接输出目标的位置和类别信息。

与R-CNN系列算法相比,YOLO算法具有更快的速度和更低的计算复杂度。

不过,YOLO算法在检测小目标和目标重叠时的表现较差。

三维目标检测综述

三维目标检测综述

三维目标检测综述三维目标检测是现代计算机视觉领域的热门研究方向之一,其主要目的是在三维场景中准确识别出不同种类的物体并确定它们的位置、形状和姿态。

在实际应用中,三维目标检测可以应用于自动驾驶、智能机器人、安保监控等众多领域中。

当前,三维目标检测的研究主要集中在两大类方法上。

一类是基于视觉图像数据,通过深度学习将其转化为点云数据,并在点云上进行处理;另一类是基于传感器采集的点云数据,直接在点云上进行处理。

下面我们将分别阐述这两种方式的研究进展。

基于视觉图像数据的三维目标检测方法基于视觉图像数据进行三维目标检测的方法主要分为两个阶段。

第一阶段是生成点云数据,第二阶段是在点云数据上进行目标检测。

下面我们将分别讨论这两个阶段的主要方法。

1. 生成点云数据的方法在生成点云数据的阶段,一般采用的主要方法是激光雷达和深度学习。

具体如下:(1)激光雷达:激光雷达是一种常用的获取三维点云数据的传感器,在三维目标检测中也有广泛的应用。

然而,由于激光雷达设备成本高昂,使用范围相对有限,因此研究者们也将目光转向了另外一种技术——深度学习。

(2)深度学习:深度学习是近年来计算机视觉领域中的热门技术,其所能解决的问题涉及分类、识别、检测、分割等多个方向。

在三维目标检测中,研究者们通过使用深度学习来生成点云数据,并在此基础上进行目标检测。

比如,PointNet++和PointRCNN就是基于深度学习的方法。

2. 目标检测的方法在点云数据上进行目标检测时,常用的方法有两种,分别是基于传统的局部特征描述子和使用深度学习的方法。

(1)传统方法:传统方法主要包括点特征提取、特征描述子、点匹配、模型匹配等环节。

此方法主要优点在于其速度较快,但容易出现误判。

例如,ROPS是一种常用的点特征描述子;SHOT,FPFH,NARF等是常用的特征描述子。

(2)深度学习方法:深度学习方法是当前目标检测领域中最受欢迎的方法之一。

在点云数据上进行目标检测时,目前已有多种基于深度学习的方法被提出。

《2024年特殊天气条件下的目标检测方法综述》范文

《2024年特殊天气条件下的目标检测方法综述》范文

《特殊天气条件下的目标检测方法综述》篇一一、引言随着现代科技的发展,目标检测技术在各种场景中得到了广泛的应用。

然而,在特殊天气条件下,如雾、霾、雨、雪等,目标检测的准确性和稳定性常常会受到挑战。

因此,研究特殊天气条件下的目标检测方法显得尤为重要。

本文将对特殊天气条件下的目标检测方法进行综述,以期为相关领域的研究和应用提供参考。

二、特殊天气条件对目标检测的影响特殊天气条件主要包括雾、霾、雨、雪等天气情况。

这些天气状况会对图像的采集和传输造成影响,从而影响目标检测的准确性和稳定性。

例如,雾天会导致图像对比度降低,目标特征模糊;雨天则可能造成图像模糊、噪点增多等问题。

因此,在特殊天气条件下,如何提高目标检测的准确性和稳定性成为了研究的重点。

三、特殊天气条件下的目标检测方法针对特殊天气条件下的目标检测问题,研究者们提出了多种方法。

1. 基于深度学习的目标检测方法深度学习技术在目标检测领域取得了显著的成果。

在特殊天气条件下,研究者们利用深度学习技术提取目标的特征信息,并通过训练模型提高目标检测的准确性和稳定性。

例如,可以通过使用改进的卷积神经网络(CNN)模型来提取目标的特征信息,从而提高在雾、霾等天气条件下的目标检测效果。

2. 基于图像增强的目标检测方法图像增强技术可以改善图像的质量,从而提高目标检测的准确性。

在特殊天气条件下,研究者们可以通过图像增强的方法来增强图像的对比度和清晰度,以便更好地进行目标检测。

例如,可以采用去雾算法和去噪算法来改善图像质量,从而减少特殊天气对目标检测的影响。

3. 基于多源信息融合的目标检测方法多源信息融合技术可以整合多种传感器数据来提高目标检测的准确性。

在特殊天气条件下,可以利用雷达、激光等传感器数据与视觉数据相结合,从而提高目标检测的准确性和稳定性。

例如,可以通过将雷达数据与视觉数据进行融合来提高在雨雪等恶劣天气条件下的目标检测效果。

四、不同方法的比较与评价不同方法在特殊天气条件下的目标检测中各有优劣。

基于深度学习的目标检测综述

基于深度学习的目标检测综述

基于深度学习的目标检测综述 目标检测是计算机视觉领域中的一个重要问题,其目的是在图像或视频中检测和定位物体。近年来,基于深度学习的目标检测算法已经取得了巨大的成功,成为目标检测领域的研究热点之一。本文将从目标检测的目的、算法分类、常用数据集、评价指标和未来发展等方面,对基于深度学习的目标检测进行综述。

一、目标检测的目的 目标检测是指在图像或视频中自动找出含有目标物体的区域,并给出物体类别和位置信息的一项任务。它可以应用于汽车驾驶辅助、机器人视觉导航、人机交互等领域。目标检测的难点在于自动定位和准确定义一个物体的边界框,并正确判断物体类别。

二、算法分类 基于深度学习的目标检测算法主要可以分为两类:两阶段检测和单阶段检测。两阶段检测算法先通过区域提取网络(RPN)生成候选框,再利用分类模型对候选框进行检测和定位,例如Faster R-CNN、R-FCN和Mask R-CNN等。单阶段检测算法则直接使用分类回归网络来预测物体类别和位置信息,例如YOLO、SSD和RetinaNet等。相比于两阶段方法,单阶段方法有着更快的速度和更高的性能。

三、常用数据集 目标检测算法的评估需要使用大量的数据集进行测试。常用的数据集包括PASCAL VOC、COCO、ImageNet和KITTI等。PASCAL VOC数据集包含20个物体类别,共有5,717张训练图像和5,823张测试图像。COCO数据集则包含80个物体类别,共有328,000张训练图像和41,000张验证图像。ImageNet数据集则是一个大规模的图像分类数据集,用于预训练网络。KITTI数据集则是用于自动驾驶场景的目标检测数据集。

四、评价指标 目标检测算法的性能评价指标通常包括准确率、召回率、F1值和平均精度(AP)等。准确率是指被正确检测的物体占总的检测次数的比例;召回率是指被正确检测的物体占总的实际存在的物体数的比例;F1值是准确率和召回率的调和平均数;平均精度则是指不同类别AP值的平均数。

目标检测文献综述

目标检测文献综述

目标检测文献综述目标检测是计算机视觉领域中的一项重要技术,其应用场景主要包括自动驾驶、安防监控、农业智能等。

目标检测的目的是在图像或视频中自动识别并定位感兴趣的目标,如人、车、动物等。

目前目标检测技术主要分为两大类:基于传统图像处理方法的目标检测和基于深度学习的目标检测。

传统图像处理方法主要采用特征提取、物体检测等算法,目前已经逐渐被基于深度学习的目标检测技术所替代。

深度学习技术主要采用卷积神经网络(CNN)和循环神经网络(RNN)等结构进行目标检测,其中以CNN为主。

近些年,在基于深度学习的目标检测技术中,YOLO系列(YouOnly Look Once)的方法备受关注。

YOLO系列的方法具有快速、高效、较优的检测性能优点,具体包括YOLOv1、YOLOv2和YOLOv3。

其中,YOLOv3在速度和准确度上都取得了显著的提升,引起了广泛的关注。

除了YOLO系列,还有一些其他深度学习方法也获得了不错的检测性能,如SSD(Single Shot MultiBox Detector)、Faster R-CNN、RetinaNet等。

这些方法不同于YOLO系列的方法,它们采用了更为复杂的网络结构和特征提取方式,主要是从提高检测性能方面入手。

目标检测技术的应用场景越来越广泛,不仅在自动驾驶、安防监控等领域中得到了广泛应用,还在农业智能中得到了广泛探索。

例如,在农业领域,目标检测可以应用于作物病虫害的检测、农田监测等方面,为农业生产提高生产效率和生产质量提供了可靠的技术支持。

然而,目前目标检测技术还存在一些问题和挑战。

例如,对于复杂场景下的遮挡等问题,目标检测算法仍有一定误检和漏检率。

此外,对于小目标检测和深度解析等问题,目前的算法还有待进一步完善和优化。

针对目标检测技术存在的问题和挑战,需要进一步研究和优化算法,以适应各种场景下的目标检测需求。

我们相信,在研究人员不断探索和努力下,目标检测技术一定会取得更加优秀的性能和更加广泛的应用。

损失函数 目标检测 综述

损失函数 目标检测 综述

损失函数目标检测综述引言在计算机视觉领域中,目标检测是一项重要的任务。

通过目标检测,计算机可以识别图像或视频中的特定对象,并将其位置和类别进行标记。

为了实现准确的目标检测,我们需要使用适当的损失函数来衡量预测结果与真实标签之间的差距。

本文将对目标检测中常用的损失函数进行综述和分析。

1. 损失函数的重要性损失函数是目标检测任务中的关键组成部分。

它用于衡量预测结果与真实标签之间的差异,从而指导模型的训练过程。

一个有效的损失函数应该能够在训练过程中引导模型逐渐优化,使其能够准确地预测目标的位置和类别。

2. 目标检测任务的挑战目标检测任务面临着多个挑战,包括目标尺寸变化、遮挡、光照变化等。

为了应对这些挑战,研究者们提出了许多不同的目标检测算法,并设计了相应的损失函数来优化这些算法。

3. 常用的损失函数3.1 IOU损失函数IOU(Intersection over Union)是目标检测中常用的评估指标之一。

它衡量了预测框与真实框之间的重叠程度。

IOU损失函数根据预测框和真实框的IOU值来衡量它们之间的差异。

常见的IOU损失函数有Smooth L1 Loss和GIoU Loss等。

3.2 分类损失函数在目标检测任务中,除了需要准确地定位目标的位置,还需要正确地分类目标的类别。

分类损失函数用于衡量预测类别与真实类别之间的差异。

常见的分类损失函数有交叉熵损失函数和Focal Loss等。

3.3 边界框回归损失函数边界框回归损失函数用于衡量预测框与真实框之间的位置差异。

它在目标检测任务中起到了调整预测框位置的作用。

常见的边界框回归损失函数有Smooth L1 Loss 和MSE Loss等。

3.4 多任务损失函数多任务损失函数用于同时优化目标检测任务中的多个子任务,如目标分类、边界框回归等。

它可以综合考虑不同任务之间的关系,提高模型的整体性能。

常见的多任务损失函数有SSD Loss和RetinaNet Loss等。

基于深度学习的目标检测综述

基于深度学习的目标检测综述

基于深度学习的目标检测综述1. 引言1.1 简介深度学习是一种模拟人类大脑神经网络结构的机器学习方法,其在近年来在图像识别、语音识别、自然语言处理等领域取得了巨大成功。

目标检测作为计算机视觉领域中的重要任务,旨在从图像或视频中准确地检测出图像中的目标物体,并给出其位置和类别信息。

随着深度学习算法的快速发展,基于深度学习的目标检测算法在准确性和速度上取得了显著的突破,被广泛应用于智能安防、自动驾驶、人脸识别等领域。

本综述将围绕深度学习在目标检测领域的应用展开讨论,首先介绍深度学习的发展历程,然后详细阐述目标检测的定义和方法的发展过程,接着深入探讨基于深度学习的目标检测算法的原理和特点。

将介绍目标检测中常用的性能评价指标,以及对未来研究的展望和总结。

通过本文的阐述,读者将能够全面了解基于深度学习的目标检测技术的最新进展和趋势,为相关研究和应用提供参考和借鉴。

1.2 研究背景目标检测是计算机视觉领域中一个重要的问题,其主要任务是从图像或视频中检测出感兴趣的物体并给出其位置和类别信息。

在过去的几年里,随着深度学习的发展,基于深度学习的目标检测在目标检测领域取得了巨大的成功。

深度学习技术以其优秀的特征提取能力和学习能力,在图像识别、语音识别、自然语言处理等领域取得了显著的成果,为目标检测算法的发展提供了更好的技术支持。

在目标检测领域,传统的方法通常需要手工设计特征或者采用复杂的流程来提取物体的特征,这些方法往往需要大量的人力和时间,并且效果不尽如人意。

而基于深度学习的目标检测算法则能够自动学习到更加抽象和高级的特征,从而提高检测的准确性和效率。

研究基于深度学习的目标检测算法具有极其重要的意义,不仅可以提高目标检测的性能,还可以推动计算机视觉技术在实际应用中的发展和应用。

1.3 研究意义目标检测是计算机视觉领域中的重要问题,其在图像识别、视频分析、智能交通等领域有着广泛的应用。

随着深度学习算法的发展,目标检测技术取得了巨大的进步,深度学习模型如Faster R-CNN、YOLO、SSD等在目标检测任务中取得了优越的性能。

《2024年特殊天气条件下的目标检测方法综述》范文

《2024年特殊天气条件下的目标检测方法综述》范文

《特殊天气条件下的目标检测方法综述》篇一一、引言随着计算机视觉技术的快速发展,目标检测技术在多种场景下都取得了显著的成果。

然而,在特殊天气条件下,如雾天、雨天、雪天等,目标的检测往往面临极大的挑战。

本文旨在全面综述特殊天气条件下的目标检测方法,分析其技术特点及适用性,以期为未来的研究提供有益的参考。

二、雾天目标检测在雾天环境中,由于大气中悬浮微粒的散射作用,图像的对比度和清晰度都会降低,从而增加了目标检测的难度。

针对这一问题,研究者们提出了多种方法。

其中,基于深度学习的去雾技术与目标检测技术相结合的方法成为研究热点。

通过深度学习模型对雾天图像进行去雾处理,提高图像质量,从而提升目标检测的准确率。

此外,还有一些方法通过构建雾天特定场景下的目标检测模型,提高对雾天环境的适应性。

三、雨天目标检测雨天环境下,雨水会在摄像头镜头上形成水珠或水雾,导致图像模糊、失真。

针对这一问题,研究者们提出了基于雨滴模型的目标检测方法。

这种方法通过构建雨滴模型,模拟雨天环境下的图像变化,从而对目标进行准确检测。

此外,还有一些方法通过改进目标检测算法的鲁棒性,使其在雨天环境下仍能保持良好的性能。

四、雪天目标检测雪天环境下,由于雪花的遮挡和反射作用,图像的对比度和亮度都会发生变化,给目标检测带来困难。

针对雪天环境,研究者们提出了基于颜色和纹理特征的目标检测方法。

这些方法通过提取目标的颜色和纹理特征,在雪天环境下仍能实现较为准确的目标准确率。

同时,还有一些方法通过改进算法的适应性,使其在雪天环境下具有更好的性能。

五、技术特点及适用性分析特殊天气条件下的目标检测方法具有以下技术特点:一是需要结合特殊天气环境的特点进行模型构建和算法优化;二是需要提高算法的鲁棒性,以适应不同天气环境下的变化;三是需要充分利用目标的颜色、纹理等特征信息进行准确检测。

在适用性方面,不同方法适用于不同的特殊天气环境和场景。

因此,在实际应用中,需要根据具体场景和需求选择合适的目标检测方法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、传统目标检测方法

如上图所示,传统目标检测的方法一般分为三个阶段:首先在给定的图像上选择一些候选的区域,然后对这些区域提取特征,最后使用训练的分类器进行分类。下面我们对这三个阶段分别进行介绍。 (1) 区域选择 这一步是为了对目标的位置进行定位。由于目标可能出现在图像的任何位置,而且目标的大小、长宽比例也不确定,所以最初采用滑动窗口的策略对整幅图像进行遍历,而且需要设置不同的尺度,不同的长宽比。这种穷举的策略虽然包含了目标所有可能出现的位置,但是缺点也是显而易见的:时间复杂度太高,产生冗余窗口太多,这也严重影响后续特征提取和分类的速度和性能。(实际上由于受到时间复杂度的问题,滑动窗口的长宽比一般都是固定的设置几个,所以对于长宽比浮动较大的多类别目标检测,即便是滑动窗口遍历也不能得到很好的区域) (2) 特征提取 由于目标的形态多样性,光照变化多样性,背景多样性等因素使得设计一个鲁棒的特征并不是那么容易。然而提取特征的好坏直接影响到分类的准确性。(这个阶段常用的特征有SIFT、HOG等) (3) 分类器 主要有SVM, Adaboost等。 总结:传统目标检测存在的两个主要问题: 一是基于滑动窗口的区域选择策略没有针对性,时间复杂度高,窗口冗余; 二是手工设计的特征对于多样性的变化并没有很好的鲁棒性。

二、基于Region Proposal的深度学习目标检测算法 对于传统目标检测任务存在的两个主要问题,我们该如何解决呢? 对于滑动窗口存在的问题,region proposal提供了很好的解决方案。region proposal(候选区域)是预先找出图中目标可能出现的位置。但由于region proposal利用了图像中的纹理、边缘、颜色等信息,可以保证在选取较少窗口(几千个甚至几百个)的情况下保持较高的召回率。这大大降低了后续操作的时间复杂度,并且获取的候选窗口要比滑动窗口的质量更高(滑动窗口固定长宽比)。比较常用的region proposal算法有selective Search和edge Boxes,如果想具体了解region proposal可以看一下PAMI2015的“What makes for effective detection proposals?” 有了候选区域,剩下的工作实际就是对候选区域进行图像分类的工作(特征提取+分类)。对于图像分类,不得不提的是2012年ImageNet大规模视觉识别挑战赛(ILSVRC)上,机器学习泰斗Geoffrey Hinton教授带领学生Krizhevsky使用卷积神经网络将ILSVRC分类任务的Top-5 error降低到了15.3%,而使用传统方法的第二名top-5 error高达 26.2%。此后,卷积神经网络占据了图像分类任务的绝对统治地位,微软最新的ResNet和谷歌的Inception V4模型的top-5 error降到了4%以内多,这已经超越人在这个特定任务上的能力。所以目标检测得到候选区域后使用CNN对其进行图像分类是一个不错的选择。 2014年,RBG(Ross B. Girshick)大神使用region proposal+CNN代替传统目标检测使用的滑动窗口+手工设计特征,设计了R-CNN框架,使得目标检测取得巨大突破,并开启了基于深度学习目标检测的热潮。

1. R-CNN (CVPR2014, TPAMI2015) (Region-based Convolution Networks for Accurate Object detection and Segmentation) 上面的框架图清晰的给出了R-CNN的目标检测流程: (1)输入测试图像 (2)利用selective search算法在图像中提取2000个左右的region proposal。 (3)将每个region proposal缩放(warp)成227x227的大小并输入到CNN,将CNN的fc7层的输出作为特征。 (4)将每个region proposal提取到的CNN特征输入到SVM进行分类。 上面的框架图是测试的流程图,要进行测试我们首先要训练好提取特征的CNN模型,以及用于分类的SVM:使用在ImageNet上预训练的模型(AlexNet/VGG16)进行微调得到用于特征提取的CNN模型,然后利用CNN模型对训练集提特征训练SVM。 对每个region proposal缩放到同一尺度是因为CNN全连接层输入需要保证维度固定。 上图少画了一个过程——对于SVM分好类的region proposal做边框回归(bounding-box regression),边框回归是对region proposal进行纠正的线性回归算法,为了让region proposal提取到的窗口跟目标真实窗口更吻合。因为region proposal提取到的窗口不可能跟人手工标记那么准,如果region proposal跟目标位置偏移较大,即便是分类正确了,但是由于IoU(region proposal与Ground Truth的窗口的交集比并集的比值)低于0.5,那么相当于目标还是没有检测到。 小结:R-CNN在PASCAL VOC2007上的检测结果从DPM HSC的34.3%直接提升到了66%(mAP)。如此大的提升使我们看到了region proposal+CNN的巨大优势。 但是R-CNN框架也存在着很多问题: (1) 训练分为多个阶段,步骤繁琐: 微调网络+训练SVM+训练边框回归器 (2) 训练耗时,占用磁盘空间大:5000张图像产生几百G的特征文件 (3) 速度慢: 使用GPU, VGG16模型处理一张图像需要47s。 针对速度慢的这个问题,SPP-NET给出了很好的解决方案。 2. SPP-NET (ECCV2014, TPAMI2015) (Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition)

先看一下R-CNN为什么检测速度这么慢,一张图都需要47s!仔细看下R-CNN框架发现,对图像提完region proposal(2000个左右)之后将每个proposal当成一张图像进行后续处理(CNN提特征+SVM分类),实际上对一张图像进行了2000次提特征和分类的过程! 有没有方法提速呢?好像是有的,这2000个region proposal不都是图像的一部分吗,那么我们完全可以对图像提一次卷积层特征,然后只需要将region proposal在原图的位置映射到卷积层特征图上,这样对于一张图像我们只需要提一次卷积层特征,然后将每个region proposal的卷积层特征输入到全连接层做后续操作。(对于CNN来说,大部分运算都耗在卷积操作上,这样做可以节省大量时间)。现在的问题是每个region proposal的尺度不一样,直接这样输入全连接层肯定是不行的,因为全连接层输入必须是固定的长度。SPP-NET恰好可以解决这个问题:

上图对应的就是SPP-NET的网络结构图,任意给一张图像输入到CNN,经过卷积操作我们可以得到卷积特征(比如VGG16最后的卷积层为conv5_3,共产生512张特征图)。图中的window是就是原图一个region proposal对应到特征图的区域,只需要将这些不同大小window的特征映射到同样的维度,将其作为全连接的输入,就能保证只对图像提取一次卷积层特征。SPP-NET使用了空间金字塔采样(spatial pyramid pooling):将每个window划分为4*4, 2*2, 1*1的块,然后每个块使用max-pooling下采样,这样对于每个window经过SPP层之后都得到了一个长度为(4*4+2*2+1)*512维度的特征向量,将这个作为全连接层的输入进行后续操作。 小结:使用SPP-NET相比于R-CNN可以大大加快目标检测的速度,但是依然存在着很多问题: (1) 训练分为多个阶段,步骤繁琐: 微调网络+训练SVM+训练训练边框回归器 (2) SPP-NET在微调网络的时候固定了卷积层,只对全连接层进行微调,而对于一个新的任务,有必要对卷积层也进行微调。(分类的模型提取的特征更注重高层语义,而目标检测任务除了语义信息还需要目标的位置信息) 针对这两个问题,RBG又提出Fast R-CNN, 一个精简而快速的目标检测框架。

3. Fast R-CNN(ICCV2015) 有了前边R-CNN和SPP-NET的介绍,我们直接看Fast R-CNN的框架图:

与R-CNN框架图对比,可以发现主要有两处不同:一是最后一个卷积层后加了一个ROI pooling layer,二是损失函数使用了多任务损失函数(multi-task loss),将边框回归直接加入到CNN网络中训练。 (1) ROI pooling layer实际上是SPP-NET的一个精简版,SPP-NET对每个proposal使用了不同大小的金字塔映射,而ROI pooling layer只需要下采样到一个7x7的特征图。对于VGG16网络conv5_3有512个特征图,这样所有region proposal对应了一个7*7*512维度的特征向量作为全连接层的输入。 (2) R-CNN训练过程分为了三个阶段,而Fast R-CNN直接使用softmax替代SVM分类,同时利用多任务损失函数边框回归也加入到了网络中,这样整个的训练过程是端到端的(除去region proposal提取阶段)。 (3) Fast R-CNN在网络微调的过程中,将部分卷积层也进行了微调,取得了更好的检测效果。 小结:Fast R-CNN融合了R-CNN和SPP-NET的精髓,并且引入多任务损失函数,使整个网络的训练和测试变得十分方便。在Pascal VOC2007训练集上训练,在VOC2007测试的结果为66.9%(mAP),如果使用VOC2007+2012训练集训练,在VOC2007上测试结果为70%(数据集的扩充能大幅提高目标检测性能)。使用VGG16每张图像总共需要3s左右。 缺点:region proposal的提取使用selective search,目标检测时间大多消耗在这上面(提region proposal 2~3s,而提特征分类只需0.32s),无法满足实时应用,而且并没有实现真正意义上的端到端训练测试(region proposal使用selective search先提取处来)。那么有没有可能直接使用CNN直接产生region proposal并对其分类?Faster R-CNN框架就是符合这样需要的目标检测框架。

相关文档
最新文档