• 神经网络(十七)RCNN及其变体的概述


    一、RCNN算法

            RCNN的实质是在图像输入CNN之前将其划分为数个特征区域。传统的方法有滑窗法Selective Search(选择搜索)

            Selective Search首先会通过sub-分割将图片分为多个区域;然后基于颜色、结构、尺寸、形状等信息将相似的区域聚合。一般会生成大于20k个region proposal(候选区域)

                                    ​​​​​​​        

             1.基本结构

                    标准RCNN算法由以下四个结构组成

    选择搜索生成候选区域,再由warp缩放为固定尺寸
    特征提取CNN提取4096维特征(一般使用AlexNet)
    类别分类使用SVM对4096维特征进行分类,得到2000x20的矩阵
    位置修正使用线性回归器修正分类区域,生成一个更精确的边界框

             2.优缺点

                    优点:①精度相对较高        ②将CNN引入目标检测

                    缺点:①训练步骤繁琐(需要同时训练CNN网络,SVM分类器和线性回归器)

                               ②候选区域会产生大量特征文件,占用资源,降低运算速度

                               ③CNN提取特征的速度较慢

                               ④最后使用SVM进行分类,无法实现end-to-end的训练

                               ⑤由于CNN中有全连接层,要求输入尺寸一致,需要对候选区域进行warp

    二、Fast RCNN

            相较于RCNN,Fast RCNN在以下几点取得了突破:

                    ①训练速度(9倍)和测试速度(200倍)大大提升

                    ②无需使用SVM分类器

            与RCNN相比,其结构主要有以下改变

                    ①使用softmax替代了SVM

                    ②引入了多任务函数边框回归(bbox regressor),除Selective Search阶段外实现了end-to-end

                    ③引入RoI Pooling(一层SPP),对输入图像没有了限制

            1.基本结构

                    Fast RCNN对整张图片仅需进行一次CNN,生成兴趣区域后再利用ROI池化对区域进行调整;相较于RCNN中需要对2k多候选区域都进行CNN计算快了很多倍。

    CNN使用CNN网络卷积后生成兴趣区域
    RoI池化确保这些兴趣区域尺寸一致
    完全连接神经网络

    进行分类(softmax),同时用线性回归层返回边框

             2.存在的不足

                    第一次卷积层在搜索兴趣区域时需要一个2秒左右的时间,速度较慢。

    三、Faster RCNN

            Faster RCNN使用Region Proposal网络(RPN)替代Fast RCNN中使用CNN进行兴趣区域检索的功能。RPN以图像特征映射(由卷积层生成作为输入,生成一系列object proposal,它们每一个都有对应的分数。

            1.基本结构

    卷积层生成图像的特征映射
    RPN网络生成object proposals及其分数
    RoI池化层修正object proposals为一致的尺寸
    全连接层进行分类(softmax),同时用线性回归层返回边框

             2.关于RPN网络

                    RPN在图像特征映射上使用一个滑动窗口,每个窗口均会生成不同形状、尺寸的k个anchor box

                    对于anchor box,PRN网络会预测其两点:

                            ①其就是目标物体的概率(小概率)

                            ②经过调整能更合适目标物体的边界框回归量

                    将这些边界框传入RoI,将每个proposal进行切割,使其都含有目标物体;最后,这些特征映射会传递到全连接层,对目标进行分类并预测边界框。

            3.存在的问题

                    网络并不是一次性浏览所有图像,而是关注图像的多个部分,所以会造成以下情况:

                            ①需要多个步骤才能提取到所有目标

                            ②由于可能出现多个嵌套,系统性能可能取决于前面步骤的表现水平。

  • 相关阅读:
    Docker-compose容器群集编排管理工具
    wsl2 更新报错问题解决记录
    反射型XSS靶场练习
    如何将 PDF 转换为 Word:前 5 个应用程序
    工作笔记记录
    网络安全(黑客)自学
    RabbitMq-RabbitMq简介与七种工作模式
    4种API性能恶化根因分析
    跨境电商开店咨询话术
    EBS利用虚拟列及hint 提示优化sql案例一则
  • 原文地址:https://blog.csdn.net/weixin_37878740/article/details/127426388