番外篇2.4:图像处理与深度学习:图像检测(R-CNN, Fast Rcnn, Faster Rcnn, R-FCN, SSD, Yolo)

本文介绍了图像检测的关键技术,包括R-CNN、Fast R-CNN、Faster R-CNN、R-FCN、SSD和YOLO系列。R-CNN通过候选区域生成和SPP-Net提升效率。Faster R-CNN引入RPN网络进一步加速。R-FCN优化了计算速度。YOLO系列以实时检测为目标,YOLOv2通过多尺度训练和改进的基础模型提高精度。YOLOv3引入多级预测解决小目标检测问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

所谓图像检测(目标检测 whatever)就是在一幅图像中,找到我们所希望检测到的东西(可能是多目标),并把它圈出来。

1.1 R-CNN

这个问题的思路有很多,先说最直接的一种:取到图像中所有的框,不同大小,不同位置(遍历),对每一个框进行识别,(对应一种目标)选择若干个极大值点(当然也要大于阈值)对应的框作为这种目标的大小和位置。
当然,一幅图像大大小小的框加起来过于多,靠暴力试错是没有前途的。所以要先得到一些可能是目标的候选区域,方法有比如Selective Search和Edge Boxes什么的,这里暂时不仔细总结。
然后我们就可以把得到的这些候选框框修正一下大小,直接加到设计好的神经网络架构中进行学习了。
这里写图片描述
不过这个也有一个问题,就是框和框之间会有很多重叠,对应的卷积计算我们就要重复做很多次,大大拖慢了我们的学习效率。那怎么办呢?为了解决这个问题,SPP-Net的概念就被使用了。

1.2 SPP-Net/Fast R-CNN

SPP-Net(空间金字塔池化)本来不是用在这里的,不过在这里使用的spp-net有一个很重要的核心思想,就是输入的时候我们输入整个图像,在最后得到整张图像的feature map。然后我们找到候选框框之后,可以直接在feature map上找到对应的patch,然后我们再用这个方法来把得到的patch中的数据池化成我们需要的统一大小再输出。我们可以很简单的猜测到,这个spp-net(我们成之为ROI pooling)直接放在最后一个卷积层和全连接层之间。(这就是Fast R-CNN)
这里写图片描述

1.3 RPN/Faster R-CNN

不过显然,找候选框也需要大量的计算,约几秒钟吧,完全没办法实现实时分类的要求。为了解决这个问题,RBG与何恺明设计了新的方法提取候选框框,这种方法就是RPN网络。
这种方法就是让候选框也通过CNN来得到,我们可以看到,候选框的选择也是需要把图像作为输入的。那干脆把图像输入到一个cnn网络中,只是输出的时候分别对两个全连接层(打比方,用卷积层也ok)分别输入,分别得到输出不就ok了吗!(Faster R-CNN)
这里写图片描述
候选区域生成网络(Region Proposal Network, RPN)工作方式如下:
先通过对输入图像的数层卷积得到一个特征图像,然后在特征图像上生成候选区域。它使用一个n*n(n=3)的滑动窗口,将局部的特征图像转换成一个低维特征, 预测k个的区域(cls层,2k个输出)是否为候选区域和对应的k个边

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值