使用Selective Search(选择性搜索)方法对一张图像生成约2000-3000个候选区域,基本思路以下:
(1)使用一种过度割手段,将图像分割成小区域
(2)查看现有小区域,合并可能性最高的两个区域,重复直到整张图像合并成一个区域位置。优先合并如下区域:github
使用深度网络提取特征以前,首先把候选区域归一化成同一尺寸227×227。
使用CNN模型进行训练,例如AlexNet,通常会略做简化。网络
对每一类目标,使用一个线性SVM二类分类器进行判别。
输入为深度网络(如上图的AlexNet)输出的4096维特征,输出是否属于此类。框架
目标检测的衡量标准是重叠面积:许多看似准确的检测结果,每每由于候选框不够准确,
重叠面积很小,故须要一个位置精修步骤,对于每个类,训练一个线性回归模型去断定这个框是否框得完美。学习
Fast R-CNN主要解决R-CNN的如下问题:测试
R-CNN的一张图像内候选框之间存在大量重叠,提取特征操做冗余。
而Fast R-CNN将整张图像归一化后直接送入深度网络,紧接着送入从这幅图像上提取出的候选区域。
这些候选区域的前几层特征不须要再重复计算。.net
R-CNN中独立的分类器和回归器须要大量特征做为训练样本。Fast R-CNN把类别判断和位置精调统一用深度网络实现,再也不须要额外存储。code
在Faster R-CNN中加入一个提取边缘的神经网络,也就说找候选框的工做也交给神经网络来作了。
这样,目标检测的四个基本步骤(候选区域生成,特征提取,分类,位置精修)终于被统一到一个深度网络框架以内。blog
Faster R-CNN能够简单地当作是“区域生成网络+Fast R-CNN”的模型,用区域生成网络(Region Proposal Network,简称RPN)来代替Fast R-CNN中的Selective Search(选择性搜索)方法。图片
RPN的工做步骤以下:
R-CNN、Fast R-CNN、Faster R-CNN一路走来,基于深度学习目标检测的流程变得愈来愈精简、精度愈来愈高、速度也愈来愈快。
基于region proposal(候选区域)的R-CNN系列目标检测方法是目标检测技术领域中的最主要分支之一。
print_r('点个赞吧'); var_dump('点个赞吧'); NSLog(@"点个赞吧!") System.out.println("点个赞吧!"); console.log("点个赞吧!"); print("点个赞吧!"); printf("点个赞吧!\n"); cout << "点个赞吧!" << endl; Console.WriteLine("点个赞吧!"); fmt.Println("点个赞吧!") Response.Write("点个赞吧"); alert(’点个赞吧’)