RCNN算法思想简单讲解概述————(究极简单的讲述和理解)

       学习的过程中发现一个问题,如果不能大概的了解一下一个算法的思想直接去看他的论文,或者去看他算法的讲解就很痛苦,看不懂,学的效率也非常低,类似我之前发的RCNN论文精度的博客。RCNN目标检测算法内容详解(依托论文讲解)_小馨馨的小翟的博客-CSDN博客_rcnn论文下载

我想我们在学习一个算法之前,还是得整体大概的了解一下这个算法的流程,是如何工作的,然后再去完成细节的学习这个算法,这样效果应该会好一点。好了,废话少说,我们讲一个RCNN的大致思想和流程,方便大家去细致的学习RCNN,当然也是为大家细致的学习RCNN做个铺垫。

RCNN——Region-CNN(区域卷积神经网络)

       在讲述RCNN之前,我们要简单讲解一下目标检测的刚开始发展情况。最开始的只有图像分类算法,后来人们发现当一个图片上存在多个目标的时候,我们单纯对图片进行分类已经没有意义,我们更需要先对目标进行定位,即获得目标的位置,然后再进行分类(即识别目标的种类)。由此,人满开始了对目标检测算法的研究。

      刚开始设计的目标检测算法是滑动窗口法如下图:

滑动窗口从最上角到右下角进行移动,然后对每个窗口截取的图像打入到CNN里面进行分类,从而确定目标的位置。(这是最开始的目标检测算法)当然这是非常低效的,因为我们需要把图像经过滑动窗口截取成好多块,然后都打入CNN进行训练,非常浪费时间和算力。

特别是这一块地,上面啥目标都没有,我却还需要把他打入到CNN上进行训练,这显示是低效且无用的。 

     就在这个时候,R-CNN出现了,横空出世,提出了候选区域的思想,解决了无用区域被打入CNN进行训练导致算法太慢,算力浪费等问题。

     那么到底什么是候选区域呢? 简单来说就是我们的算法在进行滑动窗口处理图像之前,先对图像进行图像分割,获取可能出现目标的区域,然后再进行滑动窗口处理,这样可以尽可能的减少滑动窗口对无用的区域进行识别分类,大大的提高了算法的速度。

具体的候选区域选择,图像分割的流程如下:

我们在对象图像进行滑动窗口处理之前,先使用传统的图像处理方法对图像进行图像分割,这样我们就能确定图像中大块的颜色不一样的连通区域即是我们可能存在的目标对象。即,图像存在的蓝色的绿色的等等就是可能存在目标的区域,即所谓的候选区域,然后我们只对这些区域进行滑动窗口处理,这样就大大的提升了算法的效率!

 

 这样看来总结一下RCNN的流程:

                                    首先我们对图像进行传统图像分割,

                                    然后将图像中的连通区域作为我们滑动窗口的候选区域region

                                     对于这些候选区域region进行滑动窗口处理,然后打入CNN进行分类识别

                                     输出目标的坐标和种类,即达到目标检测的目的。

       

后续的对于R-CNN的优化算法,例如Fast R-CNN 或者 Raster R-CNN也大部分集中在对使用更好的图像分割算法而不是传统的图像算法,或者使用的卷积代替滑动窗口等等。但是总体R-CNN系列算法的流程是没有变的。虽然说对于R-CNN的一系列优化大大加快了R-CNN系列算法的速度,但是跟yolo系列比起来,它还是太慢了,太慢了!下期我们将会讲述yolo系列的算法,冲冲冲!下期肝yolo!

好了,我想我已经说的很明白了,有问题的可以在评论里指出来,大家一起学习!真理越辩越明!

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
RCNN(Region-based Convolutional Neural Networks)算法是一种用于目标检测深度学习算法。其思想是将输入图像分割成不同的区域,然后对每个区域进行卷积神经网络的特征提取,最后通过分类模块判断每个区域是否包含感兴趣的目标。 RCNN算法的主要步骤包括: 1. 输入图像经过Selective Search算法对图像进行区域提取,生成多个候选区域。 2. 将每个候选区域调整为同样的尺寸,以适应卷积神经网络的输入要求。 3. 使用预训练的卷积神经网络(如AlexNet或VGGNet)对每个候选区域进行前向计算,提取该区域的特征表示。 4. 将每个候选区域的特征表示输入到一个全连接层中进行分类,判断该区域是否包含目标物体,并输出预测结果。 5. 对于输出的预测结果,使用非极大值抑制(Non-Maximum Suppression,NMS)算法进行处理,去除重叠的检测结果。 RCNN算法的核心思想就是利用卷积神经网络来提取图像的特征表示,然后通过分类模块对每个候选区域进行分类预测。相比于传统的滑动窗口方法,RCNN算法只对候选区域进行处理,大大减少了计算量。 然而,RCNN算法存在的一个问题是速度较慢,因为需要对每个候选区域分别进行卷积神经网络的计算。为了提高速度,后续的改进算法如Fast R-CNN和Faster R-CNN应运而生。 总的来说,RCNN算法通过将图像分割为候选区域,并利用卷积神经网络提取区域特征,实现了目标检测的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小馨馨的小翟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值