R-CNN系列学习资料课件_第1页
R-CNN系列学习资料课件_第2页
R-CNN系列学习资料课件_第3页
R-CNN系列学习资料课件_第4页
R-CNN系列学习资料课件_第5页
已阅读5页,还剩91页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

R-CNN系列

R-CNN系列传统目标检测基于候选区域的目标检测回归方法的深度学习目标检测RCNNSPPNETfast-RCNNfaster-RCNNYOLO传统目标检测基于候选区域的目标检测回归方法的深度学习目标检测区域选择特征提取分类器分类滑动窗口策略手工设计特征SVM、adaboost等两个问题传统目标检测10-10-110-1111000-1-1-1区域选择特征提取分类器分类滑动窗口策略手工设计特征SVM、a基本概念RegionproposalsCNN:卷积神经网络R-CNN:RegionwithCNNfeatures将检测问题转换成为regionproposals的分类问题Selective

Search:选择性搜索Warp:图像Region变换Supervisedpre-training:有监督预训练也称迁移学习IOU:交并比IOU=(A∩B)/(A∪B)NMS:非极大值抑制DPM:使用判别训练的部件模型进行目标检测基本概念Regionproposalsselective

searchWarpPASCALVOC上的检测率从35.1%提升到53.7%基于候选区域的目标检测用SGD训练CNNImageNet1000(N+1)classificationlayer(N:目标类数目)CNN架构不变class-specificlinearSVMs给出每类概率IOU:交并比NMS:非极大值抑制selectivesearchPASCALVOC上的检测区域提名:通过SelectiveSearch从原始图片提取2000个左右区域候选框;区域归一化:把所有侯选框缩放成固定大小(227×227)Warp;通过CNN网络提取特征(在特征层的基础上添加两个全连接层);使用SVM结合NMS(非极大值抑制)获得区域边框(BBox),最后用DPM中类似的线性回归方法精修(Refine)边框位置。227x227区域提名:通过SelectiveSearch从原始图片提取SelectiveSearchforObjectRecognitionSelectiveSearch需要考虑的几个问题:1.适应不同尺度(CaptureAllScales):穷举搜索(ExhaustiveSelective)通过改变窗口大小来适应物体的不同尺度,选择搜索(SelectiveSearch)同样无法避免这个问题。算法采用了图像分割(ImageSegmentation)和层次算法(HierarchicalAlgorithm)有效地解决了这个问题。2.多样化(Diversification):单一的策略无法应对多种类别的图像。使用颜色(color)、纹理(texture)、大小(size)等多种策略对分割好的区域进行合并。3.效率(FasttoCompute)颜色(RGB、灰度、HSV)、纹理(texture)、大小、吻合情况的相似度SelectiveSearchforObjectRe图像分割图像分割(ImageSegmentation)的主要目的也就是将图像(image)分割成若干个特定的、具有独特性质的区域(region),然后从中提取出感兴趣的目标(object)。1.图像(image)的图(graph)表示;SpanningTree)。把图像中的每一个像素点看成一个顶点vi∈V(node或vertex),像素点之间的关系对(可以自己定义其具体关系,一般来说是指相邻关系)构成图的一条边ei∈E,这样就构建好了一个图G=(V,E)。2.最小生成树(Minimun)将图像表达成图之后,将每个节点(像素点)看成单一的区域,然后进行合并。使用最小生成树方法合并像素点,然后构成一个个区域。相似的区域在一个分支(Branch)上面(有一条最边连接),大大减少了图的边数。图像分割图像分割(ImageSegmentation)的主Objectproposal转换(Warp)将各个Region的大小变换到CNN的输入尺寸变换:Scale:(B)Isotropically各向同性地(C)anisotropically各向异性地Warp:

各向异性缩放

+16pixels无附加(p=0)Warpingwithcontextpadding(P=16)Warp变换向四周均匀扩充ScaleRegion的原始大小无上下文紧密区域Objectproposal转换(Warp)将各个Reg原文原始RegionThefirstmethod(“tightestsquarewithcontext”)encloseseachobjectproposalinsidethetightestsquareandthenscales(isotropically)theimagecontainedinthatsquaretotheCNNinputsize.Avariantonthismethod(“tightestsquarewithoutcontext”)excludestheimagecontentthatsurroundstheoriginalobjectproposal.Thesecondmethod(“warp”)anisotropicallyscaleseachobjectproposaltotheCNNinputsize.原文原始RegionSupervisedpre-training迁移学习对象分类:标注好的训练数据非常多;目标检测:标注数据很少,如何用少量的标注数据,训练高质量的模型迁移学习:

例如我们先对Imagenet数据集(ILSVRC2012的数据集)进行CNN的分类预训练(

pre-traing),然后在PASCAL数据集上微调(

fine-runing)。ILSVRC:ImageNetLargeScaleVisualRecognitionChallenge(ImageNet大规模图像识别挑战赛)PASCALVOCChallenge:PatternAnalysis,StaticalModelingandComputationalLearningVisualObjectClasses(模式分析,统计建模,计算学习

视觉物体分类挑战赛)检测

≈定位+分类Supervisedpre-training迁移学习对象分CNN训练及特征提取训练:1.预训练:训练集:ILSVRC2012;输出:1000维类别标号;学习率:0.01提取的特征为4096维,送入一个4096->1000的全连接(fc)层进行分类2.调优训练训练集:PASCALVOC2007;学习率:0.001

输入:227x227的正负样本(正:32,负:96;包括所有类别)

输出:21维(20类+背景);

同样使用上述网络,最后一层换成4096->21的全连接网络正负样本的选取:

IOU>0.5,标记为positive,否则标记为negativeSVM分类器输入:4096*N或者21*NCNN训练及特征提取训练:NIPS,2012,byA.Krizhevskyetal.

ImageNetclassificationwithdeepconvolutionalneuralnetworks.

网络只需要将最后的1000类的分类层换成21类的分类层(20个VOC中的类别和1个背景类),其他都不需要变。NIPS,2012,byA.Krizhevskyet训练SVM分类器训练特定类别的SVM分类器训练SVM的正负样本:作者同样是使用IoU阈值的方法,计算每一个regionproposal与标准框的IoU,这次的阈值为0.3(实验结果),大于这个阈值的作为正样本,否则为负样本。Hardnegativemining

一般来说训练一个SVM分类器,需要正负两个样本,训练集图片中作为正样本很少,但是随机产生用于训练的负样本可能远远大于正样本,这样训练出来的SVM效果并不好,所以利用Hardnegativemining方法,从负样本中选取出一些有代表性的负样本,使得分类器的训练结果更好。正:标注样本+IOU>0.5负:不包含正样本区域输入:CNN提取的区域特征输出:每个候选区域特征的概率输出训练SVM分类器训练特定类别的SVM分类器获取每个类别的Boundingbox(BBox)针对各个类别(N):CNN生成每个Regionproposal固定长度的特征向量SVMs分类器计算每个Region特征向量的Score每个Region(区域)的Score排序NMS:选取概率最大的区域,计算与其他区域的IOU;

如果IOU大于给定阈值(经验值0.3)丢弃该区域;

同样的过程依次遍历所有剩余的Region。用各个类指定的回归模型来细化框的位置获取每个类别的Boundingbox(BBox)针对各个类NMS:非极大值抑制例如:定位一个车辆,算法就找出了若干方框需要判别哪些矩形框是没用的。非极大值抑制:先假设有6个矩形框,根据分类器分类概率做排序,从小到大分别属于车辆的概率分别为A、B、C、D、E、F。(1)从最大概率矩形框F开始,分别判断A~E与F的重叠度IOU是否大于某个设定的阈值;(2)假设B、D与F的重叠度超过阈值,那么就扔掉B、D;并标记第一个矩形框F,是我们保留下来的。(3)从剩下的矩形框A、C、E中,选择概率最大的E,然后判断E与A、C的重叠度,重叠度大于一定的阈值,那么就扔掉;并标记E是我们保留下来的第二个矩形框。就这样一直重复,找到所有被保留下来的矩形框。NMS:非极大值抑制例如:定位一个车辆,算法就找出了若IOU交并比IOU表示了boundingbox与groundtruth的重叠度,如下图所示:矩形框A、B的重合度IOU计算公式:IOU=(A∩B)/(A∪B)

或IOU=SI/(SA+SB-SI)考察一个候选框和当前图像上所有标定框重叠面积最大的一个。如果重叠比例大于设定阈值,则认为此候选框为此标定的类别;否则认为此候选框为背景。IOU交并比IOU表示了boundingbox与gro位置精修根据最后输出的feature

进一步做了regression,采用的是之前在DPM检测中的用的Linearregressionmodel例如:左图自行车的左轮,如果我们只用rootfilter检测出来的区域,即红色区域,那么前轮会被切掉一部分,但是如果能综合partfilter检测出来的boundingbox就能得到更加确的boundingbox如右图。使用最小二乘(LeastSqures)线性回归模型。位置精修根据最后输出的feature

进一步做了regres回归器

对每一类目标,使用一个线性回归器进行精修。

正则项

λ=10000。

输入:CNN网络pool5层的4096维特征

输出:xy方向的缩放和平移W=[x,y,w,h]。训练样本:判定为本类的候选框中,和真值重叠面积大于0.6的候选框。其中*可以是:x,y,w,h,(x,y)是目标中心相对位置,w,h是变换后的宽度和高度缩放比例的对数值

回归器

R-CNN系列学习资料课件R-CNN的缺点虽然R-CNN在ILSVRC2013数据集上的mAP由Overfeat的24.3%提升到了31.4%,第一次有了质的改变。但R-CNN有很多缺点:重复计算:R-CNN虽然不再是穷举,但依然有两千个左右的候选框,这些候选框都需要进行CNN操作,计算量依然很大,其中有不少其实是重复计算;SVM模型:而且还是线性模型,在标注数据不缺的时候显然不是最好的选择;训练测试分为多步:区域提名、特征提取、分类、回归都是断开的训练的过程,中间数据还需要单独保存;训练的空间和时间代价很高GPU上处理一张图片需要13秒,CPU上则需要53秒。R-CNN的缺点虽然R-CNN在ILSVRC2013数据集SPP-Net:MotivationCroppingmaylosssomeinformationabouttheobject截取的区域未涵盖整个目标Warppingmaychangetheobject’sappearance缩放带来图像的扭曲SPP-Net:MotivationCroppingmaFClayerneedafixed-lengroundtruthhinputwhileconvlayercanbeadaptedtoarbitraryinputsize.事实上,CNN的卷积层不需要固定尺寸的图像,而全连接层是需要固定大小输入的提出了SPP层放到卷积层的后面SPPNet将任意大小的图像池化生成固定长度的图像表示SPP-Net:MotivationFClayerneedafixed-lengrounSPP-Net:TrainingforDetection(1)Conv5featuremapConv5featuremapConv5featuremapImagePyramidFeatMapPyramidsconvStep1.GenerateaimagepyramidandexacttheconvFeatMapofthewholeimage金字塔用了{6x63x32x21x1},共36+9+4+1=50个特征做出的主要改进在于SPP-net能够一次得到整个featuremap,大大减少了计算proposal的特征时候的运算开销。具体做法,将图片缩放到s∈{480,576,688,864,1200}的大小,尽量让region在s集合中对应的尺度接近224x224,然后选择对应的featuremap进行提取空间金字塔池化层{6x63x32x21x1}s∈{480,576,688,864,1200}224x2224x3224x6SPP-Net:TrainingforDetectioSPP-Net:TrainingforDetection(2)Step2,Foreachproposal,walkingtheimagepyramidandfindaprojectversionthathasanumberofpixelsclosestto224x224.

(Forscalinginvarianceintraining.)Step3,findthecorrespondingFeatMapinConv5anduseSPPlayertopoolittoafixsize.Step4,Whilegettingalltheproposals’feature,fine-tunetheFClayeronly.Step5,Traintheclass-specifiedSVMSPP-Net:TrainingforDetection(2)SPP-Net:TrainingforDetectioSPP-Net:TestingforDetectionAlmostthesameasR-CNN,exceptStep3.SPP-Net:TrainingforDetectionSPP-Net:TestingforDetectionSPP是BOW的扩展,将图像从精细空间划分到粗糙空间,之后将局部特征聚集。在CNN成为主流之前,SPP在检测和分类的应用比较广泛。SPP的优点:1)任意尺寸输入,固定大小输出;2)层多;3)可对任意尺度提取的特征进行池化。SPP是BOW的扩展,将图像从精细空间划分到粗糙空间,之后将Speed:64xfasterthanR-CNNusingonescale,and24xfasterusingfive-scaleparamid.mAP:+1.2mAPvsR-CNNSPP-Net速度提升Speed:64xfasterthanR-CNNu2.训练花费过大的硬盘开销和时间1.训练分多阶段,并不是端到端的训练过程FClayersConvlayersSVMregressorstore3.训练sppnet只微调全连阶层(检测除了语义信息还需要位置信息,多层pooling操作导致位置信息模糊)FastR-CNNSPP-Net:不足2.训练花费过大的硬盘开销和时间1.训练分多阶段,并不是FastR-CNNRossGirshick,FastR-CNN,ArxivtechreportJOINTTRAINING!!多任务损失函数(multi-taskloss)ROIpoolinglayer特征提取和分类放在一个网络之中,联合训练FastR-CNNRossGirshick,FastFastR-CNN:JointTrainingFrameworkJointthefeatureextractor,classifier,regressortogetherinaunifiedframework(RoI)候选区域:图像序号+几何位置FastR-CNNFastR-CNN:JointTrainingFraSPP-Netimagepyramids(multiscale)bruteforce(singlescale)直接将image设置为某种scaleConv5featuremapconvInpractice,singlescaleisgoodenough.(Themainreasonwhyitcanfasterx10thanSPP-Net)FastR-CNNSPP-Netbruteforce(singlesca边框回归:AsmoothL1losswhichislesssensitivetooutliersthanL2loss多任务损失函数:FastR-CNN第一项是分类损失函数,第二项是定位损失函数,k是类别索引,R个ROI的损失值取平均,k*是实际类别边框回归:多任务损失函数:FastR-CNN第一项是分类损FastR-CNN:Othertricks第34页|共25页FastR-CNN:Othertricks第34页|FastR-CNN技巧对全连接层参数矩阵做了一个SVD分解,mAP几乎不怎么降(0.3%),但速度提速30%数据增量:水平翻转将VOC2012的数据也作为拓展数据加入到finetune的数据中,结果VOC07的mAP从66.9到了70.0FastR-CNN技巧对全连接层参数矩阵做了一个SVD分网络末端同步训练的分类和位置调整,提升准确度使用多尺度的图像金字塔,性能几乎没有提高倍增训练数据,能够有2%-3%的准确度提升网络直接输出各类概率(softmax),比SVM分类器性能略好更多候选窗不能提升性能FastRCNN和RCNN相比,训练时间从84小时减少为9.5小时,测试时间从47秒减少为0.32秒。在PASCALVOC2007上的准确率相差无几,约在66%-67%之间FastR-CNN结论网络末端同步训练的分类和位置调整,提升准确度FastRC1.Region

proposal耗时(提regionproposal2~3s,而提特征分类只需0.32s),大部分时间用来提Regionproposal2.伪端到端训练(regionproposal使用selectivesearch先提取处来,占用磁盘存储)Faster-RCNN卷积网络直接产生候选区域RPN本质为滑动窗口FastR-CNN不足1.Regionproposal耗时(提regionpR-CNN系列学习资料课件K个建议框是目标/非目标的估计概率即k个box的坐标编码anchor:每个anchor以当前滑动窗口中心为中心,并对应一种尺度和长宽比例如:3个尺度和三个长宽比对于每个位置就有k=9个anchor平移不变性128x128、256x256、512x5121:2、1:1、2:1K个建议框是目标/非目标的估计概率即k个box的坐标编码an每个卷积特征映射大约2000个anchor为每个anchor分配一个二进制标签(是/否目标)1)任意与groundtruth有大于0.7的IoU交叠的anchor赋值为12)选取groundtruth的IoU最大的anchor赋值为13)分配负标签给与所有groundtruth包围盒的IoU比率都低于0.3的anchor一个groundtruth包围盒可能分配正标签给多个anchorFasterR-CNN每个卷积特征映射大约2000个anchor为每个anchor第41页|共25页FasterR-CNN对一个图像的损失函数:其中:i是一个mini-batch中anchor的索引;

Pi是anchori是目标的预测概率;groundtruth标签Pi*就是1,如果anchor为负,Pi*就是0;

ti是一个向量,表示预测的包围盒的4个参数化坐标;

ti*是与正anchor对应的groundtruth的坐标向量。

Ncls:mini-batch的大小(256)Nreg:anchor位置的数量(大约2400)

λ=10分类损失函数:位置损失函数:其中R=意味着只有正anchor(Pi*=1)才有回归损失平衡权重λ归一化第41页|共25页FasterR-CNN对一个图像的损1Imagenet上预训练模型初始化网络参数,微调RPN网络2使用1中网络提取候选区域训练fast-RCNN3用2的fast—RCNN重新初始化RPN,固定卷积层微调4固定2中fast-RCNN卷积层,用3中RPN提取候选微调缺点:1.无法达到实时2.预先获取候选区域,在对每个proposal分类计算量比较大FasterR-CNN简单网络目标检测速度达到17fps,在PASCALVOC上准确率为59.9%;复杂网络达到5fps,准确率78.8%1Imagenet上预训练模型初始化网络参数,微调RPN网络

(1)给个一个输入图像,首先将图像划分成SxS的网格

(2)对于每个网格,我们都预测B个边框(包括每个边框是目标的置信度以及每个边框区域在多个类别上的概率)

(3)根据上一步可以预测出SxSxB个目标窗口,然后根据阈值去除可能性比较低的目标窗口,最后NMS去除冗余窗口即可。YOLO的核心思想:

利用整张图作为网络的输入,直接在输出层回归boundingbox的位置和boundingbox所属的类别。每个boundingbox要预测(x,y,w,h)和confidence共5个值每个网格还要预测一个类别信息,记为C类基于回归YOLO输出就是SxSx(5*B+C)的一个tensor

(1)给个一个输入图像,首先将图像划分成SxS的网格YOYOLO在PASCALVOC中,图像输入为448x448,取S=7,B=2,一共有20个类别(C=20)。则输出就是7x7x(5*2+20)=7x7x30的一个tensor每个grid有30维,这30维中,8维是回归box的坐标,2维是box的confidence,还有20维是类别,其中坐标的x,y用对应网格的offset归一化到0-1之间,w,h用图像的width和height归一化到0-1之间。第44页|共25页YOLO在PASCALVOC中,图像输入为448x448,YOLO可以每秒处理45张图像每个网络预测目标窗口时使用的是全图信息只使用7*7的网格回归会使得目标不能非常精准的定位,检测精度并不是很高增强版本GPU中能跑45fps,简化版本155fpsYOLO可以每秒处理45张图像每个网络预测目标窗口时使用的是只有当某个网格中有object的时候才对classificationerror进行惩罚。只有当某个boxpredictor对某个groundtruthbox负责的时候,才会对box的coordinateerror进行惩罚,而对哪个groundtruthbox负责就看其预测值和groundtruthbox的IoU是不是在那个cell的所有box中最大。只有当某个网格中有object的时候才对classificaYOLO对相互靠的很近的物体,还有很小的群体检测效果不好,这是因为一个网格中只预测了两个框,并且只属于一类。对测试图像中,同一类物体出现的新的不常见的长宽比和其他情况是。泛化能力偏弱。由于损失函数的问题,定位误差是影响检测效果的主要原因。尤其是大小物体的处理上,还有待加强。YOLO评价YOLO对相互靠的很近的物体,还有很小的群体检测效果不好,Thanks!Thanks!

R-CNN系列

R-CNN系列传统目标检测基于候选区域的目标检测回归方法的深度学习目标检测RCNNSPPNETfast-RCNNfaster-RCNNYOLO传统目标检测基于候选区域的目标检测回归方法的深度学习目标检测区域选择特征提取分类器分类滑动窗口策略手工设计特征SVM、adaboost等两个问题传统目标检测10-10-110-1111000-1-1-1区域选择特征提取分类器分类滑动窗口策略手工设计特征SVM、a基本概念RegionproposalsCNN:卷积神经网络R-CNN:RegionwithCNNfeatures将检测问题转换成为regionproposals的分类问题Selective

Search:选择性搜索Warp:图像Region变换Supervisedpre-training:有监督预训练也称迁移学习IOU:交并比IOU=(A∩B)/(A∪B)NMS:非极大值抑制DPM:使用判别训练的部件模型进行目标检测基本概念Regionproposalsselective

searchWarpPASCALVOC上的检测率从35.1%提升到53.7%基于候选区域的目标检测用SGD训练CNNImageNet1000(N+1)classificationlayer(N:目标类数目)CNN架构不变class-specificlinearSVMs给出每类概率IOU:交并比NMS:非极大值抑制selectivesearchPASCALVOC上的检测区域提名:通过SelectiveSearch从原始图片提取2000个左右区域候选框;区域归一化:把所有侯选框缩放成固定大小(227×227)Warp;通过CNN网络提取特征(在特征层的基础上添加两个全连接层);使用SVM结合NMS(非极大值抑制)获得区域边框(BBox),最后用DPM中类似的线性回归方法精修(Refine)边框位置。227x227区域提名:通过SelectiveSearch从原始图片提取SelectiveSearchforObjectRecognitionSelectiveSearch需要考虑的几个问题:1.适应不同尺度(CaptureAllScales):穷举搜索(ExhaustiveSelective)通过改变窗口大小来适应物体的不同尺度,选择搜索(SelectiveSearch)同样无法避免这个问题。算法采用了图像分割(ImageSegmentation)和层次算法(HierarchicalAlgorithm)有效地解决了这个问题。2.多样化(Diversification):单一的策略无法应对多种类别的图像。使用颜色(color)、纹理(texture)、大小(size)等多种策略对分割好的区域进行合并。3.效率(FasttoCompute)颜色(RGB、灰度、HSV)、纹理(texture)、大小、吻合情况的相似度SelectiveSearchforObjectRe图像分割图像分割(ImageSegmentation)的主要目的也就是将图像(image)分割成若干个特定的、具有独特性质的区域(region),然后从中提取出感兴趣的目标(object)。1.图像(image)的图(graph)表示;SpanningTree)。把图像中的每一个像素点看成一个顶点vi∈V(node或vertex),像素点之间的关系对(可以自己定义其具体关系,一般来说是指相邻关系)构成图的一条边ei∈E,这样就构建好了一个图G=(V,E)。2.最小生成树(Minimun)将图像表达成图之后,将每个节点(像素点)看成单一的区域,然后进行合并。使用最小生成树方法合并像素点,然后构成一个个区域。相似的区域在一个分支(Branch)上面(有一条最边连接),大大减少了图的边数。图像分割图像分割(ImageSegmentation)的主Objectproposal转换(Warp)将各个Region的大小变换到CNN的输入尺寸变换:Scale:(B)Isotropically各向同性地(C)anisotropically各向异性地Warp:

各向异性缩放

+16pixels无附加(p=0)Warpingwithcontextpadding(P=16)Warp变换向四周均匀扩充ScaleRegion的原始大小无上下文紧密区域Objectproposal转换(Warp)将各个Reg原文原始RegionThefirstmethod(“tightestsquarewithcontext”)encloseseachobjectproposalinsidethetightestsquareandthenscales(isotropically)theimagecontainedinthatsquaretotheCNNinputsize.Avariantonthismethod(“tightestsquarewithoutcontext”)excludestheimagecontentthatsurroundstheoriginalobjectproposal.Thesecondmethod(“warp”)anisotropicallyscaleseachobjectproposaltotheCNNinputsize.原文原始RegionSupervisedpre-training迁移学习对象分类:标注好的训练数据非常多;目标检测:标注数据很少,如何用少量的标注数据,训练高质量的模型迁移学习:

例如我们先对Imagenet数据集(ILSVRC2012的数据集)进行CNN的分类预训练(

pre-traing),然后在PASCAL数据集上微调(

fine-runing)。ILSVRC:ImageNetLargeScaleVisualRecognitionChallenge(ImageNet大规模图像识别挑战赛)PASCALVOCChallenge:PatternAnalysis,StaticalModelingandComputationalLearningVisualObjectClasses(模式分析,统计建模,计算学习

视觉物体分类挑战赛)检测

≈定位+分类Supervisedpre-training迁移学习对象分CNN训练及特征提取训练:1.预训练:训练集:ILSVRC2012;输出:1000维类别标号;学习率:0.01提取的特征为4096维,送入一个4096->1000的全连接(fc)层进行分类2.调优训练训练集:PASCALVOC2007;学习率:0.001

输入:227x227的正负样本(正:32,负:96;包括所有类别)

输出:21维(20类+背景);

同样使用上述网络,最后一层换成4096->21的全连接网络正负样本的选取:

IOU>0.5,标记为positive,否则标记为negativeSVM分类器输入:4096*N或者21*NCNN训练及特征提取训练:NIPS,2012,byA.Krizhevskyetal.

ImageNetclassificationwithdeepconvolutionalneuralnetworks.

网络只需要将最后的1000类的分类层换成21类的分类层(20个VOC中的类别和1个背景类),其他都不需要变。NIPS,2012,byA.Krizhevskyet训练SVM分类器训练特定类别的SVM分类器训练SVM的正负样本:作者同样是使用IoU阈值的方法,计算每一个regionproposal与标准框的IoU,这次的阈值为0.3(实验结果),大于这个阈值的作为正样本,否则为负样本。Hardnegativemining

一般来说训练一个SVM分类器,需要正负两个样本,训练集图片中作为正样本很少,但是随机产生用于训练的负样本可能远远大于正样本,这样训练出来的SVM效果并不好,所以利用Hardnegativemining方法,从负样本中选取出一些有代表性的负样本,使得分类器的训练结果更好。正:标注样本+IOU>0.5负:不包含正样本区域输入:CNN提取的区域特征输出:每个候选区域特征的概率输出训练SVM分类器训练特定类别的SVM分类器获取每个类别的Boundingbox(BBox)针对各个类别(N):CNN生成每个Regionproposal固定长度的特征向量SVMs分类器计算每个Region特征向量的Score每个Region(区域)的Score排序NMS:选取概率最大的区域,计算与其他区域的IOU;

如果IOU大于给定阈值(经验值0.3)丢弃该区域;

同样的过程依次遍历所有剩余的Region。用各个类指定的回归模型来细化框的位置获取每个类别的Boundingbox(BBox)针对各个类NMS:非极大值抑制例如:定位一个车辆,算法就找出了若干方框需要判别哪些矩形框是没用的。非极大值抑制:先假设有6个矩形框,根据分类器分类概率做排序,从小到大分别属于车辆的概率分别为A、B、C、D、E、F。(1)从最大概率矩形框F开始,分别判断A~E与F的重叠度IOU是否大于某个设定的阈值;(2)假设B、D与F的重叠度超过阈值,那么就扔掉B、D;并标记第一个矩形框F,是我们保留下来的。(3)从剩下的矩形框A、C、E中,选择概率最大的E,然后判断E与A、C的重叠度,重叠度大于一定的阈值,那么就扔掉;并标记E是我们保留下来的第二个矩形框。就这样一直重复,找到所有被保留下来的矩形框。NMS:非极大值抑制例如:定位一个车辆,算法就找出了若IOU交并比IOU表示了boundingbox与groundtruth的重叠度,如下图所示:矩形框A、B的重合度IOU计算公式:IOU=(A∩B)/(A∪B)

或IOU=SI/(SA+SB-SI)考察一个候选框和当前图像上所有标定框重叠面积最大的一个。如果重叠比例大于设定阈值,则认为此候选框为此标定的类别;否则认为此候选框为背景。IOU交并比IOU表示了boundingbox与gro位置精修根据最后输出的feature

进一步做了regression,采用的是之前在DPM检测中的用的Linearregressionmodel例如:左图自行车的左轮,如果我们只用rootfilter检测出来的区域,即红色区域,那么前轮会被切掉一部分,但是如果能综合partfilter检测出来的boundingbox就能得到更加确的boundingbox如右图。使用最小二乘(LeastSqures)线性回归模型。位置精修根据最后输出的feature

进一步做了regres回归器

对每一类目标,使用一个线性回归器进行精修。

正则项

λ=10000。

输入:CNN网络pool5层的4096维特征

输出:xy方向的缩放和平移W=[x,y,w,h]。训练样本:判定为本类的候选框中,和真值重叠面积大于0.6的候选框。其中*可以是:x,y,w,h,(x,y)是目标中心相对位置,w,h是变换后的宽度和高度缩放比例的对数值

回归器

R-CNN系列学习资料课件R-CNN的缺点虽然R-CNN在ILSVRC2013数据集上的mAP由Overfeat的24.3%提升到了31.4%,第一次有了质的改变。但R-CNN有很多缺点:重复计算:R-CNN虽然不再是穷举,但依然有两千个左右的候选框,这些候选框都需要进行CNN操作,计算量依然很大,其中有不少其实是重复计算;SVM模型:而且还是线性模型,在标注数据不缺的时候显然不是最好的选择;训练测试分为多步:区域提名、特征提取、分类、回归都是断开的训练的过程,中间数据还需要单独保存;训练的空间和时间代价很高GPU上处理一张图片需要13秒,CPU上则需要53秒。R-CNN的缺点虽然R-CNN在ILSVRC2013数据集SPP-Net:MotivationCroppingmaylosssomeinformationabouttheobject截取的区域未涵盖整个目标Warppingmaychangetheobject’sappearance缩放带来图像的扭曲SPP-Net:MotivationCroppingmaFClayerneedafixed-lengroundtruthhinputwhileconvlayercanbeadaptedtoarbitraryinputsize.事实上,CNN的卷积层不需要固定尺寸的图像,而全连接层是需要固定大小输入的提出了SPP层放到卷积层的后面SPPNet将任意大小的图像池化生成固定长度的图像表示SPP-Net:MotivationFClayerneedafixed-lengrounSPP-Net:TrainingforDetection(1)Conv5featuremapConv5featuremapConv5featuremapImagePyramidFeatMapPyramidsconvStep1.GenerateaimagepyramidandexacttheconvFeatMapofthewholeimage金字塔用了{6x63x32x21x1},共36+9+4+1=50个特征做出的主要改进在于SPP-net能够一次得到整个featuremap,大大减少了计算proposal的特征时候的运算开销。具体做法,将图片缩放到s∈{480,576,688,864,1200}的大小,尽量让region在s集合中对应的尺度接近224x224,然后选择对应的featuremap进行提取空间金字塔池化层{6x63x32x21x1}s∈{480,576,688,864,1200}224x2224x3224x6SPP-Net:TrainingforDetectioSPP-Net:TrainingforDetection(2)Step2,Foreachproposal,walkingtheimagepyramidandfindaprojectversionthathasanumberofpixelsclosestto224x224.

(Forscalinginvarianceintraining.)Step3,findthecorrespondingFeatMapinConv5anduseSPPlayertopoolittoafixsize.Step4,Whilegettingalltheproposals’feature,fine-tunetheFClayeronly.Step5,Traintheclass-specifiedSVMSPP-Net:TrainingforDetection(2)SPP-Net:TrainingforDetectioSPP-Net:TestingforDetectionAlmostthesameasR-CNN,exceptStep3.SPP-Net:TrainingforDetectionSPP-Net:TestingforDetectionSPP是BOW的扩展,将图像从精细空间划分到粗糙空间,之后将局部特征聚集。在CNN成为主流之前,SPP在检测和分类的应用比较广泛。SPP的优点:1)任意尺寸输入,固定大小输出;2)层多;3)可对任意尺度提取的特征进行池化。SPP是BOW的扩展,将图像从精细空间划分到粗糙空间,之后将Speed:64xfasterthanR-CNNusingonescale,and24xfasterusingfive-scaleparamid.mAP:+1.2mAPvsR-CNNSPP-Net速度提升Speed:64xfasterthanR-CNNu2.训练花费过大的硬盘开销和时间1.训练分多阶段,并不是端到端的训练过程FClayersConvlayersSVMregressorstore3.训练sppnet只微调全连阶层(检测除了语义信息还需要位置信息,多层pooling操作导致位置信息模糊)FastR-CNNSPP-Net:不足2.训练花费过大的硬盘开销和时间1.训练分多阶段,并不是FastR-CNNRossGirshick,FastR-CNN,ArxivtechreportJOINTTRAINING!!多任务损失函数(multi-taskloss)ROIpoolinglayer特征提取和分类放在一个网络之中,联合训练FastR-CNNRossGirshick,FastFastR-CNN:JointTrainingFrameworkJointthefeatureextractor,classifier,regressortogetherinaunifiedframework(RoI)候选区域:图像序号+几何位置FastR-CNNFastR-CNN:JointTrainingFraSPP-Netimagepyramids(multiscale)bruteforce(singlescale)直接将image设置为某种scaleConv5featuremapconvInpractice,singlescaleisgoodenough.(Themainreasonwhyitcanfasterx10thanSPP-Net)FastR-CNNSPP-Netbruteforce(singlesca边框回归:AsmoothL1losswhichislesssensitivetooutliersthanL2loss多任务损失函数:FastR-CNN第一项是分类损失函数,第二项是定位损失函数,k是类别索引,R个ROI的损失值取平均,k*是实际类别边框回归:多任务损失函数:FastR-CNN第一项是分类损FastR-CNN:Othertricks第82页|共25页FastR-CNN:Othertricks第34页|FastR-CNN技巧对全连接层参数矩阵做了一个SVD分解,mAP几乎不怎么降(0.3%),但速度提速30%数据增量:水平翻转将VOC2012的数据也作为拓展数据加入到finetune的数据中,结果VOC07的mAP从66.9到了70.0FastR-CNN技巧对全连接层参数矩阵做了一个SVD分网络末端同步训练的分类和位置调整,提升准确度使用多尺度的图像金字塔,性能几乎没有提高倍增训练数据,能够有2%-3%的准确度提升网络直接输出各类概率(softmax),比SVM分类器性能略好更多候选窗不能提升性能FastRCNN和RCNN相比,训练时间从84小时减少为9.5小时,测试时间从47秒减少为0.32秒。在PASCALVOC2007上的准确率相差无几,约在66%-67%之间FastR-CNN结论网络末端同步训练的分类和位置调整,提升准确度FastRC1.Region

proposal耗时(提regionproposal2~3s,而提特征分类只需0.32s),大部分时间用来提Regionproposal2.伪端到端训练(regionproposal使用selectivesearch先提取处来,占用磁盘存储)Faster-RCNN卷积网络直接产生候选区域RPN本质为滑动窗口FastR-CNN不足1.Regionproposal耗时(提regionpR-CNN系列学习资料课件K个建议框是目标/非目标的估计概率即k个box的坐标编码anchor:每个anchor以当前滑动窗口中心为中心,并对应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论