大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
Fast R-CNN算法是作者Ross Girshick对R-CNN算法的一种改进。R-CNN虽然取得了不错的成绩,但是其缺点也很明显。Fast R-CNN同样使用VGG-16网络结构,与R-CNN相比训练时间快9倍,测试时间快213倍,准确率从62%提升至66%(再Pascal voc数据集上)。Fast R-CNN主要是解决R-CNN存在的问题:
- 测试训练速度慢,主要是提取候选区域的特征慢:R-CNN首先从测试图中提取2000个候选区域,然后将这2000个候选区域分别输入到预训练好的CNN中提取特征。由于候选区域有大量的重叠,这种提取特征的方法,就会重复的计算重叠区域的特征。在Fast-RCNN中,将整张图输入到CNN中提取特征,在邻接时再映射到每一个候选区域,这样只需要在末尾的少数层单独的处理每个候选框。
- 训练需要额外的空间保存提取到的特征信息:R-CNN中需要将提取到的特征保存下来,用于为每个类训练单独的SVM分类器和边框回归器。在Fast R-CNN中,将类别判断和边框回归统一的使用CNN实现,不需要再额外的存储特征。
Fast R-CNN算法步骤:
- 输入一张图像生成1K~2K个候选区域(使用Selective Search方法);
- 将图像输入网络得到相应的特征图,将Selective Search算法生成的候选框投影到特征图上获得相应的特征矩阵;
- 将每个特征矩阵通过ROI pooling层缩放为7×7大小的特征图,接着将特征图展平通过一系列全连接层得到预测结果。
关于Fast R-CNN的几个点:
- 一次性计算整张图像特征:R-CNN依次将候选框区域输入卷积神经网络得到特征;Fast R-CNN将整张图像输入网络,紧接着从特征图像上提取相应的候选区域,这些候选区域的特征不需要再重复计算。
- ROI 池化层
- 分类器和边界框回归器
- Multi-task loss: L ( p , u , t u , v ) = L c l s ( p , u ) + λ [ u ⩾ 1 ] L l o c ( t u , v ) L(p, u, t^{u}, v)=L_{cls}(p, u)+ \lambda[u\geqslant 1]L_{loc}(t^{u}, v) L(p,u,tu,v)=Lcls(p,u)+λ[u⩾1]Lloc(tu,v)
Fast R-CNN是对R-CNN的一种改进:
- 卷积不再是对每个候选区域进行,而是直接对整张图像进行,这样减少了很多重复计算;
- 用ROI pooling进行特征的尺寸变换,因为全连接层的输入要求尺寸大小一样,因此不能直接把候选区域作为输入;
- 将回归器放进网络一起训练,每个类别对应一个回归器,同时用softmax的全连接层代替原来的SVM分类器。
Fast R-CNN存在的问题:
- 依旧使用Selective Search算法提取候选区域,耗时较长;
- 无法满足实时应用,没有真正实现end-to-end训练测试;
- 利用了GPU,但是候选区域方法是在CPU上实现的。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/196164.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...