首页

> 学术论文知识库

首页 学术论文知识库 问题

目标检测算法综述论文

发布时间:

目标检测算法综述论文

anchorfree只有一个输出吗首先说fpn,anchor free的做法相当于feature map的每个位置只能输出一个框,可以想象,如果没有fpn这种多层级的表示,如果最终的feature map down sample的倍数是8或者16,那么可能会有很多物体的中心点落在同一格子中。

一、    程明明等人的论文:Salient Object Detection: A Surve(简单归纳了文章中的我认为比较重要的部分) 该论文旨在全面回顾突出显示目标检测的最新进展,并将其与其他密切相关领域(如通用场景分割,目标建议生成以及固定预测的显著性)相关联。主要内容涉及i)根源,关键概念和任务,ii)核心技术和主要建模趋势,以及iii)显著性物体检测中的数据集和评估指标。讨论并提出了未来的研究反向等开放性问题。 1.介绍 1.1 什么是显著性物体 提到一般认为,良好的显著性检测模型应至少满足以下三个标准:1)良好的检测:丢失实际显著区域的可能性以及将背景错误地标记为显著区域应该是低的;2)高分辨率:显著图应该具有高分辨率或全分辨率以准确定位突出物体并保留原始图像信息;3)计算效率:作为其他复杂过程的前端,这些模型应该快速检测显著区域。 显著物体检测历史 (1)Itti等人提出的最早、经典的的显著模型。例如[24]一文掀起了跨认知心理学、神经科学和计算机视觉等多个学科的第一波热潮。 (2)第二波热潮由刘等人的[25],[55]和Achanta等人的[56]掀起,他们将显著性检测定义为二元分割问题,自此出现了大量的显著性检测模型。 (3)最近出现了第三波热潮,卷积神经网络(CNN)[69],特别是引入完全卷积神经网络[70]。与基于对比线索的大多数经典方法不同[1],基于CNN的方法消除了对手工特征的需求减轻了对中心偏见知识的依赖,因此被许多科研人员所采用。基于CNN的模型通常包含数十万个可调参数和具有可变感受野大小的神经元。神经元具有较大的接受范围提供全局信息,可以帮助更好地识别图像中最显著的区域。CNN所能实现前所未有的性能使其逐渐成为显著性物体检测的主流方向。 2. 现状调查 本节主要回顾三部分内容:1)显著性物体检测模型;2)应用;3)数据集。 经典模型(非常详细) 具有内在线索的基于块的模型 有两个缺点:1)高对比度边缘通常突出而不是突出物体;2)凸显物体的边界不能很好地保存。为了克服这些问题,一些方法提出基于区域来计算显著性。两个主要优点:1)区域的数量远少于区块的数量,这意味着开发高效和快速算法的潜力;2)更多的信息功能可以从区域中提取,领先以更好的表现。 具有内在线索的基于区域的模型(图4) 基于区域的显著性模型的主要优势:1)采用互补先验,以提高整体性能,这是主要优势;2)与像素和色块相比,区域提供更复杂的线索(如颜色直方图),以更好地捕捉场景的显著对象;3)由于图像中的区域数量远小于像素数量,因此在生成全分辨率显著图时,区域级别的计算显著性可以显著降低计算成本。 具有外部线索的模型(图5) 其他经典模型(图6) 局部化模型、分割模型、监督模式与无监督模式、聚合和优化模型 基于深度学习的模型  基于CNN(经典卷积网络)的模型 CNN大大降低了计算成本,多级特征允许CNN更好地定位检测到显著区域的边界,即使存在阴影或反射。但CNN特征的空间信息因为使用了MLP(多层感知器)而无法保留。 基于FCN(完全卷积网络)的模型 该模型具有保存空间信息的能力,可实现点对点学习和端到端训练策略,与CNN相比大大降低了时间成本。但在具有透明物体的场景、前景和背景之间的相同对比度以及复杂的背景等情况无法检测显著物体。 元素: PI=像素,PA=补丁,PE=区域,前缀m和h分别表示多尺度和分层版本。 假设: CP=中心先验,G=全局对比度,L=局部对比度,ED=边缘密度,B=背景先验,F=先验焦点,O=先验物体,CV=先验凸度,CS=中心环绕对比度,CLP=先验颜色,SD空间分布,BC=边界连通之前,SPS=稀疏噪声。 聚合/优化: LN=线性,NL=非线性,AD=自适应,RI=分层,BA=贝叶斯,GMRF=高斯MRF,EM=能量最小化,LS=最小二乘解 线索 :GT=地面真值注释,SI=相似图像,TC=时间线索,SCO=显著性实现,DP=深度,LF=光场。 对于显著性假设 : P=通用属性,PRA=预注意线索,HD=高维特征空间中的判别性,SS=显著性相似性,CMP=显著性提示的互补,SP=采样概率,MCO=运动相干性,RP=重复性,RS=区域相似度,C=相应,DK=领域知识。 其他 : CRF=条件随机场,SVM=支持向量机,BDT=提升决策树,RF=随机森林 4 数据集和评估措施 显著对象检测数据集 早期的带有包围框的突出物体图像:MSRA-A和MSRA-B 使用像素方式的二进制掩码来注释显著对象:ASD和DUT-OMRON 具有复杂和杂乱背景中的多个对象的数据集:[22]、[23]、[26] 评估措施(5个) 用S表示归一化为[0,255]的预测显著图,G是显著对象的地面正式二进制掩模 (1) 精确召回(PR)。首先将显著图S转化为二进制掩码M,然后通过将M与地面真值G进行比较来计算Precission和Recall: (2) F值:通常Precission和Recall都不能完全评估显著图的质量,为此提出F值作为Precission和Recall的非负权重的集权跳河平均: (3) ROC(Receiver Operating Characteristic)曲线:是以假正率(FP_rate)和假负率(TP_rate)为轴的曲线 (4)ROC曲线下面积(AUC):AUC越大性能越好 (5) 平均绝对误差(MAE):进行更全面的比较。 图12,比较流行的显著性对象检测数据集:二、    传统显著性检测内容补充(论文中的分类和自己平时习惯不一致,所以重新收集资料整理了一下) 常用显著性检测方法: 1.  认知模型 几乎所有模型都直接或间接地受认知模型启发而来,其一大特点是与心理学和神经学相结合。Itti模型(使用三个特征通道:颜色、属性、方向)是这一类模型的代表,也是后来很多衍生模型的基础 2.  信息论模型 本质是最大化来自所处视觉环境的信息,其中最有影响力的模型是AIM模型。 3.  图论模型 基于图轮的显著性模型把眼动数据看成时间序列,使用了隐马尔科夫模型、动态贝叶斯网和条件随机场等方法。图模型可以对复杂的注意机制建模,因此能取得较好的预测能力,缺点在于模型的高复杂度,尤其涉及训练和可读性时。典型模型有:GBVS等 4.  频域模型 基于频谱分析的显著性模型,形式简洁,易于解释和实现,并且在注意焦点预测和显著区域检测方面取得了很大的成功,但其生物合理性不是非常清楚。经典模型有:频谱残差的显著性检测模型(纯数学计算方法)。参考资料链接: 三、    基于深度学习的显著性检测内容补充(论文是2014年所写,关于深度学习部分不够完善,因此在此又补充了一下) 基于深度学习的显著性目标检测研究发展初期从物体检测神经网络到OverFeat,一直难以取得理想的效果。2014年R-CNN的诞生成为第一个真正可以工业级应用的方案,其在VOC2007测试集的mAP提升至66%。但R-CNN框架仍然存在很多问题: 1) 训练分为多个阶段,步骤较为繁琐:微调网络+训练SVM+训练边框回归器 2) 训练耗时,占用磁盘空间大:5000张图片产生几百G的特征文件 3) 速度慢:使用GPU,VGG-16模型处理一张图像需要47s 截止目前,基于深度学习的显著性目标检测研究可以分为基于区域建议的深度学习目标检测和基于回归的深度学习目标检测两个类别。基于区域建议的深度学习目标检测方法有:R-CNN、SPP-net、FastR-CNN、Faster R-CNN、R-FCN等。 1) R-CNN(Regions with CNN features)重复计算,时间、空间代价较高; 2) SPP-net(Spatial Pyramid Pooling)强化了CNN的使用,允许输入大小不一致的图片,进一步强调了CNN特征计算前移、区域处理后移的思想,极大节省计算量,但不是端到端的模型且CNN特征提取没有联动调参数; 3) FastR-CNN的出现解决了前两者重复计算的问题,实现了区域建议到目标检测一端的卷积共享,首次提出的RoI Pooling技术极大地发挥区域后移的优势,加快了训练速度,采用VGG-16作为CNN网络模型,联动调用参数提升了实验效果,但是依然没有实现端到端的模型,对SS区域建议依赖严重; 4) Faster R-CNN弃用选择性搜索,提出了RPN网络来计算候选框,使用端到端的网络进行目标检测,无论在速度上还是在精度上,都得到了极大的提高,但在速度上并不能满足实时的需求,对每个建议分类计算量仍较大,功能上没有进入实例分割阶段。基于回归的深度学习目标检测方法有:YOLO、SSD、G-CNN、NMS等。 1) YOLO(You Only Look Once)将目标检测任务转换成回归问题,大大简化了检测的过程、加快了检测的速度,但预测目标窗口时使用的是全局信息,冗余度高,且没有区域建议机制后检测精度不高; 2) SSD(Single ShotMultibox Detector)预测某个位置时使用的是该位置周围的特征,结合YOLO的回归思想以及FasterR-CNN中的候选区域机制,既保持了YOLO速度快的特性,也保证了精确定位; 3) G-CNN着力于减少初始化建议数量,使数以万计的建议变成极少的初始格网,提升了检测速度; 4) NMS(Non Maximum Suppression)则通过迭代的形式去除重复候选框,取置信率最大的框。 当前实际应用中,基于区域建议的深度学习目标检测使用更为广泛。当前基于深度学习的显著性检测研究方法: R-CNN系列显著性目标检测框架和YOLO显著性目标检测框架给了我们进行基于深度学习的目标检测两个基本框架。目前研究人员基于这些框架从其他方面入手提出一系列提高目标检测性能的方法。如:难样本挖掘、多层特征融合、使用上下文信息、更深网络学习的特征等。 原文链接:

Anchorfree的输出可以有多个。它是一种网络安全解决方案,它可以帮助您保护您的网络流量,并且可以防止您的网络流量被窃取或拦截。它可以让您在网络上自由浏览,而不必担心被攻击者攻击或拦截。Anchorfree的输出可以通过它的安全服务器来实现,它可以帮助您访问被墙的网站,并且可以提供更安全的网络连接。此外,Anchorfree还提供了一些其他的安全功能,例如VPN,可以帮助您更好地保护您的网络安全。

热门频道首页博客研修院VIPAPP问答下载社区推荐频道活动招聘专题打开CSDN APPCopyright © 1999-2020, , All Rights Reserved打开APPAnchor-free之CenterNet 原创2020-07-09 22:39:58有点方 码龄7年关注anchor-base VS Anchor-freeAnchor-base存在的问题:•与锚点框相关超参 (scale、aspect ratio、IoU Threshold) 会较明显的影响最终预测效果;•预置的锚点大小、比例在检测差异较大物体时不够灵活;•大量的锚点会导致运算复杂度增大,产生的参数较多;•容易导致训练时negative与positive的比例失衡。Anchor-free算法的优点:•使用类似分割的思想来解决目标检测问题;•不需要调优与anchor相关的超参数;•避免大量计算GT boxes和anchor boxes 之间的IoU,使得训练过程占用内存更低。由于物体的中心区域是远小于其他背景区域的,整个分类的正负样本和难易样本是极不均衡的。直接训练这样的分类问题很难收敛到一个满意的结果。Base anchor对于正负样本比例失调的解决方式一般为focal loss 和OHEM。前者在损失函数上优化,对正负样本已经困难样本进行不同程度的惩罚;后者将原来的ROI网络扩充为两个ROI,一个ROI只有前向传播,用于计算损失,一个ROI正常前向后向传播,以hard example作为输入,计算损失并传递梯度,根据损失进行筛选,选出对分类和检测影响大的样本。Base anchor检测差异较大物体的策略主要是FPN,如果没有引入FPN,feature map的每个位置只能输出一个框,并且下采样的倍数是8或者16,那么可能会有很多物体的中心点落在同一格子中,这样就会导致训练的时候有多框重叠现象。FPN这种多层级的表示有效解决了这种冲突的现象,可以在一定程度上解决检测物体差异较大的现象。Anchor free没有使用FPN, feature map的每个位置只能输出一个框,下采样的倍数是8或者16,随着FPN的引入,不同尺寸的物体被分配到了不同的层级上,冲突的概率大大降低。CenterNet VS CornerNet等CornerNet将bbox的两个角作为关键点;ExtremeNet 检测所有目标的 最上,最下,最左,最右,中心点。它们都需要经过一个关键点grouping阶段,这会降低算法整体速度。CenterNet针对CornerNet对内部语义缺失和grouping耗时的问题,提出了对中心点进行估计的方法,找到目标的中心,回归出他们的尺寸。仅仅提取每个目标的中心点,无需对关键点进行grouping 或者是后处理。网络结构论文中CenterNet提到了三种用于目标检测的网络,这三种网络都是编码解码(encoder-decoder)的结构:1. Resnet-18 with up-convolutional layers : coco and 142 FPS2. DLA-34 : COCOAP and 52 FPS3. Hourglass-104 : COCOAP and FPS每个网络内部的结构不同,但是在模型的最后输出部分都是加了三个网络构造来输出预测值,默认是80个类、2个预测的中心点坐标、2个中心点的偏置。确立中心点在整个训练的流程中,CenterNet学习了CornerNet的方法。对于每个标签图(ground truth)中的某一类,我们要将真实关键点(true keypoint) 计算出来用于训练,中心点的计算方式如下对于下采样后的坐标,我们设为其中 R 是文中提到的下采样因子4。所以我们最终计算出来的中心点是对应低分辨率的中心点。然后我们对图像进行标记,在下采样的[128,128]图像中将ground truth point以下采样的形式,用一个高斯滤波来将关键点分布到特征图上。损失函数1.中心点的损失函数其中 α 和 β 是Focal Loss的超参数, N 是图像 I 的的关键点数量,用于将所有的positive focal loss标准化为1。在这篇论文中 α 和 β 分别是2和4。这个损失函数是Focal Loss的修改版,适用于CenterNet。2.目标中心的偏置损失图像进行了 R=4 的下采样,这样的特征图重新映射到原始图像上的时候会带来精度误差,因此对于每一个中心点,额外采用了一个local offset 去补偿它。所有类 c 的中心点共享同一个offset prediction,这个偏置值(offset)用L1 loss来训练:这个偏置损失是可选的,我们不使用它也可以,只不过精度会下降一些。3.目标大小的损失假设 (X1(k),Y1(k),X2(k),Y2(k)) 为为目标 k,所属类别为c,它的中心点为我们使用关键点预测 Y^ 去预测所有的中心点。然后对每个目标 K 的size进行回归,最终回归到Sk=(X2(k)-X1(k), Y2(k)-Y1(k)),这个值是在训练前提前计算出来的,是进行了下采样之后的长宽值。作者采用L1 loss 监督w,h的回归4.总损失函数整体的损失函数为物体损失、大小损失与偏置损失的和,每个损失都有相应的权重。论文中 size 和 off的系数分别为和1 ,论文中所使用的backbone都有三个head layer,分别产生[1,80,128,128]、[1,2,128,128]、[1,2,128,128],也就是每个坐标点产生 C+4 个数据,分别是类别以及、长宽、以及偏置。推理阶段在预测阶段,首先针对一张图像进行下采样,随后对下采样后的图像进行预测,对于每个类在下采样的特征图中预测中心点,然后将输出图中的每个类的热点单独地提取出来。就是检测当前热点的值是否比周围的八个近邻点(八方位)都大(或者等于),然后取100个这样的点,采用的方式是一个3x3的MaxPool。代码中设置的阈值为,也就是从上面选出的100个结果中调出大于该阈值的中心点,最后经过soft nms得到最终的结果。CenterNet的缺点1.当两个不同的object完美的对齐,可能具有相同的center,这个时候只能检测出来它们其中的一个object。2.有一个需要注意的点,CenterNet在训练过程中,如果同一个类的不同物体的高斯分布点互相有重叠,那么则在重叠的范围内选取较大的高斯点。附:DCN:文章知识点与官方知识档案匹配OpenCV技能树OpenCV中的深度学习图像分类12101 人正在系统学习中打开CSDN APP,看更多技术内容CenterNet(Objects as Points)学习笔记论文: Objects as Points Code: CenterNer的提出 一般的detection方法将object识别成(无旋转的)矩形框。大部分成功的object检测器会枚举出很多object的位置和尺寸,对每一个候选框进行分类。这是浪费的、低效的。 常规方法中的后处理方法(nms等)是很难微分(diff...继续访问『深度应用』对CenterNet的一些思考与质疑·对比与U版YoloV3速度与精度0.引子 笔者很喜欢CenterNet极简的网络结构,CenterNet只通过FCN(全卷积)的方法实现了对于目标的检测与分类,无需anchor与nms等复杂的操作高效的同时精度也不差。同时也可以很将此结构简单的修改就可以应用到人体姿态估计与三维目标检测之中。 后面一些针对CenterNet结构应用于其他任务,也取得不错的效果,比如人脸检测CenterFace以及目标追踪CenterTrack与FairMot。这些内容后面等笔者研习过后再补充,后面应该会做一个类CenterNet结构总结对比,感兴.继续访问最新发布 目标检测 | Anchor free之CenterNet深度解析点击上方“小白学视觉”,选择加"星标"或“置顶”重磅干货,第一时间送达1 前言本文接着上一讲对CornerNet的网络结构和损失函数的解析,链接如下本文来聊一聊Anchor-Free领域耳熟能详的CenterNet。原论文...继续访问CenterNet遇到的问题问题总结 参考pillow报错 conda install 'pillow<' 报错参考THCG改main中 conda创建环境相关操作 conda相关操作2 : HTTP Error 404: Not Found网络问题 AttributeError: Can't pickle local objec...继续访问目标检测:使用mmdetection对比centernet与yolov3的性能前情概要 上一篇博客,我通过mmdetection实现的源码解释了centernet的原理,并分析了该算法的一些优缺点,本篇博客我将讲解如何通过mmdetection运行centernet,并基于一个x光数据集对比centernet与yolov3的性能。 本文使用数据集介绍 本文使用的数据集是安检x光的数据集,数据集大小为3600张图片和对应标注,样例图片如下 而需要检测的物体label有10个:knife、scissors、lighter、zippooil、pressure、slingshot、han继续访问关于CenterNet移动端部署的思考(for ncnn)参考 腾讯技术工程 公众号: 本文主要是参考 arlencai 大佬的博文,对于cneternet在ncnn平台移植的实操和分析,先mark一下,准备后续有空闲尝试将这一思路在nvidia的jetson平台上尝试部署,并进行系列优化(如硬件方面框架的tensorrt量化优化、网络层面的移动端部署替代,或者类似yolov5的CSP结构等方法改良尝试等) 一、背景 原文中,大佬主要是针对微信的“扫一扫”功能进行阐述继续访问CenterNet原文: 扔掉anchor!真正的CenterNet——Objects as Points论文解读 Oldpan 2019年5月16日 0条评论137次阅读0人点赞 anchor-free目标检测属于anchor-free系列的目标检测,相比于CornerNet做出了改进,...继续访问Anchor Free,框即是点,CenterNet论文:Objects as Points Github: CVPR 2019 CenterNet,一个anchor free的新的检测算法,算是对cornerNet的改进,在cornerNet基础上,引入了中心点的概念,因此,称为CenterNet。 算法亮点, anchor free,大大减少了a...继续访问深度学习(三十七)——CenterNet, Anchor-Free, NN QuantizationCenterNet CenterNet是中科院、牛津、Huawei Noah’s Ark Lab的一个联合团队的作品。() 论文: 《CenterNet: Keypoint Triplets for Object Detection》 上图是CenterNet的网络结构图。 正如之前提到的,框对于物体来说不是一个最好的表示。同理,Corner也不是什么特别好的表示:绝大多数情况下,C...继续访问anchor-free目标检测之centernet自从anchor-free方法实现目标检测的Cornernet提出后,对其进行改进的方法也出现了许多。centernet是一篇对其进行改进的论文,将原来的二元组角点检测扩展为三元组检测,加入了中心点的检测。 为了克服需要手动设计anchor的超参数的问题,Cornernet提出基于关键点检测的方法。但是,基于关键点的方法经常会产生大量不正确的对象边界框,可以说是由于缺少对裁剪区域的额外观察。 ...继续访问目标检测深度学习方法综述(二)0.前言 本来准备将一些模型汇总成一篇博客的,但是不知道为啥写了一万多字之后这博客草稿就保存不了了,所以我将剩下的部分放到这篇博客中来(奇怪的BUG )前文地址: 我们接着上篇文章的章节来好吧。 SSD算法 SSD 算法是 Faster RCNN 和 YOLO 的结合: 采...继续访问配置和运行CenterNet时踩过的坑在运行CenterNet时遇到的一些问题继续访问简单聊聊centerNet:将目标当成点-1.论文CenterNet:将目标视为点 《Objects as Points》 Date:20190417 Author:德克萨斯大学奥斯汀分校 和 UC 伯克利 ariXiv: ​ github: ​ ...继续访问CenterNet配置及问题详解作者原版github: Install 按照readme文件夹中的操作: 0.创建一个虚拟环境 conda create --name CenterNet python=创建一个名为CenterNet的虚拟环境 source activate CenterNet #激活...继续访问热门推荐 CenterNet算法笔记论文:Objects as Points 论文链接: 代码链接: 这篇CenterNet算法也是anchor-free类型的目标检测算法,基于点的思想和CornerNet是相似的,方法上做了较大的调整,整体上给人一种非常清爽的感觉,算法思想很朴素、直接,而且...继续访问论文阅读笔记 | 目标检测算法——CenterNet算法如有错误,恳请指出 文章目录1. Introduction2. keypoint detection offset size overall loss3. Objects as Points4. Result paper:Objects as Points Source code: 思想: 目标检测将对象识别为图像中与轴对齐的框。大多数成功的物体检测.继续访问目标检测Anchor free方法总结:YOLOv1、CornerNet、CenterNet、FCOSYOLOv1(2016): CornerNet(2018): CenterNet(2019): FCOS(2019): 什么是Anchor free方法?   Anchor free是相对于Anchor base而言的一种目继续访问Anchor-free目标检测系列3:CenterNet Object as points​​​​​​CenterNet(一个中心点) CenterNet: Objects as Points () 论文是由德克萨斯大学奥斯汀分校和UC 伯克利学者共同提出的真正意义上anchor-free的算法。与之前介绍的CornerNet系列算法不同,CenterNet仅仅检测目标中心点,没有后续的角点配对及NMS后处理操作,检测速度和精度相比于one-stage和two...继续访问扔掉anchor!真正的CenterNet——Objects as Points论文解读前言 anchor-free目标检测属于anchor-free系列的目标检测,相比于CornerNet做出了改进,使得检测速度和精度相比于one-stage和two-stage的框架都有不小的提高,尤其是与YOLOv3作比较,在相同速度的条件下,CenterNet的精度比YOLOv3提高了4个左右的点。 CenterNet不仅可以用于目标检测,还可以用于其他的一些任务,如肢体识别或者...继续访问深度学习计算机视觉机器学习写评论评论收藏点赞踩分享

目标检测综述论文2019

anchorfree只有一个输出吗首先说fpn,anchor free的做法相当于feature map的每个位置只能输出一个框,可以想象,如果没有fpn这种多层级的表示,如果最终的feature map down sample的倍数是8或者16,那么可能会有很多物体的中心点落在同一格子中。

原文: Scalable Object Detection using Deep Neural Networks——学术范 最近,深度卷积神经网络在许多图像识别基准上取得了最先进的性能,包括ImageNet大规模视觉识别挑战(ILSVRC-2012)。在定位子任务中获胜的模型是一个网络,它预测了图像中每个对象类别的单个边界框和置信度得分。这样的模型捕获了围绕对象的整幅图像上下文,但如果不天真地复制每个实例的输出数量,就无法处理图像中同一对象的多个实例。在这篇论文中提出了一个显著性启发的神经网络检测模型,它预测了一组与类无关的边界框,每个框有一个分数,对应于它包含任何感兴趣的对象的可能性。该模型自然地为每个类处理数量可变的实例,并允许在网络的最高级别上进行跨类泛化。 目标检测是计算机视觉的基本任务之一。一个解决这个问题的通用范例是训练在子图像上操作的对象检测器,并在所有的场所和尺度上以详尽的方式应用这些检测器。这一范例被成功地应用于经过区别训练的可变形零件模型(DPM)中,以实现检测任务的最新结果。对所有可能位置和尺度的穷举搜索带来了计算上的挑战。随着类数量的增加,这个挑战变得更加困难,因为大多数方法都训练每个类单独的检测器。为了解决这个问题,人们提出了多种方法,从检测器级联到使用分割提出少量的对象假设。 关于对象检测的文献非常多,在本节中,我们将重点讨论利用类不可知思想和解决可伸缩性的方法。 许多提出的检测方法都是基于基于部件的模型,最近由于有区别学习和精心设计的特征,已经取得了令人印象深刻的性能。然而,这些方法依赖于在多个尺度上详尽地应用零件模板,这是非常昂贵的。此外,它们在类的数量上是可伸缩的,这对像ImageNet这样的现代数据集来说是一个挑战。 为了解决前一个问题,Lampert等人使用分支绑定策略来避免计算所有可能的对象位置。为了解决后一个问题,Song et al.使用了一个低维部件基,在所有对象类中共享。基于哈希算法的零件检测也取得了良好的结果。 另一种不同的工作,与我们的工作更接近,是基于对象可以本地化的想法,而不必知道它们的类。其中一些方法建立在自底向上无阶级分割[9]的基础上。通过这种方式得到的片段可以使用自上而下的反馈进行评分。基于同样的动机,Alexe等人使用一种廉价的分类器对对象假设是否为对象进行评分,并以这种方式减少了后续检测步骤的位置数量。这些方法可以被认为是多层模型,分割作为第一层,分割分类作为后续层。尽管它们编码了已证明的感知原理,但我们将表明,有更深入的模型,充分学习可以导致更好的结果。 最后,我们利用了DeepLearning的最新进展,最引人注目的是Krizhevsky等人的工作。我们将他们的边界盒回归检测方法扩展到以可扩展的方式处理多个对象的情况。然而,基于dnn的回归已经被Szegedy等人应用到对象掩模中。最后一种方法实现了最先进的检测性能,但由于单个掩模回归的成本,不能扩展到多个类。 我们的目标是通过预测一组表示潜在对象的边界盒来实现一种与类无关的可扩展对象检测。更准确地说,我们使用了深度神经网络(DNN),它输出固定数量的包围盒。此外,它为每个盒子输出一个分数,表示这个盒子包含一个对象的网络信任度。 为了形式化上述思想,我们将i-thobject框及其相关的置信度编码为最后一网层的节点值: Bounding box: 我们将每个框的左上角和右下角坐标编码为四个节点值,可以写成vectorli∈R4。这些坐标是归一化的w. r. t.图像尺寸,以实现图像绝对尺寸的不变性。每个归一化坐标是由最后一层的线性变换产生的。 Confidence: 置信度:包含一个对象的盒子的置信度得分被编码为单个节点valueci∈[0,1]。这个值是通过最后一个隐藏层的线性变换产生的,后面跟着一个sigmoid。 我们可以组合边界盒位置sli,i∈{1,…K}为一个线性层。同样,我们可以将所有置信区间ci,i∈{1,…K}作为一个s型层的输出。这两个输出层都连接到最后一个隐藏层 在推理时,我们的算法生成kbound盒。在我们的实验中,我们使用ek = 100和K= 200。如果需要,我们可以使用置信分数和非最大抑制在推理时获得较少数量的高置信框。这些盒子应该代表对象。因此,它们可以通过后续的分类器进行分类,实现目标检测。由于盒子的数量非常少,我们可以提供强大的分类器。在我们的实验中,我们使用另一个dnn进行分类。 我们训练一个DNN来预测每个训练图像的边界框及其置信度得分,以便得分最高的框与图像的groundtruth对象框很好地匹配。假设对于一个特定的训练例子,对象被标记为boundingboxesgj,j∈{1,…,M}。在实践中,pre- dictionary的数量远远大于groundtruthboxm的数量。因此,我们试图只优化与地面真实最匹配的预测框子集。我们优化他们的位置,以提高他们的匹配度,最大化他们的信心。与此同时,我们将剩余预测的置信度最小化,这被认为不能很好地定位真实对象。为了达到上述目的,我们为每个训练实例制定一个分配问题。Wexij∈{0,1}表示赋值:xij= 1,如果第i个预测被赋值给第j个真对象。这项任务的目标可以表示为 其中,我们使用标准化边界框坐标之间的el2距离来量化边界框之间的不同。此外,我们希望根据分配x优化盒子的可信度。最大化指定预测的置信度可以表示为  最终的损失目标结合了匹配损失和信心损失 受式1的约束。α平衡了不同损失条款的贡献。 对于每个训练例子,我们通过解决一个最佳的赋值x*的预测到真实的盒子 约束执行赋值解决方案。这是二部匹配的一种变体,是一种多项式复杂度匹配。在我们的应用程序中,匹配是非常便宜的——每幅图像中标记的对象的数量少于一打,而且在大多数情况下只有很少的对象被标记。然后,通过反向传播优化网络参数。例如,反向传播算法的一阶导数计算w、r、t、l和c 尽管上述定义的损失在原则上是足够的,但三次修改使其有可能更快地达到更好的准确性。第一个修改是对地面真实位置进行聚类,并找到这样的聚类/质心,我们可以使用这些聚类/质心作为每个预测位置的先验。因此,鼓励学习算法为每个预测位置学习一个残差到一个先验。 第二个修改涉及到在匹配过程中使用这些先验:不是将N个groundtruth位置与K个预测进行匹配,而是在K个先验和groundtruth之间找到最佳匹配。一旦匹配完成,就会像之前一样计算目标的置信度。此外,位置预测损失也不变:对于任何一对匹配的(目标,预测)位置,其损失定义为groundtruth和对应于匹配先验的坐标之间的差值。我们把使用先验匹配称为先验匹配,并假设它促进了预测的多样化。  需要注意的是,尽管我们以一种与类无关的方式定义了我们的方法,但我们可以将它应用于预测特定类的对象盒。要做到这一点,我们只需要在类的边框上训练我们的模型。此外,我们可以预测每个类的kbox。不幸的是,这个模型的参数数量会随着类的数量线性增长。此外,在一个典型的设置中,给定类的对象数量相对较少,这些参数中的大多数会看到很少有相应梯度贡献的训练示例。因此,我们认为我们的两步过程——首先本地化,然后识别——是一个更好的选择,因为它允许使用少量参数利用同一图像中多个对象类型的数据 我们使用的本地化和分类模型的网络架构与[10]使用的网络架构相同。我们使用Adagrad来控制学习速率衰减,128的小批量,以及使用多个相同的网络副本进行并行分布式训练,从而实现更快的收敛。如前所述,我们在定位损失中使用先验——这些是使用训练集上的均值来计算的。我们还使用α = 来平衡局部化和置信度损失。定位器可以输出用于推断的种植区以外的坐标。坐标被映射和截断到最后的图像区域。另外,使用非最大抑制对盒进行修剪,Jaccard相似度阈值为。然后,我们的第二个模型将每个边界框分类为感兴趣的对象或“背景”。为了训练我们的定位器网络,我们从训练集中生成了大约3000万幅图像,并对训练集中的每幅图像应用以下步骤。最后,样品被打乱。为了训练我们的本地化网络,我们通过对训练集中的每一幅图像应用以下步骤,从训练集中生成了大约3000万幅图像。对于每幅图像,我们生成相同数量的平方样本,使样本总数大约为1000万。对于每幅图像,样本被桶状填充,这样,对于0 - 5%、5 - 15%、15 - 50%、50 - 100%范围内的每个比例,都有相同数量的样本,其中被包围框覆盖的比例在给定范围内。训练集和我们大多数超参数的选择是基于过去使用非公开数据集的经验。在下面的实验中,我们没有探索任何非标准数据生成或正则化选项。在所有的实验中,所有的超参数都是通过对训练集。 Pascal Visual Object Classes (VOC)挑战是最常用的对象检测算法基准。它主要由复杂的场景图像组成,其中包含了20种不同的对象类别的边界框。在我们的评估中,我们关注的是2007版VOC,为此发布了一个测试集。我们通过培训VOC 2012展示了结果,其中包含了大约。11000张图片。我们训练了一个100框的定位器和一个基于深度网络的分类器。 我们在一个由1000万作物组成的数据集上训练分类器,该数据集重叠的对象至少为 jaccard重叠相似度。这些作物被标记为20个VOC对象类中的一个。•2000万负作物与任何物体盒最多有个Jaccard相似度。这些作物被贴上特殊的“背景”类标签。体系结构和超参数的选择遵循。 在第一轮中,定位器模型应用于图像中最大-最小中心方形作物。作物的大小调整到网络输入大小is220×220。单次通过这个网络,我们就可以得到上百个候选日期框。在对重叠阈值为的非最大抑制后,保留评分最高的前10个检测项,并通过21路分类器模型分别通过网络进行分类。最终的检测分数是给定盒子的定位分数乘以分类器在作物周围的最大方形区域上评估的分数的乘积。这些分数通过评估,并用于计算精确查全曲线。 首先,我们分析了本地化器在隔离状态下的性能。我们给出了被检测对象的数量,正如Pascal检测标准所定义的那样,与生成的包围框的数量相对比。在图1中,我们展示了使用VOC2012进行训练所获得的结果。此外,我们通过使用图像的最大中心面积(max-center square crop)作为输入以及使用两个尺度(second scale)来给出结果:最大中心面积(max-center crop)的第二个尺度(select3×3windows的大小为图像大小的60%)正如我们所看到的,当使用10个边界框的预算时,我们可以用第一个模型本地化的对象,用第二个模型本地化48%的对象。这显示出比其他报告的结果更好的性能,例如对象度算法达到42%[1]。此外,这个图表显示了在不同分辨率下观察图像的重要性。虽然我们的算法通过使用最大中心作物获得了大量的对象,但当使用更高分辨率的图像作物时,我们获得了额外的提升。进一步,我们用21-way分类器对生成的包围盒进行分类,如上所述。表1列出了VOC 2007的平均精度(APs)。达到的平均AP是,与先进水平相当。注意,我们的运行时间复杂度非常低——我们只使用top10框。示例检测和全精度召回曲线分别如图2和图3所示。值得注意的是,可视化检测是通过仅使用最大中心方形图像裁剪,即使用全图像获得的。然而,我们设法获得了相对较小的对象,例如第二行和第二列的船,以及第三行和第三列的羊。 在本工作中,我们提出了一种新的方法来定位图像中的对象,该方法可以预测多个边界框的时间。该方法使用深度卷积神经网络作为基本特征提取和学习模型。它制定了一个能够利用可变数量的groundtruth位置的多箱定位成本。在“一个类一个箱”方法的情况下,对1000个盒子进行非max-suppression,使用与给定图像中感兴趣的DeepMulti-Box方法相同的准则,并学习在未见图像中预测这些位置。 我们在VOC2007和ILSVRC-2012这两个具有挑战性的基准上给出了结果,在这两个基准上,所提出的方法具有竞争力。此外,该方法能够很好地预测后续分类器将探测到的位置。我们的结果表明,deepmultibox的方法是可扩展的,甚至可以在两个数据集之间泛化,就能够预测感兴趣的定位,甚至对于它没有训练的类别。此外,它能够捕获同一类物体的多种情况,这是旨在更好地理解图像的算法的一个重要特征。 在未来,我们希望能够将定位和识别路径折叠到一个单一的网络中,这样我们就能够在一个通过网络的一次性前馈中提取位置和类标签信息。即使在其当前状态下,双通道过程(本地化网络之后是分类网络)也会产生5-10个网络评估,每个评估的速度大约为1个CPU-sec(现代机器)。重要的是,这个数字并不与要识别的类的数量成线性关系,这使得所提出的方法与类似dpm的方法非常有竞争力。

对于目标检测方向并不是特别熟悉,本文记录一下RCNN, fast-RCNN, faster-RCNN, mask-RCNN这4篇有关目标检测的论文笔记和学习心得。

R-CNN的意思就是Region based,主要思路就是根据一张图像,提取多个region,再将每个Region输入CNN来进行特征的提取。因此RCNN就可以分为 Region proposals , Feature extraction 两个主要部分,提取的特征就可以输入任意一个分类器来进行分类。 模型的流程图如下:

在训练的时候,首先使用的是已经训练好的CNN网络作为特征提取器,但是由于预训练是在分类数据集上,因此在应用到检测之前要做finetune。也就是说,为了将用ImageNet数据集训练的网络应用到新的任务(检测),新的数据集(region)上,作者将原来的CNN最后的1000类的fc层,更改为了 层, 代表待检测的物体的类别数。然后,对于所有的region,如果它和ground truth的重叠率大于,就认为是正类。 对于分类器的训练,作者发现选择多大的IoU来区分正类和负类非常关键。并且,对于每一类,都会训练一个分类器。

框的回归非常重要,在对每一个region proposal使用分类器进行打分评价之后,作者使用一个回归器来预测一个新的框作为结果。这个回归器使用的特征是从CNN中提取的特征。回归器的训练中,输入是 region proposal 的 和ground truth的 ,目标是学习一种变换,使得region proposal通过该变换能够接近ground truth。同时,希望这种变换拥有尺度不变性,也就是说尺度变化的话,变换不会改变。 如下图所示,每一个regressor会学习一组参数,特征输入是pool 5的特征输出,拟合的目标是 。

Fast-RCNN 主要解决的问题是在RCNN中对于每一个region proposal都进行特征提取,会产生非常多的冗余计算,因此可以先对一张图像进行特征提取,再根据region proposal在相应的特征上进行划分得到对应region的特征(映射关系)。 这样便可以实现共享计算提高速度,但是与SPPnets不同,SPPnets在一副图像得到对应的特征后,从这张图像的特征上proposal对应的部分,采用空间金字塔池化,如下图:

RoI pooling的方法很简单,类似于空间金字塔pooling,它将proposal部分对应卷积层输出的特征(称之为RoI,因为用于做pooling的特征是 region of interest,也就是我们感兴趣的区域)划分成 块,然后对每一块求最大值,最终得到了一个 的特征图。可以看出,它只是空间金字塔pooling的一部分。 但是SPP-nets的空间金字塔也是可以求导的,那么它到底不好在哪里呢?因为当每一个RoI都可能来源于不同的图像的时候(R-CNN和SPPnets的训练策略是从一个batch的不同图像中,分别挑选一个proposal region),SPPNets的训练非常地低效,这种低效来源于在SPPnets的训练中,每个RoI的感受野都非常地大,很可能对应了原图的整个图像,因此,得到的特征也几乎对应了整张图像,所以输入的图像也就很大。 为了提高效率,Fast-RCNN首先选取 个图像,再从每个图像上选择 个RoI,这样的效率就比从每个图像提取一个RoI提高了 倍。

为了将分类和框回归结合起来,作者采用了多任务的loss,来进行联合的训练。具体来说就是将分类的loss和框回归的loss结合起来。网络的设计上非常直接,就是将RoI得到的特征接几个FC层后,分别接不同的输出层。对应于分类部分,特征会接一个softmax输出,用于分类,对于框回归部分,会接一个输出4维特征的输出层,然后分别计算loss,用于反向传播。loss的公式如下:

回归的target可以参考前面的R-CNN部分。

notes

为什么比fast还fast呢?主要原因是在这篇论文中提出了一个新的层:RPN(region proposal networks)用于替代之前的selective search。这个层还可以在GPU上运算来提高速度。 RPN的目的:

为了能够进行region proposal,作者使用了一个小的网络,在基础的卷积层输出的特征上进行滑动,这个网络输入大小为 ,输入后会映射(用 的卷积)为一个固定长度的特征向量,然后接两个并联的fc层(用 的卷积层代替),这两个fc层,一个为box-regressoin,一个为box-classification。如下图:

在每一个滑动窗口(可以参考 ),为了考虑到尽可能多的框的情况,作者设计了anchors来作为region proposal。anchors就是对于每一个滑动窗口的中心位置,在该位置对应的原图位置的基础上,按照不同的尺度,长宽比例框出 个不同的区域。然后根据这些anchors对应的原始图像位置以及区域,和ground truth,就可以给每一个滑动窗口的每一个anchor进行标记,也就是赋予label,满足一定条件标记为正类(比如和ground truth重叠大于一个值),一定条件为负类。对于正类,就可以根据ground truth和该anchor对应的原图的区域之间的变换关系(参考前面的R-CNN的框回归),得到回归器中的目标,用于训练。也就是论文中的loss function部分:

自然地,也就要求RPN的两个并联的FC层一个输出2k个值用于表示这k个anchor对应的区域的正类,负类的概率,另一个输出4k个值,用于表示框回归的变换的预测值。

对于整个网络的训练,作者采用了一种叫做 4-step Alternating Training 的方法。具体可以参考论文。

与之前的检测任务稍有不同,mask r-cnn的任务是做instance segmentation。因此,它需要对每一个像素点进行分类。 与Faster R-CNN不同,Faster R-CNN对每一个候选框产生两个输出,一个是类别,一个是bounding box的offset。Mask R-CNN新增加了一个输出,作为物体的mask。这个mask类似于ps中的蒙版。

与Faster R-CNN类似的是,Mask R-CNN同样采用RPN来进行Region Proposal。但是在之后,对于每一个RoI,mask r-cnn还输出了一个二值化的mask。

不像类别,框回归,输出都可以是一个向量,mask必须保持一定的空间信息。因此,作者采用FCN来从每个RoI中预测一个 的mask。

由于属于像素级别的预测问题,就需要RoI能够在进行特征提取的时候保持住空间信息,至少在像素级别上能够对应起来。因此,传统的取最大值的方法就显得不合适。 RoI Pooling,经历了两个量化的过程: 第一个:从roi proposal到feature map的映射过程。 第二个:从feature map划分成7*7的bin,每个bin使用max pooling。

为此,作者使用了RoIAlign。如下图

为了避免上面提到的量化过程

可以参考

作者使用ResNet作为基础的特征提取的网络。 对于预测类别,回归框,mask的网络使用如下图结构:

整体看完这几篇大佬的论文,虽说没有弄清楚每一个实现细节,但是大体上了解了算法的思路。可以看出,出发点都源于深度神经网络在特征提取上的卓越能力,因此一众大神试图将这种能力应用在检测问题中。从R-CNN中简单地用于特征提取,到为了提高速度减少计算的Fast R-CNN,再到为了将region proposal集成进入整个模型中,并且利用GPU加速的RPN,也就是Faster R-CNN。再到为了应用于instance segmentation任务中,设计的RoIAlign和mask。包括bounding box regression,pooling层的设计,训练方法的选择,loss的设计等等细节,无一不体现了大师们的思考和创造力。 可能在我们这些“拿来”者的眼中,这些方法都显得“理所应当”和巧妙,好用,但是,它们背后隐藏的选择和这些选择的思考却更值得我们学习。 以及,对待每一个问题,如何设计出合理的解决方案,以及方案的效率,通用性,更是应该我们努力的方向。

论文名称:Rich feature hierarchies for accurate object detection and semantic segmentation 提出时间:2014年 论文地址: 针对问题: 从Alexnet提出后,作者等人思考如何利用卷积网络来完成检测任务,即输入一张图,实现图上目标的定位(目标在哪)和分类(目标是什么)两个目标,并最终完成了RCNN网络模型。 创新点: RCNN提出时,检测网络的执行思路还是脱胎于分类网络。也就是深度学习部分仅完成输入图像块的分类工作。那么对检测任务来说如何完成目标的定位呢,作者采用的是Selective Search候选区域提取算法,来获得当前输入图上可能包含目标的不同图像块,再将图像块裁剪到固定的尺寸输入CNN网络来进行当前图像块类别的判断。 参考博客: 。 论文题目:OverFeat: Integrated Recognition, Localization and Detection using Convolutional Networks 提出时间:2014年 论文地址: 针对问题: 该论文讨论了,CNN提取到的特征能够同时用于定位和分类两个任务。也就是在CNN提取到特征以后,在网络后端组织两组卷积或全连接层,一组用于实现定位,输出当前图像上目标的最小外接矩形框坐标,一组用于分类,输出当前图像上目标的类别信息。也是以此为起点,检测网络出现基础主干网络(backbone)+分类头或回归头(定位头)的网络设计模式雏形。 创新点: 在这篇论文中还有两个比较有意思的点,一是作者认为全连接层其实质实现的操作和1x1的卷积是类似的,而且用1x1的卷积核还可以避免FC对输入特征尺寸的限制,那用1x1卷积来替换FC层,是否可行呢?作者在测试时通过将全连接层替换为1x1卷积核证明是可行的;二是提出了offset max-pooling,也就是对池化层输入特征不能整除的情况,通过进行滑动池化并将不同的池化层传递给后续网络层来提高效果。另外作者在论文里提到他的用法是先基于主干网络+分类头训练,然后切换分类头为回归头,再训练回归头的参数,最终完成整个网络的训练。图像的输入作者采用的是直接在输入图上利用卷积核划窗。然后在指定的每个网络层上回归目标的尺度和空间位置。 参考博客: 论文题目:Scalable Object Detection using Deep Neural Networks 提出时间:2014年 论文地址: 针对问题: 既然CNN网络提取的特征可以直接用于检测任务(定位+分类),作者就尝试将目标框(可能包含目标的最小外包矩形框)提取任务放到CNN中进行。也就是直接通过网络完成输入图像上目标的定位工作。 创新点: 本文作者通过将物体检测问题定义为输出多个bounding box的回归问题. 同时每个bounding box会输出关于是否包含目标物体的置信度, 使得模型更加紧凑和高效。先通过聚类获得图像中可能有目标的位置聚类中心,(800个anchor box)然后学习预测不考虑目标类别的二分类网络,背景or前景。用到了多尺度下的检测。 参考博客: 论文题目:DeepBox: Learning Objectness with Convolutional Networks 提出时间:2015年ICCV 论文地址: 主要针对的问题: 本文完成的工作与第三篇类似,都是对目标框提取算法的优化方案,区别是本文首先采用自底而上的方案来提取图像上的疑似目标框,然后再利用CNN网络提取特征对目标框进行是否为前景区域的排序;而第三篇为直接利用CNN网络来回归图像上可能的目标位置。创新点: 本文作者想通过CNN学习输入图像的特征,从而实现对输入网络目标框是否为真实目标的情况进行计算,量化每个输入框的包含目标的可能性值。 参考博客: 论文题目:AttentionNet: AggregatingWeak Directions for Accurate Object Detection 提出时间:2015年ICCV 论文地址: 主要针对的问题: 对检测网络的实现方案进行思考,之前的执行策略是,先确定输入图像中可能包含目标位置的矩形框,再对每个矩形框进行分类和回归从而确定目标的准确位置,参考RCNN。那么能否直接利用回归的思路从图像的四个角点,逐渐得到目标的最小外接矩形框和类别呢? 创新点: 通过从图像的四个角点,逐步迭代的方式,每次计算一个缩小的方向,并缩小指定的距离来使得逐渐逼近目标。作者还提出了针对多目标情况的处理方式。 参考博客: 论文题目:Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition 提出时间:2014年 论文地址: 针对问题: 如RCNN会将输入的目标图像块处理到同一尺寸再输入进CNN网络,在处理过程中就造成了图像块信息的损失。在实际的场景中,输入网络的目标尺寸很难统一,而网络最后的全连接层又要求输入的特征信息为统一维度的向量。作者就尝试进行不同尺寸CNN网络提取到的特征维度进行统一。创新点: 作者提出的SPPnet中,通过使用特征金字塔池化来使得最后的卷积层输出结果可以统一到全连接层需要的尺寸,在训练的时候,池化的操作还是通过滑动窗口完成的,池化的核宽高及步长通过当前层的特征图的宽高计算得到。原论文中的特征金字塔池化操作图示如下。 参考博客 : 论文题目:Object detection via a multi-region & semantic segmentation-aware CNN model 提出时间:2015年 论文地址: 针对问题: 既然第三篇论文multibox算法提出了可以用CNN来实现输入图像中待检测目标的定位,本文作者就尝试增加一些训练时的方法技巧来提高CNN网络最终的定位精度。创新点: 作者通过对输入网络的region进行一定的处理(通过数据增强,使得网络利用目标周围的上下文信息得到更精准的目标框)来增加网络对目标回归框的精度。具体的处理方式包括:扩大输入目标的标签包围框、取输入目标的标签中包围框的一部分等并对不同区域分别回归位置,使得网络对目标的边界更加敏感。这种操作丰富了输入目标的多样性,从而提高了回归框的精度。 参考博客 : 论文题目:Fast-RCNN 提出时间:2015年 论文地址: 针对问题: RCNN中的CNN每输入一个图像块就要执行一次前向计算,这显然是非常耗时的,那么如何优化这部分呢? 创新点: 作者参考了SPPNet(第六篇论文),在网络中实现了ROIpooling来使得输入的图像块不用裁剪到统一尺寸,从而避免了输入的信息丢失。其次是将整张图输入网络得到特征图,再将原图上用Selective Search算法得到的目标框映射到特征图上,避免了特征的重复提取。 参考博客 : 论文题目:DeepProposal: Hunting Objects by Cascading Deep Convolutional Layers 提出时间:2015年 论文地址: 主要针对的问题: 本文的作者观察到CNN可以提取到很棒的对输入图像进行表征的论文,作者尝试通过实验来对CNN网络不同层所产生的特征的作用和情况进行讨论和解析。 创新点: 作者在不同的激活层上以滑动窗口的方式生成了假设,并表明最终的卷积层可以以较高的查全率找到感兴趣的对象,但是由于特征图的粗糙性,定位性很差。相反,网络的第一层可以更好地定位感兴趣的对象,但召回率降低。 论文题目:Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks 提出时间:2015年NIPS 论文地址: 主要针对的问题: 由multibox(第三篇)和DeepBox(第四篇)等论文,我们知道,用CNN可以生成目标待检测框,并判定当前框为目标的概率,那能否将该模型整合到目标检测的模型中,从而实现真正输入端为图像,输出为最终检测结果的,全部依赖CNN完成的检测系统呢? 创新点: 将当前输入图目标框提取整合到了检测网络中,依赖一个小的目标框提取网络RPN来替代Selective Search算法,从而实现真正的端到端检测算法。 参考博客 :

目标检测类论文与综述

原文: Scalable Object Detection using Deep Neural Networks——学术范 最近,深度卷积神经网络在许多图像识别基准上取得了最先进的性能,包括ImageNet大规模视觉识别挑战(ILSVRC-2012)。在定位子任务中获胜的模型是一个网络,它预测了图像中每个对象类别的单个边界框和置信度得分。这样的模型捕获了围绕对象的整幅图像上下文,但如果不天真地复制每个实例的输出数量,就无法处理图像中同一对象的多个实例。在这篇论文中提出了一个显著性启发的神经网络检测模型,它预测了一组与类无关的边界框,每个框有一个分数,对应于它包含任何感兴趣的对象的可能性。该模型自然地为每个类处理数量可变的实例,并允许在网络的最高级别上进行跨类泛化。 目标检测是计算机视觉的基本任务之一。一个解决这个问题的通用范例是训练在子图像上操作的对象检测器,并在所有的场所和尺度上以详尽的方式应用这些检测器。这一范例被成功地应用于经过区别训练的可变形零件模型(DPM)中,以实现检测任务的最新结果。对所有可能位置和尺度的穷举搜索带来了计算上的挑战。随着类数量的增加,这个挑战变得更加困难,因为大多数方法都训练每个类单独的检测器。为了解决这个问题,人们提出了多种方法,从检测器级联到使用分割提出少量的对象假设。 关于对象检测的文献非常多,在本节中,我们将重点讨论利用类不可知思想和解决可伸缩性的方法。 许多提出的检测方法都是基于基于部件的模型,最近由于有区别学习和精心设计的特征,已经取得了令人印象深刻的性能。然而,这些方法依赖于在多个尺度上详尽地应用零件模板,这是非常昂贵的。此外,它们在类的数量上是可伸缩的,这对像ImageNet这样的现代数据集来说是一个挑战。 为了解决前一个问题,Lampert等人使用分支绑定策略来避免计算所有可能的对象位置。为了解决后一个问题,Song et al.使用了一个低维部件基,在所有对象类中共享。基于哈希算法的零件检测也取得了良好的结果。 另一种不同的工作,与我们的工作更接近,是基于对象可以本地化的想法,而不必知道它们的类。其中一些方法建立在自底向上无阶级分割[9]的基础上。通过这种方式得到的片段可以使用自上而下的反馈进行评分。基于同样的动机,Alexe等人使用一种廉价的分类器对对象假设是否为对象进行评分,并以这种方式减少了后续检测步骤的位置数量。这些方法可以被认为是多层模型,分割作为第一层,分割分类作为后续层。尽管它们编码了已证明的感知原理,但我们将表明,有更深入的模型,充分学习可以导致更好的结果。 最后,我们利用了DeepLearning的最新进展,最引人注目的是Krizhevsky等人的工作。我们将他们的边界盒回归检测方法扩展到以可扩展的方式处理多个对象的情况。然而,基于dnn的回归已经被Szegedy等人应用到对象掩模中。最后一种方法实现了最先进的检测性能,但由于单个掩模回归的成本,不能扩展到多个类。 我们的目标是通过预测一组表示潜在对象的边界盒来实现一种与类无关的可扩展对象检测。更准确地说,我们使用了深度神经网络(DNN),它输出固定数量的包围盒。此外,它为每个盒子输出一个分数,表示这个盒子包含一个对象的网络信任度。 为了形式化上述思想,我们将i-thobject框及其相关的置信度编码为最后一网层的节点值: Bounding box: 我们将每个框的左上角和右下角坐标编码为四个节点值,可以写成vectorli∈R4。这些坐标是归一化的w. r. t.图像尺寸,以实现图像绝对尺寸的不变性。每个归一化坐标是由最后一层的线性变换产生的。 Confidence: 置信度:包含一个对象的盒子的置信度得分被编码为单个节点valueci∈[0,1]。这个值是通过最后一个隐藏层的线性变换产生的,后面跟着一个sigmoid。 我们可以组合边界盒位置sli,i∈{1,…K}为一个线性层。同样,我们可以将所有置信区间ci,i∈{1,…K}作为一个s型层的输出。这两个输出层都连接到最后一个隐藏层 在推理时,我们的算法生成kbound盒。在我们的实验中,我们使用ek = 100和K= 200。如果需要,我们可以使用置信分数和非最大抑制在推理时获得较少数量的高置信框。这些盒子应该代表对象。因此,它们可以通过后续的分类器进行分类,实现目标检测。由于盒子的数量非常少,我们可以提供强大的分类器。在我们的实验中,我们使用另一个dnn进行分类。 我们训练一个DNN来预测每个训练图像的边界框及其置信度得分,以便得分最高的框与图像的groundtruth对象框很好地匹配。假设对于一个特定的训练例子,对象被标记为boundingboxesgj,j∈{1,…,M}。在实践中,pre- dictionary的数量远远大于groundtruthboxm的数量。因此,我们试图只优化与地面真实最匹配的预测框子集。我们优化他们的位置,以提高他们的匹配度,最大化他们的信心。与此同时,我们将剩余预测的置信度最小化,这被认为不能很好地定位真实对象。为了达到上述目的,我们为每个训练实例制定一个分配问题。Wexij∈{0,1}表示赋值:xij= 1,如果第i个预测被赋值给第j个真对象。这项任务的目标可以表示为 其中,我们使用标准化边界框坐标之间的el2距离来量化边界框之间的不同。此外,我们希望根据分配x优化盒子的可信度。最大化指定预测的置信度可以表示为  最终的损失目标结合了匹配损失和信心损失 受式1的约束。α平衡了不同损失条款的贡献。 对于每个训练例子,我们通过解决一个最佳的赋值x*的预测到真实的盒子 约束执行赋值解决方案。这是二部匹配的一种变体,是一种多项式复杂度匹配。在我们的应用程序中,匹配是非常便宜的——每幅图像中标记的对象的数量少于一打,而且在大多数情况下只有很少的对象被标记。然后,通过反向传播优化网络参数。例如,反向传播算法的一阶导数计算w、r、t、l和c 尽管上述定义的损失在原则上是足够的,但三次修改使其有可能更快地达到更好的准确性。第一个修改是对地面真实位置进行聚类,并找到这样的聚类/质心,我们可以使用这些聚类/质心作为每个预测位置的先验。因此,鼓励学习算法为每个预测位置学习一个残差到一个先验。 第二个修改涉及到在匹配过程中使用这些先验:不是将N个groundtruth位置与K个预测进行匹配,而是在K个先验和groundtruth之间找到最佳匹配。一旦匹配完成,就会像之前一样计算目标的置信度。此外,位置预测损失也不变:对于任何一对匹配的(目标,预测)位置,其损失定义为groundtruth和对应于匹配先验的坐标之间的差值。我们把使用先验匹配称为先验匹配,并假设它促进了预测的多样化。  需要注意的是,尽管我们以一种与类无关的方式定义了我们的方法,但我们可以将它应用于预测特定类的对象盒。要做到这一点,我们只需要在类的边框上训练我们的模型。此外,我们可以预测每个类的kbox。不幸的是,这个模型的参数数量会随着类的数量线性增长。此外,在一个典型的设置中,给定类的对象数量相对较少,这些参数中的大多数会看到很少有相应梯度贡献的训练示例。因此,我们认为我们的两步过程——首先本地化,然后识别——是一个更好的选择,因为它允许使用少量参数利用同一图像中多个对象类型的数据 我们使用的本地化和分类模型的网络架构与[10]使用的网络架构相同。我们使用Adagrad来控制学习速率衰减,128的小批量,以及使用多个相同的网络副本进行并行分布式训练,从而实现更快的收敛。如前所述,我们在定位损失中使用先验——这些是使用训练集上的均值来计算的。我们还使用α = 来平衡局部化和置信度损失。定位器可以输出用于推断的种植区以外的坐标。坐标被映射和截断到最后的图像区域。另外,使用非最大抑制对盒进行修剪,Jaccard相似度阈值为。然后,我们的第二个模型将每个边界框分类为感兴趣的对象或“背景”。为了训练我们的定位器网络,我们从训练集中生成了大约3000万幅图像,并对训练集中的每幅图像应用以下步骤。最后,样品被打乱。为了训练我们的本地化网络,我们通过对训练集中的每一幅图像应用以下步骤,从训练集中生成了大约3000万幅图像。对于每幅图像,我们生成相同数量的平方样本,使样本总数大约为1000万。对于每幅图像,样本被桶状填充,这样,对于0 - 5%、5 - 15%、15 - 50%、50 - 100%范围内的每个比例,都有相同数量的样本,其中被包围框覆盖的比例在给定范围内。训练集和我们大多数超参数的选择是基于过去使用非公开数据集的经验。在下面的实验中,我们没有探索任何非标准数据生成或正则化选项。在所有的实验中,所有的超参数都是通过对训练集。 Pascal Visual Object Classes (VOC)挑战是最常用的对象检测算法基准。它主要由复杂的场景图像组成,其中包含了20种不同的对象类别的边界框。在我们的评估中,我们关注的是2007版VOC,为此发布了一个测试集。我们通过培训VOC 2012展示了结果,其中包含了大约。11000张图片。我们训练了一个100框的定位器和一个基于深度网络的分类器。 我们在一个由1000万作物组成的数据集上训练分类器,该数据集重叠的对象至少为 jaccard重叠相似度。这些作物被标记为20个VOC对象类中的一个。•2000万负作物与任何物体盒最多有个Jaccard相似度。这些作物被贴上特殊的“背景”类标签。体系结构和超参数的选择遵循。 在第一轮中,定位器模型应用于图像中最大-最小中心方形作物。作物的大小调整到网络输入大小is220×220。单次通过这个网络,我们就可以得到上百个候选日期框。在对重叠阈值为的非最大抑制后,保留评分最高的前10个检测项,并通过21路分类器模型分别通过网络进行分类。最终的检测分数是给定盒子的定位分数乘以分类器在作物周围的最大方形区域上评估的分数的乘积。这些分数通过评估,并用于计算精确查全曲线。 首先,我们分析了本地化器在隔离状态下的性能。我们给出了被检测对象的数量,正如Pascal检测标准所定义的那样,与生成的包围框的数量相对比。在图1中,我们展示了使用VOC2012进行训练所获得的结果。此外,我们通过使用图像的最大中心面积(max-center square crop)作为输入以及使用两个尺度(second scale)来给出结果:最大中心面积(max-center crop)的第二个尺度(select3×3windows的大小为图像大小的60%)正如我们所看到的,当使用10个边界框的预算时,我们可以用第一个模型本地化的对象,用第二个模型本地化48%的对象。这显示出比其他报告的结果更好的性能,例如对象度算法达到42%[1]。此外,这个图表显示了在不同分辨率下观察图像的重要性。虽然我们的算法通过使用最大中心作物获得了大量的对象,但当使用更高分辨率的图像作物时,我们获得了额外的提升。进一步,我们用21-way分类器对生成的包围盒进行分类,如上所述。表1列出了VOC 2007的平均精度(APs)。达到的平均AP是,与先进水平相当。注意,我们的运行时间复杂度非常低——我们只使用top10框。示例检测和全精度召回曲线分别如图2和图3所示。值得注意的是,可视化检测是通过仅使用最大中心方形图像裁剪,即使用全图像获得的。然而,我们设法获得了相对较小的对象,例如第二行和第二列的船,以及第三行和第三列的羊。 在本工作中,我们提出了一种新的方法来定位图像中的对象,该方法可以预测多个边界框的时间。该方法使用深度卷积神经网络作为基本特征提取和学习模型。它制定了一个能够利用可变数量的groundtruth位置的多箱定位成本。在“一个类一个箱”方法的情况下,对1000个盒子进行非max-suppression,使用与给定图像中感兴趣的DeepMulti-Box方法相同的准则,并学习在未见图像中预测这些位置。 我们在VOC2007和ILSVRC-2012这两个具有挑战性的基准上给出了结果,在这两个基准上,所提出的方法具有竞争力。此外,该方法能够很好地预测后续分类器将探测到的位置。我们的结果表明,deepmultibox的方法是可扩展的,甚至可以在两个数据集之间泛化,就能够预测感兴趣的定位,甚至对于它没有训练的类别。此外,它能够捕获同一类物体的多种情况,这是旨在更好地理解图像的算法的一个重要特征。 在未来,我们希望能够将定位和识别路径折叠到一个单一的网络中,这样我们就能够在一个通过网络的一次性前馈中提取位置和类标签信息。即使在其当前状态下,双通道过程(本地化网络之后是分类网络)也会产生5-10个网络评估,每个评估的速度大约为1个CPU-sec(现代机器)。重要的是,这个数字并不与要识别的类的数量成线性关系,这使得所提出的方法与类似dpm的方法非常有竞争力。

每一个检测任务都有其特有的检测难点,比如背景复杂,目标尺度变化大,颜色对比度低等挑战,这就导致某个检测算法在检测任务A上可能表现SOTA,但在检测任务B上表现得可能不尽如人意。因此,分析研究每一个检测任务存在的难点与挑战至关重要,这有利于我们针对不同的检测难点设计出不同的技术以解决该项问题,从而使得我们提出的算法能够在特定的任务上表现SOTA。 目标检测任务可能存在的检测难点与挑战: (1)待检测目标尺寸很小,导致占比小,检测难度大 (2)待检测目标尺度变化大,网络难以提取出高效特征 (3)待检测目标所在背景复杂,噪音干扰严重,检测难度大 (4)待检测目标与背景颜色对比度低,网络难以提取出具有判别性的特征 (5)各待检测目标之间数量极度不均衡,导致样本不均衡 (6)检测算法的速度与精度难以取得良好平衡 不同尺度,不同形状物体的检测是目标检测面临的主要挑战之一,而多尺度检测技术是解决多尺度问题的主要技术手段。目标检测发展的几十年来,多尺度检测技术的演变经历了以下过程: (1)Feature pyramids and sliding windows(2014年前) (2)Detection with object proposals(2010-2015年) (3)Deep regression(2013-2016年) (4)Multi-reference detection(2015年后) (5)Multi-resolution detection(2016年后) 如下图5展示了多尺度检测技术的演变历程: 边框回归(The Bounding Box regression,BB)是目标检测非常重要的技术。它的目的是根据初始设定的anchor box来进一步改进修正预测框的位置。目标检测发展的几十年来,边框回归技术的演变经历了以下过程: (1)Without BB regression(2008年之前) (2)From BB to BB(2008-2013年) (3)From feature to BB(2013年后) 如下图展示了边框回归技术的演变历程 目标检测领域中每一个目标都被周围背景所包围,而我们对于一个目标的认知会根据其周围的环境作出判断,于是我们将目标周围的环境信息称作上下文信息。上下文可以作为网络判断目标类别和定位的重要辅助信息,可大大提高网络检测的精度。为网络提取上下文信息有以下三种常用的方法: (1)提取局部上下文信息用于目标检测 (2)提取全局上下文信息用于目标检测 (3)上下文信息交互提取高效上下文信息用于目标检测 如下图展示了上下文信息提取技术的演变历程: 目标检测的过程中在同一目标的位置上会产生大量的候选框,这些候选框相互之间可能会有重叠,此时我们需要利用非极大值抑制找到最佳的目标边界框,消除冗余的边界框。非极大值抑制算法的流程如下: (1)根据置信度得分进行排序; (2)选择置信度最高的比边界框添加到最终输出列表中,将其从边界框列表中删除; (3)计算所有边界框的面积; (4)计算置信度最高的边界框与其它候选框的IoU; (5)删除IoU大于阈值的边界框; (6)重复上述过程,直至边界框列表为空。 近年来非极大值抑制算法逐渐发展成为以下三条路线: (1)Greedy selection (2)Bounding box aggregation (3)Learning to NMS 如下图展示了非极大值抑制算法的技术演变历程: 目标检测的训练过程本质上还是一个样本数据不平衡的学习过程,因为检测算法中需要用到很多检测框,而真正包含目标的检测框占比却极少。在网络训练过程中,大量简单的负样本(背景)会主导学习方向而不利于网络往正确的方向加以优化,因此这需要采取一定的策略来解决这一问题。难分负样本挖掘(Hard Negative Mining, HNM)技术正是解决训练过程中的数据不平衡问题的一项关键技术。 难分负样本挖掘技术的演变主要经历了以下过程: (1)Bootstrap (2)HNM in deep learning based detectors 如下图展示了难分负样本挖掘技术的演变历程:

目标检测的综述论文怎么写

综述性论文写法如下:

一、标题

文献综述的标题一般多是在设计(论文)选题的标题后加“文献综述”字样。

二、提要或前言

此部分一般不用专设标题,而是直接作为整个文献综述的开篇部分。内容是简要介绍本课题研究的意义;将要解决的主要问题;如果本课题涉及到较前沿的理论,还应对该理论进行简要介绍;最后要介绍研究者搜集的资料范围及资料来源。

三、正文

这是论文文献综述的核心部分。应在归类整理的基础上,对自己搜集到的有用资料进行系统介绍。撰写此部分时还应注意以下两点:

1、对已有成果要分类介绍,各类之间用小标题区分。

2、既要有概括的介绍,又要有重点介绍。根据自己的分类,对各类研究先做概括介绍,然后对此类研究中具有代表性的成果进行重点介绍。

四、总结

对上述研究成果的主要特点、研究趋势及价值进行概括与评价。此部分应着重点明本课题已有的研究基础(已有成果为自己的研究奠定了怎样的基础或从中受到怎样的启发)与尚存的研究空间(本课题已有研究中存在的空白或薄弱环节)。

五、参考文献

要求列出的参考文献不少于15篇,且外文文献不少于3篇,并按论文中的参考文献的格式将作者名、文献名、文献出处、时间等信息全面标示出来。

毕业论文文献综述的写作要求为了促使学生熟悉更多的专业文献资料,进一步强化学生搜集文献资料的能力,提高对文献资料的归纳,分析,综合运用能力及独立开展科研活动的能力,现对本科学生的毕业设计(论文)提出文献综述的写作要求,具体要求如下:一,文献综述的概念文献综述是针对某一研究领域或专题搜集大量文献资料的基础上,就国内外在该领域或专题的主要研究成果,最新进展,研究动态,前沿问题等进行综合分析而写成的,能比较全面地反映相关领域或专题历史背景,前人工作,争论焦点,研究现状和发展前景等内容的综述性文章."综"是要求对文献资料进行综合分析,归纳整理,使材料更精练明确,更有逻辑层次;"述"就是要求对综合整理后的文献进行比较专门的,全面的,深入的,系统的评述.二,撰写文献综述的基本要求文献综述主要用以介绍与主题有关的详细资料,动态,进展,展望以及对以上方面的评述.其撰写格式一般包含以下内容:即题目,前言,主题,总结和参考文献.撰写文献综述时可按照以上几部分内容拟写提纲,再根据提纲进行撰写工作(忌用前言,主题,总结字样作为综述开篇语).前言部分,主要是说明写作的目的,介绍有关的概念及定义以及综述的范围,简明扼要地说明有关主题的现状或争论焦点,使读者对全文要叙述的问题有一个初步的轮廓.主题部分,是综述的主体,其写法多样,没有固定的格式.可按年代顺序综述,也可按不同的问题进行综述,还可按不同的观点进行比较综述,不管用那一种格式综述,都要将所搜集到的文献资料进行归纳,整理及分析比较,阐明有关主题的历史背景,现状和发展方向,以及对这些问题的评述.主题部分应特别注意代表性强,具有科学性和创造性的文献引用和评述.总结部分,将全文主题进行总结,提出自己的见解并对进一步的发展方向做出预测.参考文献,它不仅表示对被引用文献作者的尊重及引用文献的依据,而且也为评审者审查提供查找线索.参考文献的编排应条目清楚,查找方便,内容准确无误.参考文献的书写格式与毕业论文要求相同.三,撰写文献综述的基本注意事项1. 在文献综述时,应系统地查阅与自己的研究方向直接相关的国内外文献.搜集文献应尽量全,尽量选自学术期刊或学术会议.掌握全面,大量的文献资料是写好综述的前提.2. 文献综述的题目不宜过大,范围不宜过宽,这样撰写时易于归纳整理.3. 注意引用文献的代表性,可靠性和科学性.在搜集到的文献中可能出现观点雷同,或可靠性及科学性方面存在着差异,因此在引用文献时应注意选用代表性,可靠性和科学性较好的文献.4. 在文献综述中,应说明自己研究方向的发展历史,前人的主要研究成果,存在的问题及发展趋势等.文献综述在逻辑上要合理,即做到由远而近先引用关系较远的文献,最后才是关联最密切的文献.要围绕主题对文献的各种观点作比较分析,不要教科书式地将有关的理论和学派观点简要地汇总陈述一遍.评述(特别是批评前人不足时)要引用原作者的原文,防止对原作者论点的误解.5. 文献综述要条理清晰,文字通顺简练.采用的文献中的观点和内容应注明来源,模型,图表,数据应注明出处.6. 文献综述中要有自己的观点和见解.鼓励学生多发现问题,多提出问题,并指出分析,解决问题的可能途径.

论文的综述一般分为四个部分,以下就是一些写论文综述的一些要求:

1、前言:论文的综述也是需要写前言的,前言需要写出写作的目的以及介绍有关的概念和综述的一写范围等等,一般需要些200-300字左右。

2、主体:主体部分也就是论文综述的正文部分,这个部分需要写2500字左右,这个部分的写法不一,但是要写出自己参考的文献的归纳与总结、阐明一些历史背景和研究现状以及评述一些问题。

3、总结:这个部分一般需要写200-300字,这个部分需要写出对主体部分的一些总结、对主体部分的一些评价然后在提出接了,这里需要有自己的观点和一些个人见解。

4、参考文献:这个部分就是需要将自己所参考的一些文献一一列举出来,通常会被要求不低于20篇文献。

注意。

通常论文的综述是不需要进行查重的,但是具体的要求还是要看学校是否规定要查重论文的综述部分。而且论文的综述一般是以附件的形式附在论文的最后的,如果要求查重的话,直接将其上传至查重系统查重就可以了。就算是需要查重,这个部分的查重率是不会计入最终的论文查重结果里面的。

撰写文献综述步骤:

1、搜索相关文献

2、评价来源

3、识别主题、辩论和差距

4、概述结构

5、写文献综述

ocr检测论文综述

公式和图表 没事 引用不能太高点我名字看空间 有介绍有的同学问:“我明明引用了别人的段落或句子,为什么没有检测出来?”也有的同学问:“我的引用标注了出处,为什么还算抄袭?”首先,引用算不算抄袭,与标注出处没有任何关系,引用能不能检测出来,与系统准不准确也没有关系。所有这些都靠系统的阀值来决定。中国知网对该套检测系统的灵敏度设置了一个阀值,该阀值为3%,以段落(或章节)的字数来计算,单篇文献低于3%的抄袭或引用是检测不出来的,这种情况常见于大段文字中的小句或者小概念。举个例子:假如检测段落1(第一章)有10000字,那么引用A文献300字(10000乘以3%=300)以内,是不会被检测出来的。若引用B文献超过300字,那么B文献分布于第一章中的抄袭都会被红字标注,不管位于第一章何处,即使打断成句子,只要超过20字就会被标注。①实际上这里也告诉同学们一个修改的方法,就是对段落抄袭千万不要选一篇文章来引用,尽可能多的选择多篇文献,一篇截取几句,这样是不会被检测出来的。②关于一些同学问引用的为什么也算抄袭,这里主要是因为知网的阀值问题,高于3%的统一算抄袭,也就是说引用于抄袭的临界就在3%之间。一旦你超标,即使你标注了引用也无济于事。所以请同学们注意。我们举例说明:某篇论文第一章有5000字,那么第一章中,我们就只能引用A文献150字以下,否则会被系统认为是抄袭。第二章4000字,那么我们只能引用A文献120字以下,否则会被系统认为是抄袭。第三章8000字,第四章7000字,分别为240字以下和210字以下,以此类推。综上所述,引用超标的计算方式是按章计算,这与抄袭的计算方式是一样的。

姓名:吴兆阳  学号: 转自机器人学习研究会 嵌牛导读:OCR(Optical Character Recognition,光学字符识别)的概念早于1920年代便被提出,一直是模式识别领域中重要的研究方向。近年来,随着移动设备的快速更新迭代,以及移动互联网的快速发展,使得OCR有更为广泛的应用场景,从以往的扫描文件的字符识别,到现在应用到自然场景中图片文字的识别,如识别身份证、银行卡、门牌、票据及各类网络图片中的文字。 嵌牛鼻子:ORC技术 嵌牛提问:什么是ORC,如何使用? 嵌牛正文: 以深度学习兴起的时间为分割点,直至近五年之前,业界最为广泛使用的仍然是传统的OCR识别技术框架,而随着深度学习的崛起,基于这一技术的OCR识别框架以另外一种新的思路迅速突破了原有的技术瓶颈(如文字定位、二值化和文字分割等),并已在工业界得到广泛应用。 笔者针对业务中的身份证照片文字识别需求分别尝试了传统OCR识别框架及基于深度学习的OCR识别框架。下面就以身份证文字识别为例分别简要介绍两种识别框架。 传统OCR技术框架 如上图所示,传统OCR技术框架主要分为五个步骤: 首先文本定位,接着进行倾斜文本矫正,之后分割出单字后,并对单字识别,最后基于统计模型(如隐马尔科夫链,HMM)进行语义纠错。可按处理方式划分为三个阶段:预处理阶段、识别阶段和后处理阶段。其中关键在于预处理阶段,预处理阶段的质量直接决定了最终的识别效果,因此这里详细介绍下预处理阶段。 预处理阶段中包含了三步: 定位图片中的文字区域,而文字检测主要基于连通域分析的方法,主要思想是利用文字颜色、亮度、边缘信息进行聚类的方式来快速分离文字区域与非文字区域,较为流行的两个算法分别是:最大极值稳定区域(MSER)算法及笔画宽度变换(SWT)算法,而在自然场景中因受到光照强度、图片拍摄质量和类文字背景的干扰,使得检测结果中包含非常多的非文字区域,而目前从候选区域区分出真正文字区域主要两种方法,用规则判断或轻量级的神经网络模型进行区分; 文本区域图像矫正,主要基于旋转变换和仿射变换; 行列分割提取出单字,这一步利用文字在行列间存在间隙的特征,通过二值化并在投影后找出行列分割点,当在文字与背景的区分度较好时,效果很好,而拍摄的图片中光照、摄像质量的影响,并且文字背景难以区分时,常造成错误分割的情况。 下面介绍基于传统OCR框架处理身份证文字识别: 身份证识别技术流程与上述框架稍微有所差异。对该问题,已知先验信息:a.证件长宽固定;b.字体及大小一致;c.文本相对于证件位置固定;d.存在固定文字。因此,处理该问题的思路为:先定位目标物体(证件),矫正后提取文字进行识别,最后进行语义纠错,如下图: 目标物体定位并矫正。基于现有的先验信息,定位最后的方法为采用模板关键点特征匹配的方法,并利用模板上特征点及目标图像特征点坐标之间的关系进行透视变换,以定位目标物体,如下图所示。接着,基于四角的坐标,进行旋转、仿射、尺寸的变换,并提取出目标物体的俯视图。 因文字位置相对固定,接着便分割出文字区域,二值化后,行列分割出单个字符。这里的技术难点在于二值化,二值化效果的好坏直接影响字符分割,并最终影响识别结果。受光照和拍摄质量的影响,全局二值化难以设置统一的阈值,而自适应二值化算法易受到阴影及模糊边界的干扰。所以在这边尝试过许多方法,测试下来未发现在任何情形下效果都满足要求的方法。 分割出单字后接着用分类器进行识别,并在这步基于统计上的先验信息定义了一个简单的优化函数,可看做1-gram语言模型。先验信息为:2400(总共660273)汉字的使用频率之和为99%以上。定义的优化函数为: 式中,Pi为该字出现的概率,confi为置信度值。 下图给出了示例: 因上述的优化过程中假定各状态相互独立并与上一状态没有联系,故不可避免存在语义上的错误。而如何基于现有的输出序列,对序列进行语义上的修正,那么最直观的想法就是用隐马尔可夫模型(Hidden Markov Model,HMM)解决这个问题,其基于观察序列,求出最优隐序列。其可以抽象为如下图的过程。在给定O序列情况下,通过维特比算法,找出最优序列S: 传统OCR冗长的处理流程以及大量人工规则的存在,使得每步的错误不断累积,而使得最终识别结果难以满足实际需求。接下来讨论基于深度学习的OCR。 基于深度学习的OCR识别框架 目前,从技术流程上来说,主要分为两步,首先是检测出图像中的文本行,接着进行序列识别。 可见,基于深度学习的OCR识别框架相比于传统OCR识别框架,减少了三个步骤,降低了因误差累积对最终识别结果的影响。 文本行检测,其又可分为水平行文字检测算法与倾斜文字行检测算法。这里主要介绍下Tian提出算法CTPN,其算法框架如下图。主要思路是将文本行识别看做一个序列识别问题,不同于一般的目标检测问题,引入RNN来利用上下文的信息。 具体流程为: 用VGG16的5个卷积层得到特征图(feature map,W*H*C); 在Conv5的feature map的每个位置上取3*3*C的窗口的特征,这些特征将用于预测该位置k个anchor(anchor的定义和Faster RCNN类似)对应的类别信息,位置信息; 将每一行的所有窗口对应的3*3*C的特征(W*3*3*C)输入到RNN(BLSTM)中,得到W*256的输出; 将RNN的W*256输入到512维的fc层; fc层特征输入到三个分类或者回归层中。第二个2k scores 表示的是k个anchor的类别信息(是字符或不是字符)。第一个2k vertical coordinate和第三个k side-refinement是用来回归k个anchor的位置信息。2k vertical coordinate表示的是bounding box的高度和中心的y轴坐标(可以决定上下边界),k个side-refinement表示的bounding box的水平平移量。这边注意,只用了3个参数表示回归的bounding box,因为这里默认了每个anchor的width是16,且不再变化(VGG16的conv5的stride是16)。回归出来的box如中那些红色的细长矩形,它们的宽度是一定的; 用简单的文本线构造算法,把分类得到的文字的proposal(图(b)中的细长的矩形)合并成文本线。 上图为给出基于CTPN的例子,框线部分是算法识别出的文字行,可见在图片光照不均、人工合成及文字背景对比不明显的情形下均有很好的效果。 相比于传统文字定位方法,具有更好的鲁棒性及明显的优势。 文字行识别。近两年比较受关注的主要有两种,一种是CNN+RNN+CTC的方法,另外一种是用attention model+CNN+RNN的方法。这里主要介绍下CNN+RNN+CTC,算法框架由图给出。分为三层,CNN层、RNN层及解码(transcription)层。在CNN层,用于提取图像特征,利用Map-to-Sequence表示成特征向量;在RNN层,用双向LSTM识别特征向量,得到每列特征的概率分布;在解码层,利用CTC和前向后向算法求解最优的label序列。因此,该方法能够识别不定长的文字行。 两个例子: Out:辽宁省长海县广鹿乡沙尖 Out:河南省邓州市九龙乡姚营

知网查重时能否检测到公式归结于提交论文格式Word还是PDF。Word就检查不出重复,PDF就有可能检测到重复。个人认为提交Word是最准确、最科学、最合理的检测方法。知网查重可以到一些知网自助查重网站:PaperEasy、学术不端网、蚂蚁查重网等,全程自助检测,安全!

论文在中国知网检测,公式,图表,有标注的引用部分算在重复率中吗?当然会算的!一般而言,无论是高校还是杂志社在对论文进行知网查重过程中,主要考虑的是论文的去除引用文献的重复率部分,这也可以在知网检测报告当中体现出来,知网报告当中有一个全文的重复率部分,还有一个部分是去除引用文献的重复率部分,因此,一般而言,即使论文作者对其他论文进行引用,只要引用格式正确,一般都会被知网论文查重软件自动识别为引用部分,以绿色字体标注,在去除引用文献部分的重复率会有所体现。

相关百科

热门百科

首页
发表服务