毕业设计过程学习

本文探讨了目标检测技术的发展历程,从传统方法到深度学习的兴起,重点介绍了FasterR-CNN、MaskR-CNN和FPN等关键模型。文章详细解释了端到端检测、一阶段与二阶段的区别,以及这些模型如何改进小缺陷检测性能。
摘要由CSDN通过智能技术生成

传统的目标检测算法主要通过人工设计与纹理、颜色和形状相关的特征来进行目标区域特征的提取。随着深度学习和人工智能技术的飞速发展,目标检测技术也取得了很大的成就。早期基于深度学习的目标检测算法的研究方向仍然是将目标定位任务图像分类任务分离开来的,与传统目标检测方法思想一致,但是对特征的提取不再通过人工设计完成,而是使用神经网络提取目标区域的深层特征。

目标检测的发展历程可以分为两个阶段:(End-to-End)是指目标检测算法的整个处理流程,从输入图像到最终的检测结果(包括目标的定位和分类)是一个连续、自动化的过程,不需要手动干预或分离的步骤。

在目标检测算法早期通过神经网络完成对图像的 检测任务时,其算法框架主要包括两种:一种是将目标区域的定位和分类分离开来 的二阶段算法,另一种是将二者有机结合在一起的一阶段算法。前者在算法思想上与传统检测算法一致,只是特征提取不再采用人工设计的方法,而是通过神经网络提取图像的潜在特征,其它步骤则几乎完全一致。由于一阶段目标检测算法的框架 是端到端的,候选区域提取和目标分类是同时完成的,即目标定位任务和目标分类 任务在同一算法下同时完成。随着对目标检测算法研究的开展,锚框辅助完成检测 任务的机制被提出,因此,近年来的目标检测算法又可根据是否使用锚框辅助检测 模型分为两大类:Anchor-Based 和 Anchor-Free。

端到端:(End-to-End)是指目标检测算法的整个处理流程,从输入图像到最终的检测结果(包括目标的定位和分类)是一个连续、自动化的过程,不需要手动干预或分离的步骤。在这里,端到端特别强调的是一阶段(Single-Stage)目标检测算法的特点,其中目标定位分类任务在同一个算法框架内同时完成。

在传统的二阶段(Two-Stage)目标检测算法中,例如Faster R-CNN,过程分为两个主要阶段:首先是候选区域(region proposals)的生成,然后是对这些候选区域的分类和精确定位。这意味着定位和分类是分开进行的。

相比之下,一阶段目标检测算法,如YOLO(You Only Look Once)或SSD(Single Shot MultiBox Detector),将这两个任务合并为一个单一的、连续的过程。这些算法直接在输入图像上预测目标的类别和位置,无需单独的区域提议步骤,从而实现了端到端的处理。这样的方法通常更快,但可能在某些情况下牺牲了一些准确性。

因此,在这个上下文中,“端到端”的目标检测算法指的是从输入到输出整个过程的自动化和简化,使得整个检测流程更加高效和直接。

目标回归框

 
"目标回归框" 是计算机视觉中的一个概念,通常用于物体检测和物体定位任务。它也常被称为 "边界框"

目标回归框指的是在图像中标识出物体的位置和边界的矩形框。

回归是什么意思

"回归" 是一种任务类型,它与"分类" 任务形成对比。

分类任务:分类任务的目标是将输入数据分为不同的类别或标签。

回归任务:回归任务的目标是预测一个连续值的输出,通常是一个实数或浮点数。回归任务通常涉及到对输入数据进行建模,以便预测某种连续性的输出。例如,房价预测是一个回归任务,它的目标是基于房屋的特征(如面积、位置等)来预测房价,房价是一个连续值。

在目标回归框的上下文中,"回归" 意味着模型的任务是预测目标回归框的位置,通常使用坐标值来表示。模型会尝试从输入图像中学习物体的位置,以便生成目标回归框的坐标。这是一种回归任务,因为模型的输出是一组连续的数值,用于定位目标。

Mask-RCNN中ROI是什么意思

Mask R-CNN(Region-based Convolutional Neural Network)是一种用于目标检测和实例分割的深度学习模型。在Mask R-CNN中,ROI(Region of Interest,感兴趣区域)是一个核心概念,它表示图像中可能包含目标对象的区域。

ROI的提取是通过先前的网络结构,如Faster R-CNN,来实现的。Faster R-CNN首先使用一个深度卷积网络提取图像的特征图(feature map),然后通过区域建议网络(Region Proposal Network, RPN)在特征图上生成一系列的候选框(proposals),这些候选框即为可能包含目标的区域,也就是ROI。

在Mask R-CNN中,这些ROI接下来被用于两个并行的任务:一是通过一个称为ROI Align的过程,精确地从特征图中提取出与这些ROI相对应的特征,然后这些特征被用于分类(判断ROI中是什么对象)和边界框回归(确定对象的精确位置)。二是利用同样提取的特征,通过一个额外的分支生成对象的掩码(mask),这是一个像素级的分类,用于实现实例分割,即识别出图像中每个对象的精确轮廓。

简而言之,Mask R-CNN中的ROI是通过RPN生成的候选区域,这些区域被进一步处理以进行对象的检测、分类和像素级分割。

Align

  1. 图像对齐:在图像处理中,对齐通常指的是通过几何变换(如旋转、缩放、平移)调整两个或多个图像的位置,使得这些图像中的特定特征或对象在空间上对应起来。这在图像拼接、立体视觉、图像配准等应用中非常重要。

  2. 特征对齐:在机器学习和深度学习中,特别是在对象检测和实例分割任务中,对齐可能指的是将网络提取的特征与输入数据(如图像中的对象)的实际位置对齐。这涉及到在不同尺度或分辨率之间进行精确的映射,确保特征表示真实地反映了原始数据的内容。

Mask-RCNN中的FPN是什么意思

在 Mask R-CNN 中,FPN 代表特征金字塔网络(Feature Pyramid Network)。FPN 是一种用于多尺度物体检测的网络架构,它通过高效地利用深度卷积网络内在的多尺度、层级特征,有效提升了小物体检测的性能。FPN 在 Mask R-CNN 架构中扮演着重要角色,主要因为它能够同时处理不同尺度的图像特征,这对于实现高精度的目标检测和实例分割至关重要。

FPN 的关键思想在于构建一个自顶向下的架构,其中网络能够在不同的分辨率层面上提取特征。这是通过结合自底向上的特征提取(常规的卷积网络操作,从浅层到深层逐步提取特征)与自顶向下的路径和横向连接来实现的。具体来说,FPN 包括以下几个关键步骤:

  1. 自底向上的路径:这是一个标准的卷积网络,如 ResNet,用于从输入图像中逐层提取特征。随着网络层次的加深,特征图的空间分辨率会逐渐降低,而语义信息的丰富度则逐渐增加。

  2. 自顶向下的路径:这一路径利用了深层的高语义特征图,并通过上采样(例如,使用反卷积或最近邻插值)将这些特征图的分辨率逐步提高,以生成不同尺度的高语义特征图。

  3. 横向连接:自顶向下路径中的每个上采样特征图都会与自底向上路径中相应分辨率的特征图进行融合(通常是通过加法或者连接操作)。这样,每个尺度的特征图都包含了丰富的语义信息和较高的空间分辨率,适合检测不同大小的对象。

FPN 通过这种方式生成一系列具有不同空间分辨率的特征图,每个特征图都是多尺度检测的一个候选层,从而允许网络在单个前向传播中对不同尺度的目标进行有效检测和分割。这种架构不仅提高了小物体检测的性能,也增强了模型对于尺度变化的鲁棒性。

在Mask-RCNN中,FPN和Resnet是什么关系

在 Mask R-CNN 架构中,FPN(Feature Pyramid Network)和 ResNet(Residual Network)共同工作,为目标检测和实例分割任务提供强大的特征提取能力。这两者之间的关系可以概括为基础骨架网络(ResNet)和特征增强网络(FPN)的结合。下面详细解释这种结合如何工作:

  1. ResNet 作为骨架网络:ResNet 是一种深度残差网络,广泛用于各种计算机视觉任务中作为特征提取的基础网络。它的核心思想是通过残差学习解决了深度网络训练中的梯度消失和梯度爆炸问题,允许网络有更深的层次结构而不丧失训练的有效性。在 Mask R-CNN 中,ResNet 负责从输入图像中提取一系列不同层次的特征图,这些特征图随着网络深度的增加而空间分辨率降低、语义信息增丰富。

  2. FPN 作为特征增强网络:FPN 在 ResNet 提取的特征基础上进一步构建。它使用了一种自顶向下的方法和横向连接来融合不同层次的特征图,生成一组具有丰富语义信息且不同空间分辨率的特征图层。这样的特征金字塔适合于检测和分割不同尺度的对象,因为它同时包含了高层的语义信息和足够的空间分辨率细节。

  3. 两者的结合:在 Mask R-CNN 中,ResNet 作为基础的特征提取网络,提供了自底向上的特征流。然后,FPN 在此基础上增加自顶向下的特征路径和横向连接,以整合和增强来自 ResNet 的特征。通过这种结合,Mask R-CNN 能够有效地处理不同尺度的对象,同时保持高效的计算性能。

总之,FPN 和 ResNet 在 Mask R-CNN 中的结合实现了深度和广度上的特征提取,其中 ResNet 提供深层次的、丰富的特征表示,而 FPN 则通过构建特征金字塔来增强模型对于尺度变化的适应性和检测能力。这种结构使 Mask R-CNN 成为一个强大的工具,用于实现精确的目标检测和实例分割。

Faster-RCNN

mask-rcnn更有利于检测小缺陷

Mask RCNN[9]是 Faster RCNN[10]的扩展,它同时执行对象检 测和实例分割 .Mask RCNN 由于第二阶段送入的感兴趣区域对缺 陷进行了放大,它相对于单阶段检测模型可以更好的检测出小缺 陷"这句话是什么意思

这句话描述了Mask RCNN和Faster RCNN之间的区别和优势。具体解释如下:

  1. Mask RCNN是Faster RCNN的扩展:这意味着Mask RCNN是建立在Faster RCNN的基础上的,它不仅执行对象检测,还执行实例分割。实例分割是指将图像中的每个对象的边界和像素级别的分割(识别)出来,而对象检测只是识别图像中的对象位置和类别。

  2. Mask RCNN在第二阶段放大感兴趣区域:在Faster RCNN中,第一阶段生成感兴趣的区域(Region of Interest,ROI),然后第二阶段对这些ROI进行对象检测。Mask RCNN在第二阶段对这些ROI进行了进一步的处理,特别是对于缺陷(例如小缺陷)进行了放大处理。这意味着Mask RCNN相对于单阶段检测模型能够更好地检测和识别小缺陷,因为它对这些小缺陷进行了更加详细的处理和分割,而不仅仅是简单地定位它们。

总之,Mask RCNN相对于Faster RCNN在对象检测和实例分割方面具有更高的精度和能力,特别适用于小尺寸的缺陷识别。

Faster RCNN对小缺陷检测怎么样

Faster RCNN在一般情况下可以用于对象检测,包括小缺陷的检测,但其性能在小目标或小缺陷的检测方面可能相对较弱。这是因为Faster RCNN的设计主要集中在检测中等到大尺寸对象的性能上。

以下是Faster RCNN对小缺陷检测的一些考虑:

  1. 特征提取:Faster RCNN使用卷积神经网络来提取图像特征,这些特征通常用于检测中等到大尺寸对象。对于小缺陷,可能需要更高分辨率的特征图或其他专门设计的网络架构来提高检测性能。

  2. ROI生成:Faster RCNN中的感兴趣区域(ROI)生成器可能会错过小尺寸的缺陷或将它们归类为背景。这可以通过调整ROI生成参数或使用更复杂的ROI生成方法来改善。

  3. 数据增强:对于小缺陷的检测,数据增强技术可以帮助模型更好地学习缺陷的特征。这可以包括随机缩放、旋转、裁剪等方法,以扩充训练数据集。

  4. 检测阈值和后处理:调整检测阈值和后处理步骤可以改善小缺陷的检测性能。降低检测阈值可能会增加小缺陷的检测率,但可能也引入更多的误报。

虽然Faster RCNN可以用于小缺陷的检测,但为了获得更好的性能,通常需要对模型进行调整和优化,或者考虑使用更适合小目标检测的模型架构,如YOLO(You Only Look Once)或Single Shot MultiBox Detector(SSD)。

目标检测的发展

Faster rcnn/Mask rcnn/FPN_哔哩哔哩_bilibili

滑动窗口:

各种尺度,从上到下,从左到右

选择性搜索(SS):

图像中颜色相近的像素聚在一起,一般会产生更2000个ROI(Region of Interest)

边界框的回归

位置的参数(坐标+长宽):将原图中的建议框与预测出来的建议框的参数作比较,然后用卷积神经网络更新参数。

R-CNN

 通过ROI从原图中切出不同大小的原生图片,然后批量放入卷积神经网络去获取对应的的Feature map

生成ROI,切出图片后分别放入神经网络,再分类和回归

 

 Fast R-CNN

SS:产生两千个ROI,产生的ROI批量得喂到CNN网络,有许多重复计算,因为ROI可能有很多的重叠部分,让重叠部分去进行CNN的前向传播计算是非常耗时的。

先将图片喂到CNN中,得到Feature Map,

切出来的ROI大小是不一样的,所以会用到ROI Pooling的方法,将大小不一样的ROI记性Pooling后变成大小一样的Feature Map。为什么要大小一样,因为后面进行全连接层的分类和回归都需要固定大小的输入。

将原图的ROI映射到feature map中,

不是从原图中的ROI切出来,喂到CNN当中。而是从一张图片直接喂到CNN当中去SS,然后从Feature Map中去把他切出来

先生成Feature map,再根据原图上的ROI切割Feature Map。

Faster-RCNN

RPN

每个点都会对应9个anchor,9个预测,找到最匹配的哪个

稠密预测的网络

proposal是anchor过滤出来的,anchor的目的是穷举和便利,proposal是遍历后得分高很可能是物体的框

  单尺度的目标检测方法,注意这里只用到了7×7,会忽略到图片中较小的物体。

低层的特征分辨率高,但语义信息(分类能力)很弱。高层的特征分辨率低,但预习信息很强。

FPN

 上采样:特征图不断变大(双线性插值、反卷积)

从下到上

从上到下

横向连接

特征融合,得到多尺度特征

FPN特点:精准定位,对小物体预测肯定更好,而且有很强的语义特征,很抽象。

FPN是一个思想,而不是特定的网络。实际上是一个特征融合的方法

Faster R-CNN = FPN+RPN+Fast R-CNN

FPN 实际上就是输出多个Feature map

RPN

找出尽可能包含物体的ROI

右边那一块就是Fast R-CNN

不同尺度的ROI会从不同尺度的Feature map上去切。

Mask R-CNN

mask r-cnn实际上多出来的就是mask的分支 + ROI Align

 线性插值

在这条线段上,(x,y)离这两个断电谁更近,谁的y的系数就越大 

双线性插值

实际是就是进行多次的线性插值。

这里进行了3次线性插值

 ROI Pooling

 Input->Region proposal 实际上是做了一个整数化操作

Region proposal -> Pooling sections 也做了一次整数化操作,因为它分成的四份不均等

ROI Align

 ROI Align采用了双线性插值,避免了两次小数取整的操作

基础知识

采样

上采样:把抽象特征再次还原到原图大小,就是将图像变大

下采样:生成图像的缩略图,将图像变小

池化

对信息进行抽象的过程

平均池化

最大池化

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值