R-CNN理解

RCNN是一种基于CNN的目标检测算法,通过Region Proposals方法实现目标检测。算法包括候选区域选择、CNN特征提取、分类与边界回归三个阶段。RCNN虽然在目标检测方面表现出色,但也存在磁盘空间占用大、输入图像归一化导致信息丢失等问题。

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

RCNN(Regions with CNN features)是使用CNN方法解决图片中目标检测问题,借助CNN良好的特征提取和分类性能,通过RegionProposal方法实现目标检测问题的转化。

        算法可以分为四步:

        1)候选区域选择

        Region Proposals是CNNs使用的一类传统的区域提取方法,主要进行特定目标检测,比如人脸、行人可以看作不同宽高的滑动窗口,通过窗口滑动获得潜在的目标图像,RCNN采用的是SelectiveSearch,RCNN的候选区域选择2000个;

        根据Proposal提取的目标图像进行归一化(进行warp),作为CNN的标准输入。

        2)CNN特征提取

        标准CNN过程,根据输入进行卷积/池化等操作,得到固定维度的输出(224*224);

       并且RCNN通过使用权值共享和低维输入(相对于其他算法),因此速度极大提升

        3)分类与边界回归

        实际包含两个子步骤,一是对上一步的输出向量进行分类(需要根据特征训练分类器);二是通过边界回归(bounding-box regression) 得到精确的目标区域,由于实际目标会产生多个子区域,旨在对完成分类的前景目标进行精确的定位与合并,避免多个检出。

        RCNN存在三个明显的问题:

1)多个候选区域对应的图像需要预先提取,占用较大的磁盘空间;

2)针对传统CNN需要固定尺寸的输入图像,crop/warp(归一化)产生物体截断或拉伸,会导致输入CNN的信息丢失;

3)每一个ProposalRegion都需要进入CNN网络计算,上千个Region存在大量的范围重叠,重复的特征提取带来巨大的计算浪费。

4)训练步骤繁琐(预训练+微调+SVM+训练bbox)

5)训练、测试速度均比较慢



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值