首页 > 学术期刊知识库 > 目标检测论文合集

目标检测论文合集

发布时间:

目标检测论文合集

原文: 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的方法非常有竞争力。

论文名称: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算法,从而实现真正的端到端检测算法。 参考博客 :

coco数据集目标检测论文

小目标问题在物体检测和语义分割等视觉任务中一直是存在的一个难点,小目标的检测精度通常只有大目标的一半。

CVPR2019论文: Augmentation for small object detection 提到了一些应对小目标检测的方法,笔者结合这篇论文以及查阅其它资料,对小目标检测相关技巧在本文进行了部分总结。

小目标的定义: 在MS COCO数据集中,面积小于 32*32 的物体被认为是小物体。

小目标难以检测的原因: 分辨率低,图像模糊,携带的信息少。由此所导致特征表达能力弱,也就是在提取特征的过程中,能提取到的特征非常少,这不利于我们对小目标的检测。

1、由于小目标面积太小,可以放大图片后再做检测,也就是在尺度上做文章,如FPN(Feature Pyramid Networks for Object Detection),SNIP(An Analysis of Scale Invariance in Object Detection – SNIP)。

Feature-Fused SSD: Fast Detection for Small Objects, Detecting Small Objects Using a Channel-Aware Deconvolutional Network 也是在多尺度上做文章的论文。

2、在Anchor上做文章(Faster Rcnn,SSD, FPN都有各自的anchor设计),anchor在设置方面需要考虑三个因素:

anchor的密度: 由检测所用feature map的stride决定,这个值与前景阈值密切相关。

anchor的范围: RetinaNet中是anchor范围是32~512,这里应根据任务检测目标的范围确定,按需调整anchor范围,或目标变化范围太大如MS COCO,这时候应采用多尺度测试。

anchor的形状数量: RetinaNet每个位置预测三尺度三比例共9个形状的anchor,这样可以增加anchor的密度,但stride决定这些形状都是同样的滑窗步进,需考虑步进会不会太大,如RetinaNet框架前景阈值是时,一般anchor大小是stride的4倍左右。

该部分anchor内容参考于:

3、在ROI Pooling上做文章,文章SINet: A Scale-Insensitive Convolutional Neural Network for Fast Vehicle Detection 认为小目标在pooling之后会导致物体结构失真,于是提出了新的Context-Aware RoI Pooling方法。

4、用生成对抗网络(GAN)来做小目标检测:Perceptual Generative Adversarial Networks for Small Object Detection。

1、从COCO上的统计图可以发现,小目标的个数多,占到了,但是含有小目标的图片只有,大目标所占比例为,但是含有大目标的图像却有。这说明有一半的图像是不含小目标的,大部分的小目标都集中在一些少量的图片中。这就导致在训练的过程中,模型有一半的时间是学习不到小目标的特性的。

此外,对于小目标,平均能够匹配的anchor数量为1个,平均最大的IoU为,这说明很多情况下,有些小目标是没有对应的anchor或者对应的anchor非常少的,即使有对应的anchor,他们的IoU也比较小,平均最大的IoU也才。

如上图,左上角是一个anchor示意图,右上角是一个小目标所对应的anchor,一共有只有三个anchor能够与小目标配对,且配对的IoU也不高。左下角是一个大目标对应的anchor,可以发现有非常多的anchor能够与其匹配。匹配的anchor数量越多,则此目标被检出的概率也就越大。

实现方法: 1、Oversampling :我们通过在训练期间对这些图像进行过采样来解决包含小对象的相对较少图像的问题(多用这类图片)。在实验中,我们改变了过采样率和研究不仅对小物体检测而且对检测中大物体的过采样效果

2、Copy-Pasting Strategies:将小物体在图片中复制多分,在保证不影响其他物体的基础上,增加小物体在图片中出现的次数(把小目标扣下来贴到原图中去),提升被anchor包含的概率。

如上图右下角,本来只有一个小目标,对应的anchor数量为3个,现在将其复制三份,则在图中就出现了四个小目标,对应的anchor数量也就变成了12个,大大增加了这个小目标被检出的概率。从而让模型在训练的过程中,也能够有机会得到更多的小目标训练样本。

具体的实现方式如下图:图中网球和飞碟都是小物体,本来图中只有一个网球,一个飞碟,通过人工复制的方式,在图像中复制多份。同时要保证复制后的小物体不能够覆盖该原来存在的目标。

网上有人说可以试一下lucid data dreaming Lucid Data Dreaming for Multiple Object Tracking ,这是一种在视频跟踪/分割里面比较有效的数据增强手段,据说对于小目标物体检测也很有效。

基于无人机拍摄图片的检测目前也是个热门研究点(难点是目标小,密度大)。 相关论文: The Unmanned Aerial Vehicle Benchmark: Object Detection and Tracking(数据集) Drone-based Object Counting by Spatially Regularized Regional Proposal Network Simultaneously Detecting and Counting Dense Vehicles from Drone Images Vision Meets Drones: A Challenge(数据集)

1: 2: 3: 4: 5: 6: 7:

|声明:遵循CC BY-SA版权协议     建立在YOLOv1的基础上,经过Joseph Redmon等的改进,YOLOv2和YOLO9000算法在2017年CVPR上被提出,并获得最佳论文提名,重点解决YOLOv1召回率和定位精度方面的误差。在提出时,YOLOv2在多种监测数据集中都要快过其他检测系统,并可以在速度与精确度上进行权衡。     YOLOv2采用Darknet-19作为特征提取网络,增加了批量标准化(Batch Normalization)的预处理,并使用224×224和448×448两阶段训练ImageNet,得到预训练模型后fine-tuning。     相比于YOLOv1是利用FC层直接预测Bounding Box的坐标,YOLOv2借鉴了FSR-CNN的思想,引入Anchor机制,利用K-Means聚类的方式在训练集中聚类计算出更好的Anchor模板,在卷积层使用Anchor Boxes操作,增加Region Proposal的预测,同时采用较强约束的定位方法,大大提高算法召回率。同时结合图像细粒度特征,将浅层特征与深层特征相连,有助于对小尺寸目标的检测。      下图所示是YOLOv2采取的各项改进带了的检测性能上的提升:     YOLO9000 的主要检测网络也是YOLO v2,同时使用WordTree来混合来自不同的资源的训练数据,并使用联合优化技术同时在ImageNet和COCO数据集上进行训练,目的是利用数量较大的分类数据集来帮助训练检测模型,因此,YOLO 9000的网络结构允许实时地检测超过9000种物体分类,进一步缩小了检测数据集与分类数据集之间的大小代沟。     下面将具体分析YOLOv2的各个创新点: BN概述:     对数据进行预处理(统一格式、均衡化、去噪等)能够大大提高训练速度,提升训练效果。BN正是基于这个假设的实践,对每一层输入的数据进行加工。     BN是2015年Google研究员在论文《Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift》一文中提出的,同时也将BN应用到了2014年的GoogLeNet上,也就是Inception-v2。     BN层简单讲就是对网络的每一层的输入都做了归一化,这样网络就不需要每层都去学数据的分布,收敛会更快。YOLOv1算法(采用的是GoogleNet网络提取特征)是没有BN层的,而在YOLOv2中作者为每个卷积层都添加了BN层。     使用BN对网络进行优化,让网络提高了收敛性,同时还消除了对其他形式的正则化(regularization)的依赖,因此使用BN后可以从模型中去掉Dropout,而不会产生过拟合。 BN优点: 神经网络每层输入的分布总是发生变化,加入BN,通过标准化上层输出,均衡输入数据分布,加快训练速度,因此可以设置较大的学习率(Learning Rate)和衰减(Decay); 通过标准化输入,降低激活函数(Activation Function)在特定输入区间达到饱和状态的概率,避免梯度弥散(Gradient Vanishing)问题; 输入标准化对应样本正则化,BN在一定程度上可以替代 Dropout解决过拟合问题。 BN算法:     在卷积或池化之后,激活函数之前,对每个数据输出进行标准化,方式如下图所示:     公式很简单,前三行是 Batch内数据归一化(假设一个Batch中有每个数据),同一Batch内数据近似代表了整体训练数据。第四行引入了附加参数 γ 和 β,此二者的取值算法可以参考BN论文,在此不再赘述。     fine-tuning:用已经训练好的模型,加上自己的数据集,来训练新的模型。即使用别人的模型的前几层,来提取浅层特征,而非完全重新训练模型,从而提高效率。一般新训练模型准确率都会从很低的值开始慢慢上升,但是fine-tuning能够让我们在比较少的迭代次数之后得到一个比较好的效果。     YOLO模型分为两部分,分类模型和检测模型,前者使用在ImageNet上预训练好的模型,后者在检测数据集上fine-tuning。     YOLOv1在预训练时采用的是224*224的输入(在ImageNet数据集上进行),然后在检测的时候采用448*448的输入,这会导致从分类模型切换到检测模型的时候,模型还要适应图像分辨率的改变。     YOLOv2则将预训练分成两步:先用224*224的输入在ImageNet数据集训练分类网络,大概160个epoch(将所有训练数据循环跑160次)后将输入调整到448*448,再训练10个epoch(这两步都是在ImageNet数据集上操作)。然后利用预训练得到的模型在检测数据集上fine-tuning。这样训练得到的模型,在检测时用448*448的图像作为输入可以顺利检测。     YOLOv1将输入图像分成7*7的网格,每个网格预测2个Bounding Box,因此一共有98个Box,同时YOLOv1包含有全连接层,从而能直接预测Bounding Boxes的坐标值,但也导致丢失较多的空间信息,定位不准。     YOLOv2首先将YOLOv1网络的FC层和最后一个Pooling层去掉,使得最后的卷积层可以有更高分辨率的特征,然后缩减网络,用416*416大小的输入代替原来的448*448,使得网络输出的特征图有奇数大小的宽和高,进而使得每个特征图在划分单元格(Cell)的时候只有一个中心单元格(Center Cell)。     为什么希望只有一个中心单元格呢?由于图片中的物体都倾向于出现在图片的中心位置,特别是比较大的物体,所以有一个单元格单独位于物体中心的位置用于预测这些物体。     YOLOv2通过引入Anchor Boxes,通过预测Anchor Box的偏移值与置信度,而不是直接预测坐标值。YOLOv2的卷积层采用32这个值来下采样图片,所以通过选择416*416用作输入尺寸最终能输出一个13*13的特征图。若采用FSRCNN中的方式,每个Cell可预测出9个Anchor Box,共13*13*9=1521个(YOLOv2确定Anchor Boxes的方法见是维度聚类,每个Cell选择5个Anchor Box)。     在FSRCNN中,以一个51*39大小的特征图为例,其可以看做一个尺度为51*39的图像,对于该图像的每一个位置,考虑9个可能的候选窗口:3种面积3种比例。这些候选窗口称为Anchor Boxes。下图示出的是51*39个Anchor Box中心,以及9种Anchor Box示例。 YOLOv1和YOLOv2特征图数据结构: YOLOv1:S*S* (B*5 + C) => 7*7(2*5+20)     其中B对应Box数量,5对应边界框的定位信息(w,y,w,h)和边界框置信度(Confidience)。分辨率是7*7,每个Cell预测2个Box,这2个Box共用1套条件类别概率(1*20)。 YOLOv2:S*S*K* (5 + C) => 13*13*9(5+20)     分辨率提升至13*13,对小目标适应性更好,借鉴了FSRCNN的思想,每个Cell对应K个Anchor box(YOLOv2中K=5),每个Anchor box对应1组条件类别概率(1*20)。     聚类:聚类是指事先没有“标签”而通过某种成团分析找出事物之间存在聚集性原因的过程。即在没有划分类别的情况下,根据数据相似度进行样本分组。     在FSR-CNN中Anchor Box的大小和比例是按经验设定的,然后网络会在训练过程中调整Anchor Box的尺寸,最终得到准确的Anchor Boxes。若一开始就选择了更好的、更有代表性的先验Anchor Boxes,那么网络就更容易学到准确的预测位置。     YOLOv2使用K-means聚类方法类训练Bounding Boxes,可以自动找到更好的宽高维度的值用于一开始的初始化。传统的K-means聚类方法使用的是欧氏距离函数,意味着较大的Anchor Boxes会比较小的Anchor Boxes产生更多的错误,聚类结果可能会偏离。由于聚类目的是确定更精准的初始Anchor Box参数,即提高IOU值,这应与Box大小无关,因此YOLOv2采用IOU值为评判标准,即K-means 采用的距离函数(度量标准) 为: d(box,centroid) = 1 - IOU(box,centroid)     如下图,左边是聚类的簇个数和IOU的关系,两条曲线分别代表两个不同的数据集。分析聚类结果并权衡模型复杂度与IOU值后,YOLOv2选择K=5,即选择了5种大小的Box 维度来进行定位预测。     其中紫色和灰色也是分别表示两个不同的数据集,可以看出其基本形状是类似的。更重要的是,可以看出聚类的结果和手动设置的Anchor Box位置和大小差别显著——结果中扁长的框较少,而瘦高的框更多(更符合行人的特征)。     YOLOv2采用的5种Anchor的Avg IOU是61,而采用9种Anchor Boxes的Faster RCNN的Avg IOU是,也就是说本文仅选取5种box就能达到Faster RCNN的9中box的效果。选择值为9的时候,AVG IOU更有显著提高。说明K-means方法的生成的boxes更具有代表性。     直接对Bounding Boxes求回归会导致模型不稳定,其中心点可能会出现在图像任何位置,有可能导致回归过程震荡,甚至无法收敛,尤其是在最开始的几次迭代的时候。大多数不稳定因素产生自预测Bounding Box的中心坐标(x,y)位置的时候。     YOLOv2的网络在特征图(13*13)的每一个单元格中预测出5个Bounding Boxes(对应5个Anchor Boxes),每个Bounding Box预测出5个值(tx,ty,tw,th,t0),其中前4个是坐标偏移值,t0是置信度结果(类似YOLOv1中的边界框置信度Confidence)。YOLOv2借鉴了如下的预测方式,即当Anchor Box的中心坐标和宽高分别是(xa,ya)和(wa,wh)时,Bounding Box坐标的预测偏移值(tx,ty,tw,th)与其坐标宽高(x,y,w,h)的关系如下:                          tx = (x-xa)/wa ty= (y-ya)/ha tw = log(w/wa) th = log(h/ha)     基于这种思想,YOLOv2在预测Bounding Box的位置参数时采用了如下强约束方法:     上图中,黑色虚线框是Anchor Box,蓝色矩形框就是预测的Bounding Box结果,预测出的Bounding Box的坐标和宽高为(bx,by)和(bw,bh),计算方式如图中所示,其中:对每个Bounding Box预测出5个值(tx,ty,tw,th,t0),Cell与图像左上角的横纵坐标距离为(cx,cy),σ定义为sigmoid激活函数(将函数值约束到[0,1]),该Cell对应的Anchor Box对应的宽高为(pw,ph)。     简而言之,(bx,by)就是(cx,cy)这个Cell附近的Anchor Box针对预测值(tx,ty)得到的Bounding Box的坐标预测结果,同时可以发现这种方式对于较远距离的Bounding Box预测值(tx,ty)能够得到很大的限制。     YOLOv2通过添加一个转移层,把高分辨率的浅层特征连接到低分辨率的深层特征(把特征堆积在不同Channel中)而后进行融合和检测。具体操作是先获取前层的26*26的特征图,将其同最后输出的13*13的特征图进行连接,而后输入检测器进行检测(检测器的FC层起到了全局特征融合的作用),以此来提高对小目标的检测能力。         为了适应不同尺度下的检测任务,YOLOv2在训练网络时,其在检测数据集上fine-tuning时候采用的输入图像的size是动态变化的。具体来讲,每训练10个Batch,网络就会随机选择另一种size的输入图像。因为YOLOv2用到了参数是32的下采样,因此也采用32的倍数作为输入的size,即采用{320,352,…,608}的输入尺寸(网络会自动改变尺寸,并继续训练的过程)。 这一策略让网络在不同的输入尺寸上都能达到较好的预测效果,使同一网络能在不同分辨率上进行检测。输入图片较大时,检测速度较慢,输入图片较小时,检测速度较快,总体上提高了准确率,因此多尺度训练算是在准确率和速度上达到一个平衡。     上表反映的是在检测时,不同大小的输入图片情况下的YOLOv2和其他目标检测算法的对比。可以看出通过多尺度训练的检测模型,在测试的时候,输入图像在尺寸变化范围较大的情况下也能取得mAP和FPS的平衡。     YOLOv1采用的训练网络是GoogleNet,YOLOv2采用了新的分类网络Darknet-19作为基础网络,它使用了较多的3*3卷积核,并把1*1的卷积核置于3*3的卷积核之间,用来压缩特征,同时在每一次池化操作后把通道(Channels)数翻倍(借鉴VGG网络)。     YOLOv1采用的GooleNet包含24个卷积层和2个全连接层,而Darknet-19包含19个卷积层和5个最大池化层(Max Pooling Layers),后面添加Average Pooling层(代替v1中FC层),而Softmax分类器作为激活被用在网络最后一层,用来进行分类和归一化。     在ImageNet数据集上进行预训练,主要分两步(采用随机梯度下降法): 输入图像大小是224*224,初始学习率(Learning Rate)为,训练160个epoch,权值衰减(Weight Decay)为,动量(Momentum)为,同时在训练时采用标准的数据增强(Data Augmentation)方式如随机裁剪、旋转以及色度、亮度的调整。 fine-tuning:第1步结束后,改用448*448输入(高分辨率模型),学习率改为,训练10个epoch,其他参数不变。结果表明:fine-tuning后的top-1准确率为,top-5准确率为,若按照原来的训练方式,Darknet-19的top-1准确率是,top-5准确率为。可以看出,两步分别从网络结构和训练方式方面入手提高了网络分类准确率。     预训练之后,开始基于检测的数据集再进行fine-tuning。         首先,先把最后一个卷积层去掉,然后添加3个3*3的卷积层,每个卷积层有1024个卷积核,并且后面都连接一个1*1的卷积层,卷积核个数(特征维度)根据需要检测的类数量决定。(比如对VOC数据,每个Cell需要预测5个Boungding Box,每个Bounding Box有4个坐标值、1个置信度值和20个条件类别概率值,所以每个单元格对应125个数据,此时卷积核个数应该取125。)     然后,将最后一个3*3*512的卷积层和倒数第2个卷积层相连(提取细粒度特征),最后在检测数据集上fine-tuning预训练模型160个epoch,学习率采用,并且在第60和90个epoch的时候将学习率除以10,权值衰减、动量和数据增强方法与预训练相同。     YOLO9000通过结合分类和检测数据集,使得训练得到的模型可以检测约9000类物体,利用带标注的分类数据集量比较大的特点,解决了带标注的检测数据集量比较少的问题。具体方法是:一方面采用WordTree融合数据集,另一方面联合训练分类数据集和检测数据集。     分类数据集和检测数据集存在较大差别:检测数据集只有粗粒度的标记信息,如“猫”、“狗”,而分类数据集的标签信息则更细粒度,更丰富。比如“狗”就包括“哈士奇”、“金毛狗”等等。所以如果想同时在检测数据集与分类数据集上进行训练,那么就要用一种一致性的方法融合这些标签信息。     用于分类的方法,常用Softmax(比如v2),Softmax意味着分类的类别之间要互相独立的,而ImageNet和COCO这两种数据集之间的分类信息不相互独立(ImageNet对应分类有9000种,而COCO仅提供80种目标检测),所以使用一种多标签模型来混合数据集,即假定一张图片可以有多个标签,并且不要求标签之间独立,而后进行Softmax分类。     由于ImageNet的类别是从WordNet选取的,作者采用以下策略重建了一个树形结构(称为WordTree): 遍历ImageNet的标签,然后在WordNet中寻找该标签到根节点(所有的根节点为实体对象)的路径; 如果路径只有一条,将该路径直接加入到WordTree结构中; 否则,从可选路径中选择一条最短路径,加入到WordTree结构中。 WordTree的作用就在于将两种数据集按照层级进行结合。     如此,在WordTree的某个节点上就可以计算该节点的一些条件概率值,比如在terrier这个节点,可以得到如下条件概率值:     进而,如果要预测此节点的概率(即图片中目标是Norfolk terrier的概率),可以根据WordTree将该节点到根节点的条件概率依次相乘得到,如下式: 其中:             YOLO9000在WordTree1k(用有1000类别的ImageNet1k创建)上训练了Darknet-19模型。为了创建WordTree1k作者添加了很多中间节点(中间词汇),把标签由1000扩展到1369。     训练过程中GroundTruth标签要顺着向根节点的路径传播:为了计算条件概率,模型预测了一个包含1369个元素的向量,而且基于所有“同义词集”计算Softmax,其中“同义词集”是同一概念下的所属词。     现在一张图片是多标记的,标记之间不需要相互独立。在训练过程中,如果有一个图片的标签是“Norfolk terrier”,那么这个图片还会获得“狗”以及“哺乳动物”等标签。     如上图所示,之前的ImageNet分类是使用一个大Softmax进行分类,而现在WordTree只需要对同一概念下的同义词进行Softmax分类。然后作者分别两个数据集上用相同训练方法训练Darknet-19模型,最后在ImageNet数据集上的top-1准确率为,top-5准确率为;在WordTree数据集上的top-1准确率为,top-5准确率为。     这种方法的好处是有“退而求其次”的余地:在对未知或者新的物体进行分类时,性能损失更低,比如看到一个狗的照片,但不知道是哪种种类的狗,那么就预测其为“狗”。     以上是构造WordTree的原理,下图是融合COCO数据集和ImageNet数据集以及生成它们的WordTree的示意图(用颜色区分了COCO数据集和ImageNet数据集的标签节点), 混合后的数据集对应的WordTree有9418个类。另一方面,由于ImageNet数据集太大,YOLO9000为了平衡两个数据集之间的数据量,通过过采样(Oversampling)COCO数据集中的数据,使COCO数据集与ImageNet数据集之间的数据量比例达到1:4。     对YOLO9000进行评估,发现其mAP比DPM高,而且YOLO有更多先进的特征,YOLO9000是用部分监督的方式在不同训练集上进行训练,同时还能检测9000个物体类别,并保证实时运行。虽然YOLO9000对动物的识别性能很好,但是对衣服或者装备的识别性能不是很好(这跟数据集的数据组成有关)。     YOLO9000的网络结构和YOLOv2类似,区别是每个单元格只采用3个Anchor Boxes。     YOLO9000提出了一种在分类数据集和检测数据集上联合训练的机制,即使用检测数据集(COCO)的图片去学习检测相关的信息即查找对象(例如预测边界框坐标、边界框是否包含目标及目标属于各个类别的概率),使用仅有类别标签的分类数据集(ImageNet)中的图片去扩展检测到的对象的可识别种类。     具体方法是:当网络遇到一个来自检测数据集的图片与标记信息,就把这些数据用完整的损失函数(v2和9000均沿用了v1网络的损失函数)反向传播,而当网络遇到一个来自分类数据集的图片和分类标记信息,只用代表分类误差部分的损失函数反向传播这个图片。     YOLO v2 在大尺寸图片上能够实现高精度,在小尺寸图片上运行更快,可以说在速度和精度上达到了平衡,具体性能表现如下所示。 coco数据集 voc2012数据集

论文检测合格标准

论文查重需控制到多少算合格?

一、本科毕业论文。成绩率≤30%的毕业论文通过后,可以申请毕业论文答辩;查重率在30%-50%就会不合格,需要花一周左右时间修改。修订后的检查重现率达30%,可申请答辩。如果不这样做,被申请人将被取消资格;

二、硕士论文。论文查重率在10%~15%之间合格,直接送审或答辩;论文查重率在15%-30%之间,需要修改后进行复查,论文查重率合格以后。

三、博士论文。查重率达5%~10%的直接送审或答辩;查重重率20%,与该核心章节的复读率相结合,论文学术不端行为的类型和性质决定。答辩前,申请修改的期限半年到一年。严重者,取消毕业答辩教师资格。

四、职称期刊论文。初级职称论文查重率30%;25%的中级/省级论文合格;高级/国家级技术职称进行论文查重率(%)为合格;高水平/核心期刊论文题名检出率为8%到15%。

一、本科毕业论文1、查重率≦30%,毕业论文合格,可以申请毕业论文答辩;2、查重率<10%,可以申请评定校级优秀论文;3、查重率<15%,可以申请评定院级优秀论文;4、30%<查重率<50%,查重检测不合格,给予修改时间至少为一周,修改后查重率<30%为通过,可申请答辩,若仍未通过,则取消答辩资格;5、查重率≧50%,查重检测不合格,由学校组织专家对论文进行学术不端行为的评定,若认定存在严重抄袭行为,则取消答辩资格。二、硕士学位论文1、查重率<10%~15%,学位论文合格,直接送审或答辩;2、15%≦查重率≦30%,去导师处填写硕士研究生学位论文重新检测申请表,申请进行论文修改,时间不超过两天,再检测合格后可参与答辩;3、查重率>30%,学位评定小组将结合核心章节的重复率等因素来确定论文学术不端行为的类型和性质,必须认真修改论文并延期半年才能填写重新检测申请表,查重通过后申请答辩,严重的直接取消答辩资格。三、博士学位论文1、查重率<5%~10%,直接送审或答辩;2、查重率>20%,由学位评定小组结合核心章节的重复率等处理意见,确定论文学术不端的类型和性质,延期半年至一年申请修改通过后才能答辩,情节严重者取消答辩资格。四、职称期刊论文1、初级职称论文查重率<30%为合格;2、中级/省级职称论文查重率<25%为合格;3、高级/国家级职称论文查重率<20%为合格;4、高级/核心期刊职称论文查重率<8%-15%为合格。

对毕业生来说,毕业论文答辩会被提上日程,在论文答辩前学校会对论文进行查重,检测的重复率只有在学校规定的范围内才算合格,否则会被要求重写,那么,cnki论文查重率应该低于多少才可以?

本科学士学位论文在百分之三十以下可申请答辩,不足百分之十五可申请学院优秀论文,不足百分之十可申请校级优秀论文,超过百分之三十五可有机会在一周内可以修改,若仍未通过则就需要延期答辩的。

硕士生论文的查重率在20%以下即可直接申请答辩,若低于40%可在两天内进行修改,若修改后仍不能通过可在两天内进行修改,超过40%可在半年内进行修改。

博士学位论文的查重率低于百分之十可申请答辩,超过百分之二十可直接将答辩延期一年或半年。

学校采用的论文查重系统各不相同,论文查重结果也存在一定差异,那是因为每个校考系统的查重系统的范围不同,也就是说收录的资源也有差别,如果你所选的学校查重系统恰好收录了你所写的参考文献,那么校考的重复率要比没有收录的校考的重复率要高,当然不同学校的校考标准各不相同。

资源库也是一个方面查重出的重复率高的原因,那并不一定意味着论文查重检测系统更加精确,因为这里有一个计算规则,连续出现超过十三个字数重复的部分,加上超过查重系统设置的5%的阈值,就会被认为是重复,而系统会将你的文章按特定字数分段,将每段文字中的字数统计到数据库中,并与数据库中的论文进行对比。

本科毕业论文:查重率≦30%,毕业论文合格,可以申请毕业论文答辩;查重率﹤10%,可以申请评定校级优秀论文;查重率﹤15%,可以申请评定院级优秀论文;

30%﹤查重率﹤50%,查重检测不合格,给予修改时间至少为一周,修改后查重率﹤30%为通过,可申请答辩,若仍未通过,则取消答辩资格;

查重率≧50%,查重检测不合格,由学校组织专家对论文进行学术不端行为的评定,若认定存在严重抄袭行为,则取消答辩资格。

论文写完成后,有许多问题需要处理,其中最迫切的问题是论文的重复率检测。毕竟,期刊非常关注检查结果。只有检查结果合格的论文才能发表。那么,期刊要求查重率是多少?下面paperfree给大家介绍一下:

期刊提交的论文查重率不超过30%。如果超过这个值,很可能会退回,期刊分为普通期刊和核心期刊。普通期刊的查重率相对宽松,一般在25%-30%之间,不能超过这个标准。核心技术期刊对提交毕业论文的要求要严格控制得多,一般可以控制在5%-10%之间。

论文查重后,可以根据网页提示选择合适的系统获取查重报告标明论文各部分的查重率,使我们在查重率上的检测结果更加准确,我们可以根据查重报告降低论文的重复。

多传感器融合目标检测论文题目

传感器与检测技术属于自动化专业、电气工程及其自动化专业及过程装备与控制专业的技术基础课程,对学生综合运用所专业学知识有着关键的作用,这是我为大家整理的传感器与检测技术论文,仅供参考!传感器与检测技术论文篇一 传感器与检测技术课程教学探索 摘 要:传感器与检测技术属于自动化专业、电气工程及其自动化专业及过程装备与控制专业的技术基础课程,对学生综合运用所专业学知识有着关键的作用,文中针对课程的特点及现存的问题,对该课程的教学内容调整与 教学 方法 改进进行了有益的探讨,以期获得更好的教学质量与效果。 关键词:传感器与检测技术;教学改革;教学方法 中图分类号:G71 文献标识码:A 文章 编号:1009-0118(2012)05-0132-02 传感器与检测技术是自动化专业、电气工程及其自动化专业及过程装备与控制专业的技术基础课程,主要研究自动检测系统中的信息提取、信息转换及信息处理的理论与技术为主要内容的一门应用技术课程。传感技术是自动检测系统,更是控制系统的前哨,它广泛的应用于各个领域,在在促进生产发展和现代科技进步方面发挥着重要作用。学生学好这门课程不仅能为后续课程打下好的基础,也对学生综合运用所专业学知识有着关键的作用,自从2005年课程教学大纲调整以后,在教学中出现了一些新的问题,原有的传统教学模式很难获得良好的教学质量与效果。 一、课程教学现存的问题 自2005年起我校重新制定了自动化专业的教学大纲,其中将传感器与检测技术由考试课调整为考查课,并将课时由64学时更改为32课时,通过几年的 教学 总结 出该课程在教学中存在的一些困难: (一)教学内容多而散 课程内容多且散,涉及知识面广,有物理学,化学,电子学,力学等等,属于多学科渗透的一门课程,学生学习有难度,特别是对于一些基础不太好的同学更是有困难。 (二)典型应用性 传感器与检测技术属于典型的应用课程,要学习各种传感器的原理,并掌握它的使用,在此基础上掌握搭建检测系统的方法,单靠理论的学习必定是有差距的。而实验课时不充裕,实验条件也有限。 (三)学时越来越少 学校目前对学生的定位是“培养优秀的工程应用型人才”,为了加大实践环节的因此对课程设置与课时作了调整,本课程课时被缩减至32课时。 (四)学生的学习主动性差 由于本课程被定为考查课,所以有相当一部份同学从 学习态度 上不太重视,没有投入必要的精力和时间,学习主动性差,直接影响教学效果。 二、教学内容与教学方法的探索 (一)教学内容的调整 目前大部分的传感器与检测技术的教材多侧重于传感器的工作原理、测量线路及信息处理等方面,而对具体应用涉及较少,针对课程的内容多课时少的情况,教学时无法做到面面俱到,教学内容必须做适当调整。根据学校对工科本科生工程应用型人才的定位,教学内容的调整遵循以下原则: 1、避免繁琐的理论推导过程,以避繁就简的方式向学生讲解传感器的工作原理。例如:用幻灯片演示使用酒精灯分别燃烧热电偶的两端,在两端存在温差的时候两电极间即出现电势差,无温差时电势差消失,通过这个实例讲解电势差之所以存在的原因,可以配以大家能够理解的简单的公式推导,而不把重心放在构成热电偶的温差电动势和接触电动势形成的公式推导上。 2、重点讲述传感器的实物应用。增加实际案例是学生能够对传感器的应用有更感性的认识。 3、适当补充传感器与系统互联的方法。在先期几种传感器的应用中加入传感器接入控制器的方式介绍,使其思考所学课程之间的关联,对所学专业课程之间的联系能更加深入的认识,建立起系统的概念。 (二)教学方法的改革 为了克服课程教学中客观存在的困难,获得良好的教学效果,在课堂教学使用多种教学方法和手段,力求将教学内容讲解得更加生动、具体。 1、采用多媒体技术,使用现代化的教学手段来提升教学效果和教学质量 采用多媒体课件教学,一方面可以省去教师用于黑板板书的大量时间,克服课时减少的问题;另一方面,以动画的形式生动形象的演示传感器的工作原理,展示所学传感器的各种照片、复杂检测系统的原理图或线路图,使学生能够直观地认识传感器,更容易理解传感器的工作原理和应用。例如,学习光栅传感器时,使用传统的教学手段,很难使同学们理解莫尔条文的形成及其移动过程,使用对媒体课件就可以以动画的形式使同学们直观的明暗相间的莫尔条纹是什么样子,还可以以不同的速度使指示光栅在标尺光栅上进行移动,清晰的看出条纹移动的方向与光栅夹角及指示光栅移动方向的关系。学习增量式光电编码器时,很多同学很难理解编码器的辨向问题,通过使用幻灯片展示编码器的内部结构,直接了解光栏板上刻缝、码盘及光电元件的位置关系后,同学们就能更容易的理解辨向码道、增量码道与零位码道形成脉冲的相位关系,佐以简单的辨向电路就可以使同学们更高效的学习该传感器的工作原理及应用方法。 总而言之,利用多媒体技术使学生能够获取更多的信息,增强学习的趣味性和生动性。 2、重视绪论,提升学生的学习主动性 很多教材的绪论写的比较简略,但我个人认为这不代表它不重要,特别是面对学生主观上不重视课程的情况下,更要下大力气上好绪论这第一次课,吸引学生的注意力,激发学习兴趣,使学生认识到这门课程的实用价值。通过幻灯片演示传感器与检测技术在国民经济中的地位和作用,使同学们了解到小到日常生活,大到航空航天、海洋预测等方面都有着传感器与检测技术的应用,更根据各种行业背景中需要检测的物理量,自动控制理论在实现过程中传感器与检测技术的关键作用,使学生认识该课程的重要性。另一方面,我校长年开展本科生科研实训项目,在开设本课程时已有部分同学成功申请实训课题,一般本专业的同学还是围绕专业应用领域申请课题,其中大部分会涉及传感器与检测技术的内容,所以也就他们正在进行的课题中使用传感器解决的具体问题进行讨论,更加直接的体会到本课程的关键作用,从而提升学生学习的兴趣,增强主动性,克服考查课为本课程教学带来的部分阴影。 3、加大案例教学比重、侧重应用 根据培养工程应用型人才的目标,本课程教学的首要目的是使学生能够合理选择传感器,对传感器技术问题有一定的分析和处理能力,知晓传感器的工程设计方法和实验研究方法。所以在教学中注意分析各类传感器的区别与联系,利用大量的具体案例分析传感器的应用特点。 例如,教材中在介绍电阻应变式传感器是,主要是从传感器的结构、工作原理及测量电路几个方面进行分析介绍的,缺乏实际应用案例。在教学中用幻灯片展示不同应用的实物图,譬如轮辐式的地中衡的称重传感器,日常生活中常见的悬臂梁式的电子秤、人体称、扭力扳手等。用生动的动画显示不同应用下的传感器的反应,例如,进行常用传感器热电偶的学习时,展示各种类型热电偶的实物照片,补充热电偶安装的方式,以换热站控制系统为案例,分析热电偶在温度测量上的应用,重点讲解传感器的输出信号及与控制系统互连问题。在介绍光电池传感器时补充用于控制的干手器、用于检测的光电式数字转速表及照度表的应用案例,通过案例是同学们对传感器应用的认识更加深入。 4、利用学校的科研实训提升学生的学习兴趣、加强学生的实践能力 我校学生自二年级起可以开始申请科研实训项目,指导老师指导,学生负责,本课程在学生三年级第一学期开设,在此之前已有部分同学参加了科研实训项目,在这些项目中,譬如智能车项目、数据采集系统实现等实训项目中都包含传感器与检测技术的应用,上课前教师了解这些项目,就可以就实际问题提出问题,让学生带着问题来学习,提升学习的兴趣。另外可以在学习的同时启发同学们集思广益,与实验中心老师联系,联合二年级同学进行传感器的设计制作,或者进入专业实验室进行传感器应用方面的实训实验,鼓励同学申报的科研实训项目,提高学生的实践能力。 三、结束语 通过几年的教学与总结,对教学内容、教学方法进行了分析研究,作了适当的改革。调整的教学内容重点更突出,侧重应用,补充了丰富的案例,激发了学生的学习兴趣,多媒体的教学方法增强了教学的生动性,与科研实训的相结合,对课堂教学进行拓展,加强了学习的主动性,提升了实践能力。从近几年的网上评教结果来看,所做的教学调整与改革受学生的欢迎和好评,取得了较好的教学效果。 参考文献: [1]袁向荣.“传感器与检测技术”课程教学方法探索与实践\[J\].中国电力 教育 ,2010,(21):85-86. [2]陈静.感器与检测技术教学改革探索\[J\].现代教育装备,2011,(15):94-95. [3]周祥才,孟飞.检测技术课程教学改革研究\[J\].常州工学院学报,2010,(12):91-92. [4]张齐,华亮,吴晓.“传感器与检测技术”课程教学改革研究\[J\].中国教育技术装备,2009,(27):42-43. 传感器与检测技术论文篇二 传感器与自动检测技术教学改革探讨 摘要:传感器与自动检测技术是电气信息类专业重要的主干专业课,传统授课方法侧重于理论知识的传授,而忽略了应用层面的培养。针对此问题试图从教学目的、教学内容、教学形式、教学效果等多个方面进行分析,对该课程的教学方案改革进行探讨,提出一套技能与理论知识相结合、行之有效的教学方案。 关键词:传感器与自动检测技术;教学内容;教学模式;工程思维 “传感器与自动检测技术”是电气信息类专业重要的主干专业课,是一门必修课,也是一门涉及电工电子技术、传感器技术、光电检测技术、控制技术、计算机技术、数据处理技术、精密机械设计技术等众多基础理论和技术的综合性技术,现代检测系统通常集光、机、电于一体,软硬件相结合。 “传感器与自动检测技术”课程于20世纪80年代开始在我国普通高校的本科阶段和研究生阶段开设。本课程侧重于传感器与自动检测技术理论的传授,重知识,轻技能;教师之间也缺乏沟通,教学资源不能得到充分利用,教学效果不理想,学生学习兴趣不高。 一、教学过程中发现的问题及改革必要性分析 笔者在独立学院讲授“传感器与自动检测技术”课程已有四年,最开始沿用了研究型大学的教学计划和教学大纲,由于研究型大学是以培养研究型人才为主,而独立学院是以培养应用型人才为主,在人才培养目标上有较大差异,在逐渐深入的过程中发现传统方案不太符合学院培养应用型人才的定位,存在以下几方面的问题。 1.重理论,轻实践 该课程是应用型课程,其中也有大量的理论知识、数学推导,而传统的研究型教学方法普遍都以理论教学为主,在课堂上大篇幅讲解传感器的原理,进行数学公式推导,相比而言传感器的应用通常只是通过一个实例简单介绍,导致最后大多数学生只是粗略地知道该传感器的结构,而不知道如何用,在哪里用。 2.教学模式单一 该课程传统上以讲授的教学方式为主,将现成的结论、公式和定理告诉学生,学生不能主动地思考和探索,过程枯燥乏味,导致学生产生了厌学情绪。同时理论教学与实训、实践教学脱节问题也很严重。 3.教学实验安排不合理 传统的实验课程安排,验证性实验比例高达80%,综合设计性实验极少,缺少实训、实践环节。然而应用型人才的培养应该以实践教学为核心,重点培养学生的工程思维和实践能力、动手能力,以在学生 毕业 时达到企业对技术水平与能力的要求,使学生毕业后能尽快适应工作岗位。 二、适合独立学院培养应用型人才的教学方案改革 传统的传感器与自动检测技术课程重理论、轻实践,教学模式单一,教学实验以验证性实验为主,这种方案能够培养研究型人才,但却无法培养合格的应用型人才。在教学过程中,笔者潜心研习,并反复实践,总结出以下几个可以改革的方面。 1.优化教学内容,注重工程思维 本课程一个很重要的内容是各种类型传感器的原理,传统的教学要讲清楚其中的来龙去脉,而本人则认为针对应用型人才培养,充分讲授清楚基本概念、基本原理和基本方法即可,涉及大额数学公式可以选择重要的进行讲解,其他则可作为学生的自学内容,让学生课余自学。同时应该重点讲解该传感器的工程应用实例;另一方面要结合最新实际工程讲解。这样才能激发学生的学习兴趣,培养学生应用型工程学习思维。 2.改革教学方法,改变教学模式 传统的教学是“灌输式”的方法,无论学生是否接受,直接把要讲的内容全部讲述给学生,而这也违背了培养学生分析问题和解决问题的能力以及创新能力的出发点和归宿。笔者认为应该应用工程案例教学,实行启发式、讨论式、研究式等与实践相结合的教学方法,发挥学生在教学活动中的主体地位。 3.与工程实际相结合,与其他课程相结合 教学过程中要从不同行业提取典型的工程应用实例,精简以后作为实例进行讲解。在进行教学时,要培养学生的系统观,让学生明白这不是一门独立的课程,而是与自动控制原理、智能控制理论等课程相融合的,以达到融会贯通的学习效果。 4.实验环节改革 实验教学主要是为了提高学生的动手能力、分析问题和解决问题的能力,加深学生对课堂教学中理论、概念的感性认识。以往该课程的实验内容大部分为原理性、验证性的实验,学生容易感到枯燥无味,毫无学习积极性,很少有学生进行独立思考并发现问题,实验效果极不理想。为了改变这种模式化的教育,笔者将实验内容由传统的验证性实验调整为设计开发型实验。在实验教学中根据客观条件在适当减少验证性实验的基础上,增加了开拓性实验项目以及设计综合性实验。 5.改革教学评价方法,提高课堂教学效率 高效的学习成果反馈机制是促进教学相长的必要手段,目前该课程都是通过课程作业进行学习效果反馈,可以采用每一个章节布置一道设计型题目,让学生更加广泛地查阅资料,并在一定知识广度的基础上深入分析题目中用到的内容,进而从更深的层面分析解决问题,以达到深度、广度相结合的效果。 本文针对传感器与自动检测技术传统研究型大学的方案,提出了三个方面的问题,并根据四年的教学积累,在教学内容、教学模式、实验环节、教学评价及反馈等几个方面进行了探讨分析并提出了一套改革的方法和 措施 。本方案以实际工程应用实例为核心,在教学内容上侧重于传感器应用方面的讲解,以提出问题、分析问题、解决问题为主线调动学生的学习积极性和主动性,培养学生的工程思维和能力,重视实验环节,以设计性、综合性实验代替验证性实验培养学生将抽象的知识具体化、培养学生的实际应用能力、动手能力和创新能力。 参考文献: [1]吴建平,甘媛.“传感器”课程实验教学研究[J].成都理工大学学报. [2]曹良玉,赵堂春.传感器技术及其应用.课程改革初探[J].中国现代教育装备. [3]李玉华,胡雪梅.传感器及应用.课程教学改革的探讨Ⅱ技术与市场. (作者单位 重庆邮电大学移通学院)

论文名称: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算法,从而实现真正的端到端检测算法。 参考博客 :

微藻素是一种从蓝藻细菌引起的水华中产生的细菌肝毒素,一种固定有表面细胞质粒基因组的生物传感器已经制得,用于测量水中微藻素的含量,它直接的测量范围是50~1000 �0�710-6g/l[22]。一种基于酶的抑制性分析的多重生物传感器用于测量毒性物质的设想也已经提出。在这种多重生物传感器中,应用了两种传导器—对pH敏感的电子晶体管和热敏性的薄膜电极,以及三种酶—尿素酶、乙酰胆碱酯酶和丁酰胆碱酯酶。该生物传感器的性能已经得到测试,效果较好[23]。除了发酵工业和环境监测,生物传感器还深入的应用于食品工程、临床医学、军事及军事医学等领域,主要用于测量葡萄糖、乙酸、乳酸、乳糖、尿酸、尿素、抗生素、谷氨酸等各种氨基酸,以及各种致癌和致变物质。三、 讨论与展望 美国的Harold 指出,生物传感器商品化要具备以下几个条件:足够的敏感性和准确性、易操作、价格便宜、易于批量生产、生产过程中进行质量监测。其中,价格便宜决定了传感器在市场上有无竞争力。而在各种生物传感器中,微生物传感器最大的优点就是成本低、操作简便、设备简单,因此其在市场上的前景是十分巨大和诱人的。相比起来,酶生物传感器等的价格就比较昂贵。但微生物传感器也有其自身的缺点,主要的缺点就是选择性不够好,这是由于在微生物细胞中含有多种酶引起的。现已有报道加专门抑制剂以解决微生物电极的选择性问题。除此之外,微生物固定化方法也需要进一步完善,首先要尽可能保证细胞的活性,其次细胞与基础膜结合要牢固,以避免细胞的流失。另外,微生物膜的长期保存问题也待进一步的改进,否则难于实现大规模的商品化。总之,常用的微生物电极和酶电极在各种应用中各有其优越之处。若容易获得稳定、高活性、低成本的游离酶,则酶电极对使用者来说是最理想的。相反的,若生物催化需经过复杂途径,需要辅酶,或所需酶不宜分离或不稳定时,微生物电极则是更理想的选择。而其他各种形式的生物传感器也在蓬勃发展中,其应用也越来越广泛。随着固定化技术的进一步完善,随着人们对生物体认识的不断深入,生物传感器必将在市场上开辟出一片新的天地。

传感器在环境检测中可分为气体传感器和液体传感器,这是我为大家整理的传感器检测技术论文,仅供参考!

试述传感器技术在环境检测中的应用

摘要:传感器在环境检测中可分为气体传感器和液体传感器,其中气体传感器主要检测氮氧化合物和含硫氧化物;液体传感器主要检测重金属离子、多环芳香烃类、农药、生物来源类。本文阐述了传感器技术在环境检测方面的应用。

关键词:气体传感器 液体传感器 环境检测

中图分类号:O659 文献标识码:A 文章编号:

随着人们对环境质量越加重视,在实际的环境检测中,人们通常需要既能方便携带,又可以够实现多种待测物持续动态监测的仪器和分析设备。而新型的传感器技术就能够很好的满足上述需求。

传感器技术主要包括两个部分:能与待测物反应的部分和信号转换器部分。信号转换器的作用是将与待测物反应后的变化通过电学或光学信号表示出来。根据检测方法的不同,我们将传感器分为光学传感器和电化学传感器;根据反应原理的不同,分为免疫传感器、酶生物传感器、化学传感器;根据检测对象不同,分为液体传感器和气体传感器。

1气体传感器

气体传感器可以对室内的空气质量进行检测,尤其是有污染的房屋或楼道;也可以对大气环境中的污染物进行检测,如含硫氧化物、氮氧化合物等,检测过程快速方便地。

以含氮氧化物(NOx)为例。汽车排放的尾气是含氮氧化物的主要来源,但随着时代的发展,国内消费水平的提高,汽车尾气的排放量呈逐年上升趋势。通过金属氧化物半导体对汽车尾气及工厂废气中的含氮氧化物进行直接检测。如Dutta设计的传感器,采用铂为电极,氧化钇和氧化锆为氧离子转换器,安装到气体排放口,可以检测到含量为10-4~10-3的NO。含硫氧化物是造成酸雨的主要物质,也是目前环境检测的重点项目,因为在大气环境中的含量低于10-6,需要更高灵敏度的传感器。如高检测的灵敏度的表面声波设备。

Starke等人采用直径为8~16nm的氧化锡、氧化铟、氧化钨纳米颗粒制作的纳米颗粒传感器,对NO和NO2的检测下限可达到10-8,提高反应的比表面积,增加反应灵敏度,且工作温度比常规的传感器大大降低,减少了能源消耗。

2液体传感器

在实际环境检测中,液体传感器大多应用于水的检测。由于水环境中的污染物种类广泛,因此液体传感器比气体传感器的应用更为广泛和重要。水中的污染物除了少量的天然污染物以外,大部分都是人为倾倒的无机物和有机物。无机物中,重金属离子为重点检测对象;有机污染物包括杀虫剂、激素类代谢物、多环芳香烃类物质等。这些污染物的过度超标,会严重影响到所有生物体的健康和安全。

重金属离子检测

采水体中重金属离子的主要来源包括开矿、冶金、印染等企业排放的废水。这些生产废水往往混合了多种废水,所含的重金属离子种类繁多,常见的有汞、锰、铅、镉、铬等。重金属离子会不断发生形态的改变和在不同相之间进行转移,若处置不当,容易形成二次污染。生物体从环境中摄取到的重金属离子,经过食物链,逐渐在高级生物体内富集,最终导致生物体的中毒。因此如果供人类食用的鱼类金属离子超标,将对人类产生严重的影响,因此对于重金属离子的检测显得尤为重要。

Burge等人发明的传感器,可以利用1,2,2联苯卡巴肼和分光光度计,可以检测地下水中的重金属铬浓度是否超标。

除了通过化学反应检测外,采用特殊的生物物质,也可以方便和灵敏地检测重金属离子。如大肠杆菌体内有一种蛋白质可以结合镍离子,有人在这种蛋白质的镍离子结合位点附近插入荧光基团,当蛋白质结合镍离子后,荧光基团会被淬灭,由于荧光的强度与镍离子浓度成反比,从而实现对镍离子的定量检测,检测范围未10-8~10-2mol/L。日方法也可应用于检测Cu2+、Co2+、Fe2+和Cd2+等几种离子中。他们还结合了微流体技术,该技术只需消耗几十纳升体积的待测液体,就可以对100nmol/L以下浓度的Pb2+进行检测。Matsunaga小组将TPPS固定在多孔硅基质中,当环境中存在Hg2+时,随着Hg2+浓度的变化,TPPS的颜色会从橘黄色逐渐转变成绿色,该传感器的检测限为,通过加入硅铝酸去除干扰离子Ni2+和Zn2+。

利用传感器技术不仅可以准确测定待测物的浓度,而且由于传感器的微型化技术特点,还可以通过传感器的偶联,进行多项指标的检测。Lau等人设计了基于发光二极管原理的传感器,可以同时检测Cd2+和Pb2+,该传感器对Cd2+和Pb2+的检测限分别为10-6和10-8。

农药残留物质的检测

农药是一类特殊的化学品,它在防治农林病虫害的同时,也会对人畜造成严重的危害。中国是农业大国,每年的农药使用量相当庞大,因此有必要对其进行监测。采用钴-苯二甲蓝染料和电流计就能方便地检测三嗪类除草剂,无需脱氧,直接检测的下限为50Lg/L,如果通过预处理进行样品浓缩后,检测限可以达到200ng/L。

采用带有光纤的红外光谱传感器可以进行杀虫剂的快速检测。将光纤内壁涂覆经非极性有机物修饰的气溶胶材料后,能显著改善光纤中水分子对信号的耗散作用,并且能够提取出溶液中的有机磷类杀虫剂进行光谱分析。此类传感器对于有机溶剂,如苯、甲苯、二甲苯的检测限则可达10-8~8*10-8。

多环芳香烃类化合物的检测

多环芳香烃类物质是另外一大类有害的污染物质,这类物质具有致癌性,但在许多工业生产过程中均会使用或产生此类物质。水体中的多环芳香烃类物质含量非常低,一般在10-9范围内,因此需要借助高灵敏度的检测传感器,Schechter小组发明了光纤光学荧光传感器。在直接检测过程中,待测样本中还可能存在一些如泥土这样的干扰物质,会降低检测信号值,如果用聚合物膜先将非极性的PAH富集,然后对膜上的物质进行荧光检测,从而解决信号干扰问题,报道称这种经膜富集后的传感器技术,对pyrene的检测可达到6*10-11,蒽类物质则可达4*10-10。Stanley等人利用石英晶振微天平作为传感器,在芯片表面固定上蒽-碳酸的单分子膜,检测限可达到2*10-9。

基于免疫分析原理,采用分子印迹的方法,在传感器表面印上能够结合不同待测物质的抗体分子,可以实现多种不同物质的检测。近年来发展起来的微接触印刷技术,也可应用到该领域,这样制备得到的传感器体积可以更加微型化。

生物类污染物质

除了以上的无机和有机合成类污染物质,还有生物来源的一些潜在污染分子。如激素类分子及其代谢物的污染常常会引起生物体生长、发育和繁殖的异常。Gauglitz带领的研究小组采用全内反射荧光生物传感器和睾丸激素抗体,对河流中的睾丸激素直接进行了即时检测,其检测限为。该技术无需样品的预处理,对于不同地区的自然界水体均可以进行睾丸激素的现场直接检测,检测范围为9~90ng/L。

另外,致病菌和病毒也是被检测的对象,水体中出现某些特定菌种,可以表明水体受到了某种污染,利用传感器技术非常容易检测到这些生物样本的存在,而且选择性非常高,如可以从烟草叶中快速地发现植物病毒烟草花叶病毒,采用QCM可以直接检测到酵母细胞的数量。

3结论和展望

目前,传感器技术已开始应用于各环境监测机构的应急检测,但是实际应用中有诸多的局限性,比如在对大气中的某些有害物质进行检测时,由于其含量往往低于传感器的最低检测限,因此在实际应用过程中,还需要进行气体的浓缩处理,这样就使传感器不容易实现微型化,或者需要借助更高灵敏度的传感器;同样,在野外水体检测时,常常会出现待测水体含有多种复杂干扰成分的情况,无法与实验室的标准化条件相比;在有些以膜分离分析技术为原理的传感器中,其膜的使用寿命往往较短,而频繁更换新膜的价格较为昂贵,因此仍然无法得到广泛的应用。

尽管如此,随着传感器技术的不断发展和完善,仍然有望应用于将来工厂企业排气、排污的现场直接检测和野外环境的动态无人监测,而且其结果能与实验室常规仪器的检测结果相符,这样将大大加快对环境监测和治理的步伐。

参考文献

[1]NaglS,,2007,132:507-511.

[2],2005,59:209-217.

[3]HanrahanG,,2004,6:657-664.

[4]HoneychurchKC,,2003,22:456-469.

[5]AmineA,,2006,21:1405-1423

传感器与自动检测技术教学改革探讨

摘要:传感器与自动检测技术是电气信息类专业重要的主干专业课,传统授课方法侧重于理论知识的传授,而忽略了应用层面的培养。针对此问题试图从教学目的、教学内容、教学形式、教学效果等多个方面进行分析,对该课程的教学方案改革进行探讨,提出一套技能与理论知识相结合、行之有效的教学方案。

关键词:传感器与自动检测技术;教学内容;教学模式;工程思维

“传感器与自动检测技术”是电气信息类专业重要的主干专业课,是一门必修课,也是一门涉及电工电子技术、传感器技术、光电检测技术、控制技术、计算机技术、数据处理技术、精密机械设计技术等众多基础理论和技术的综合性技术,现代检测系统通常集光、机、电于一体,软硬件相结合。

“传感器与自动检测技术”课程于20世纪80年代开始在我国普通高校的本科阶段和研究生阶段开设。本课程侧重于传感器与自动检测技术理论的传授,重知识,轻技能;教师之间也缺乏沟通,教学资源不能得到充分利用,教学效果不理想,学生学习兴趣不高。

一、教学过程中发现的问题及改革必要性分析

笔者在独立学院讲授“传感器与自动检测技术”课程已有四年,最开始沿用了研究型大学的教学计划和教学大纲,由于研究型大学是以培养研究型人才为主,而独立学院是以培养应用型人才为主,在人才培养目标上有较大差异,在逐渐深入的过程中发现传统方案不太符合学院培养应用型人才的定位,存在以下几方面的问题。

1.重理论,轻实践

该课程是应用型课程,其中也有大量的理论知识、数学推导,而传统的研究型教学方法普遍都以理论教学为主,在课堂上大篇幅讲解传感器的原理,进行数学公式推导,相比而言传感器的应用通常只是通过一个实例简单介绍,导致最后大多数学生只是粗略地知道该传感器的结构,而不知道如何用,在哪里用。

2.教学模式单一

该课程传统上以讲授的教学方式为主,将现成的结论、公式和定理告诉学生,学生不能主动地思考和探索,过程枯燥乏味,导致学生产生了厌学情绪。同时理论教学与实训、实践教学脱节问题也很严重。

3.教学实验安排不合理

传统的实验课程安排,验证性实验比例高达80%,综合设计性实验极少,缺少实训、实践环节。然而应用型人才的培养应该以实践教学为核心,重点培养学生的工程思维和实践能力、动手能力,以在学生毕业时达到企业对技术水平与能力的要求,使学生毕业后能尽快适应工作岗位。

二、适合独立学院培养应用型人才的教学方案改革

传统的传感器与自动检测技术课程重理论、轻实践,教学模式单一,教学实验以验证性实验为主,这种方案能够培养研究型人才,但却无法培养合格的应用型人才。在教学过程中,笔者潜心研习,并反复实践,总结出以下几个可以改革的方面。

1.优化教学内容,注重工程思维

本课程一个很重要的内容是各种类型传感器的原理,传统的教学要讲清楚其中的来龙去脉,而本人则认为针对应用型人才培养,充分讲授清楚基本概念、基本原理和基本方法即可,涉及大额数学公式可以选择重要的进行讲解,其他则可作为学生的自学内容,让学生课余自学。同时应该重点讲解该传感器的工程应用实例;另一方面要结合最新实际工程讲解。这样才能激发学生的学习兴趣,培养学生应用型工程学习思维。

2.改革教学方法,改变教学模式

传统的教学是“灌输式”的方法,无论学生是否接受,直接把要讲的内容全部讲述给学生,而这也违背了培养学生分析问题和解决问题的能力以及创新能力的出发点和归宿。笔者认为应该应用工程案例教学,实行启发式、讨论式、研究式等与实践相结合的教学方法,发挥学生在教学活动中的主体地位。

3.与工程实际相结合,与其他课程相结合

教学过程中要从不同行业提取典型的工程应用实例,精简以后作为实例进行讲解。在进行教学时,要培养学生的系统观,让学生明白这不是一门独立的课程,而是与自动控制原理、智能控制理论等课程相融合的,以达到融会贯通的学习效果。

4.实验环节改革

实验教学主要是为了提高学生的动手能力、分析问题和解决问题的能力,加深学生对课堂教学中理论、概念的感性认识。以往该课程的实验内容大部分为原理性、验证性的实验,学生容易感到枯燥无味,毫无学习积极性,很少有学生进行独立思考并发现问题,实验效果极不理想。为了改变这种模式化的教育,笔者将实验内容由传统的验证性实验调整为设计开发型实验。在实验教学中根据客观条件在适当减少验证性实验的基础上,增加了开拓性实验项目以及设计综合性实验。

5.改革教学评价方法,提高课堂教学效率

高效的学习成果反馈机制是促进教学相长的必要手段,目前该课程都是通过课程作业进行学习效果反馈,可以采用每一个章节布置一道设计型题目,让学生更加广泛地查阅资料,并在一定知识广度的基础上深入分析题目中用到的内容,进而从更深的层面分析解决问题,以达到深度、广度相结合的效果。

本文针对传感器与自动检测技术传统研究型大学的方案,提出了三个方面的问题,并根据四年的教学积累,在教学内容、教学模式、实验环节、教学评价及反馈等几个方面进行了探讨分析并提出了一套改革的方法和措施。本方案以实际工程应用实例为核心,在教学内容上侧重于传感器应用方面的讲解,以提出问题、分析问题、解决问题为主线调动学生的学习积极性和主动性,培养学生的工程思维和能力,重视实验环节,以设计性、综合性实验代替验证性实验培养学生将抽象的知识具体化、培养学生的实际应用能力、动手能力和创新能力。

参考文献:

[1]吴建平,甘媛.“传感器”课程实验教学研究[J].成都理工大学学报.

[2]曹良玉,赵堂春.传感器技术及其应用.课程改革初探[J].中国现代教育装备.

[3]李玉华,胡雪梅.传感器及应用.课程教学改革的探讨Ⅱ技术与市场.

yolo目标检测论文

论文原文:

YOLO(you only look once)是继RCNN、faster-RCNN之后,又一里程碑式的目标检测算法。yolo在保持不错的准确度的情况下,解决了当时基于深度学习的检测中的痛点---速度问题。下图是各目标检测系统的检测性能对比:

如果说faster-RCNN是真正实现了完全基于深度学习的端到端的检测,那么yolo则是更进一步,将 目标区域预测 与 目标类别判断 整合到单个神经网络模型中。各检测算法结构见下图:

每个网格要预测B个bounding box,每个bounding box除了要回归自身的位置之外,还要附带预测一个confidence值。这个confidence代表了所预测的box中含有object的置信度和这个box预测的有多准两重信息,其值是这样计算的:

其中如果有object落在一个grid cell里,第一项取1,否则取0。第二项是预测的bounding box和实际的groundtruth之间的IoU值。

每个bounding box要预测(x, y, w, h)和confidence共5个值,每个网格还要预测一个类别信息,记为C类。即SxS个网格,每个网格除了要预测B个bounding box外,还要预测C个categories。输出就是S x S x (5*B+C)的一个tensor。(注意:class信息是针对每个网格的,即一个网格只预测一组类别而不管里面有多少个bounding box,而confidence信息是针对每个bounding box的。)

举例说明: 在PASCAL VOC中,图像输入为448x448,取S=7,B=2,一共有20个类别(C=20)。则输出就是7x7x30的一个tensor。整个网络结构如下图所示:

在test的时候,每个网格预测的class信息和bounding box预测的confidence信息相乘,就得到每个bounding box的class-specific confidence score:

等式左边第一项就是每个网格预测的类别信息,第二三项就是每个bounding box预测的confidence。这个乘积即encode了预测的box属于某一类的概率,也有该box准确度的信息。

得到每个box的class-specific confidence score以后,设置阈值,滤掉得分低的boxes,对保留的boxes进行NMS(非极大值抑制non-maximum suppresssion)处理,就得到最终的检测结果。

1、每个grid因为预测两个bounding box有30维(30=2*5+20),这30维中,8维是回归box的坐标,2维是box的confidence,还有20维是类别。其中坐标的x,y用bounding box相对grid的offset归一化到0-1之间,w,h除以图像的width和height也归一化到0-1之间。

2、对不同大小的box预测中,相比于大box预测偏一点,小box预测偏一点肯定更不能被忍受的。而sum-square error loss中对同样的偏移loss是一样。为了缓和这个问题,作者用了一个比较取巧的办法,就是将box的width和height取平方根代替原本的height和width。这个参考下面的图很容易理解,小box的横轴值较小,发生偏移时,反应到y轴上相比大box要大。其实就是让算法对小box预测的偏移更加敏感。

3、一个网格预测多个box,希望的是每个box predictor专门负责预测某个object。具体做法就是看当前预测的box与ground truth box中哪个IoU大,就负责哪个。这种做法称作box predictor的specialization。

4、损失函数公式见下图:

在实现中,最主要的就是怎么设计损失函数,坐标(x,y,w,h),confidence,classification 让这个三个方面得到很好的平衡。简单的全部采用sum-squared error loss来做这件事会有以下不足:

解决方法:

只有当某个网格中有object的时候才对classification error进行惩罚。只有当某个box predictor对某个ground truth box负责的时候,才会对box的coordinate error进行惩罚,而对哪个ground truth box负责就看其预测值和ground truth box的IoU是不是在那个cell的所有box中最大。

作者采用ImageNet 1000-class 数据集来预训练卷积层。预训练阶段,采用网络中的前20卷积层,外加average-pooling层和全连接层。模型训练了一周,获得了top-5 accuracy为(ImageNet2012 validation set),与GoogleNet模型准确率相当。

然后,将模型转换为检测模型。作者向预训练模型中加入了4个卷积层和两层全连接层,提高了模型输入分辨率(224×224->448×448)。顶层预测类别概率和bounding box协调值。bounding box的宽和高通过输入图像宽和高归一化到0-1区间。顶层采用linear activation,其它层使用 leaky rectified linear。

作者采用sum-squared error为目标函数来优化,增加bounding box loss权重,减少置信度权重,实验中,设定为\lambda _{coord} =5 and\lambda _{noobj}= 。

作者在PASCAL VOC2007和PASCAL VOC2012数据集上进行了训练和测试。训练135轮,batch size为64,动量为,学习速率延迟为。Learning schedule为:第一轮,学习速率从缓慢增加到(因为如果初始为高学习速率,会导致模型发散);保持速率到75轮;然后在后30轮中,下降到;最后30轮,学习速率为。

作者还采用了dropout和 data augmentation来预防过拟合。dropout值为;data augmentation包括:random scaling,translation,adjust exposure和saturation。

YOLO模型相对于之前的物体检测方法有多个优点:

1、 YOLO检测物体非常快

因为没有复杂的检测流程,只需要将图像输入到神经网络就可以得到检测结果,YOLO可以非常快的完成物体检测任务。标准版本的YOLO在Titan X 的 GPU 上能达到45 FPS。更快的Fast YOLO检测速度可以达到155 FPS。而且,YOLO的mAP是之前其他实时物体检测系统的两倍以上。

2、 YOLO可以很好的避免背景错误,产生false positives

不像其他物体检测系统使用了滑窗或region proposal,分类器只能得到图像的局部信息。YOLO在训练和测试时都能够看到一整张图像的信息,因此YOLO在检测物体时能很好的利用上下文信息,从而不容易在背景上预测出错误的物体信息。和Fast-R-CNN相比,YOLO的背景错误不到Fast-R-CNN的一半。

3、 YOLO可以学到物体的泛化特征

当YOLO在自然图像上做训练,在艺术作品上做测试时,YOLO表现的性能比DPM、R-CNN等之前的物体检测系统要好很多。因为YOLO可以学习到高度泛化的特征,从而迁移到其他领域。

尽管YOLO有这些优点,它也有一些缺点:

1、YOLO的物体检测精度低于其他state-of-the-art的物体检测系统。

2、YOLO容易产生物体的定位错误。

3、YOLO对小物体的检测效果不好(尤其是密集的小物体,因为一个栅格只能预测2个物体)。

YOLO v1:You Only Look Once: Unified, Real-Time Object Detection YOLO v2:YOLO9000:Better,Faster,Stronger YOLO v3:YOLOv3: An Incremental Improvement

近几年来,目标检测算法取得了很大的突破。比较流行的算法可以分为两类,一类是基于Region Proposal的R-CNN系算法(R-CNN,Fast R-CNN, Faster R-CNN),它们是two-stage的,需要先使用启发式方法(selective search)或者CNN网络(RPN)产生Region Proposal,然后再在Region Proposal上做分类与回归。而另一类是Yolo,SSD这类one-stage算法,其仅仅使用一个CNN网络直接预测不同目标的类别与位置。第一类方法是准确度高一些,但是速度慢,但是第二类算法是速度快,但是准确性要低一些。这里我们谈的是Yolo-v1版本算法,其性能是差于后来的SSD算法的,但是Yolo后来也继续进行改进,产生了Yolo9000、YOLO v3算法。

传统方法常采用滑动窗口法,滑动窗口的目标检测算法思路非常简单,它将检测问题转化为了图像分类问题。其基本原理就是采用不同大小和比例(宽高比)的窗口在整张图片上以一定的步长进行滑动,然后对这些窗口对应的区域做图像分类,这样就可以实现对整张图片的检测了,如 DPM 就是采用这种思路。但是这个方法有致命的缺点,就是你并不知道要检测的目标大小是什么规模,所以你要设置不同大小和比例的窗口去滑动,而且还要选取合适的步长。但是这样会产生很多的子区域,并且都要经过分类器去做预测,这需要很大的计算量,所以你的分类器不能太复杂,因为要保证速度。解决思路之一就是减少要分类的子区域,这就是R-CNN的一个改进策略,其采用了 selective search 方法来找到最有可能包含目标的子区域(Region Proposal),其实可以看成采用启发式方法过滤掉很多子区域,这会提升效率。

如果你使用的是CNN分类器,那么滑动窗口是非常耗时的。但是结合卷积运算的特点,我们可以使用CNN实现更高效的滑动窗口方法。这里要介绍的是一种全卷积的方法,简单来说就是网络中用卷积层代替了全连接层,如图所示。输入图片大小是16x16,经过一系列卷积操作,提取了2x2的特征图,但是这个2x2的图上每个元素都是和原图是一一对应的,如图上蓝色的格子对应蓝色的区域,这不就是相当于在原图上做大小为14x14的窗口滑动,且步长为2,共产生4个字区域。最终输出的通道数为4,可以看成4个类别的预测概率值,这样一次CNN计算就可以实现窗口滑动的所有子区域的分类预测。这其实是overfeat算法的思路。之所可以CNN可以实现这样的效果是因为卷积操作的特性,就是图片的空间位置信息的不变性,尽管卷积过程中图片大小减少,但是位置对应关系还是保存的。这个思路也被R-CNN借鉴,从而诞生了Fast R-cNN算法。

上面尽管可以减少滑动窗口的计算量,但是只是针对一个固定大小与步长的窗口,这是远远不够的。Yolo算法很好的解决了这个问题,它不再是窗口滑动了,而是直接将原始图片分割成互不重合的小方块,然后通过卷积最后生产这样大小的特征图,基于上面的分析,可以认为特征图的每个元素也是对应原始图片的一个小方块,然后用每个元素来可以预测那些中心点在该小方格内的目标,这就是Yolo算法的朴素思想。

整体来看,Yolo算法采用一个单独的CNN模型实现end-to-end的目标检测,整个系统如图所示:首先将输入图片resize到448x448,然后送入CNN网络,最后处理网络预测结果得到检测的目标。相比R-CNN算法,其是一个统一的框架,其速度更快,而且Yolo的训练过程也是end-to-end的。

具体来说,Yolo的CNN网络将输入的图片分割成 网格,然后每个单元格负责去检测那些中心点落在该格子内的目标,如图所示,可以看到狗这个目标的中心落在左下角一个单元格内,那么该单元格负责预测这个狗。每个单元格会预测B个边界框(bounding box)以及边界框的 置信度 (confidence score)。所谓置信度其实包含两个方面,一是这个边界框含有目标的可能性大小,二是这个边界框的准确度。前者记为 ,当该边界框是背景时(即不包含目标),此时 。而当该边界框包含目标时, 。边界框的准确度可以用预测框与实际框(ground truth)的 IOU (intersection over union,交并比)来表征,记为 IOU 。因此置信度可以定义为 。

很多人可能将Yolo的置信度看成边界框是否含有目标的概率,但是其实它是两个因子的乘积,预测框的准确度也反映在里面。边界框的大小与位置可以用4个值来表征:(x,y,h,w),其中(x,y)是边界框的中心坐标,而w和h是边界框的宽与高。还有一点要注意,中心坐标的预测值(x,y)是相对于每个单元格左上角坐标点的偏移值,并且单位是相对于单元格大小的,单元格的坐标定义如图所示。而边界框的w和h预测值是相对于整个图片的宽与高的比例,这样理论上4个元素的大小应该在[0,1]范围。这样,每个边界框的预测值实际上包含5个元素:(x,y,w,h,c),其中前4个表征边界框的大小与位置,而最后一个值是置信度。

值得注意的是,不管一个单元格预测多少个边界框,其只预测一组类别概率值,这是Yolo算法的一个缺点,在后来的改进版本中,Yolo9000是把类别概率预测值与边界框是绑定在一起的。同时,我们可以计算出各个边界框类别置信度(class-specificconfidence scores):

边界框类别置信度表征的是该边界框中目标属于各个类别的可能性大小以及边界框匹配目标的好坏。后面会说,一般会根据类别置信度来过滤网络的预测框。

总结一下,每个单元格需要预测 个值。如果将输入图片划分为 网格,那么最终预测值为 大小的张量。整个模型的预测值结构如下图所示。对于PASCALVOC数据,其共有20个类别,如果使用S=7,B=2,那么最终的预测结果就是 大小的张量。在下面的网络结构中我们会详细讲述每个单元格的预测值的分布位置。

Yolo采用卷积网络来提取特征,然后使用全连接层来得到预测值。网络结构参考GooLeNet模型,包含24个卷积层和2个全连接层,如图所示。对于卷积层,主要使用1x1卷积来做channle reduction,然后紧跟3x3卷积。对于卷积层和全连接层,采用Leaky ReLU激活函数:max(x,0)。但是最后一层却采用线性激活函数。除了上面这个结构,文章还提出了一个轻量级版本Fast Yolo,其仅使用9个卷积层,并且卷积层中使用更少的卷积核。

可以看到网络的最后输出为 大小的张量。这和前面的讨论是一致的。这个张量所代表的具体含义如图所示。对于每一个单元格,前20个元素是类别概率值,然后2个元素是边界框置信度,两者相乘可以得到类别置信度,最后8个元素是边界框的(x,y,w,h)。大家可能会感到奇怪,对于边界框为什么把置信度c和(x,y,w,h)都分开排列,而不是按照(x,y,w,h,c)这样排列,其实纯粹是为了计算方便,因为实际上这30个元素都是对应一个单元格,其排列是可以任意的。但是分离排布,可以方便地提取每一个部分。这里来解释一下,首先网络的预测值是一个二维张量P,其shape为 。

采用切片,那么 就是类别概率部分; 是置信度部分; 是边界框的预测结果。这样,提取每个部分是非常方便的,这会方面后面的训练及预测时的计算。

在训练之前,先在ImageNet上进行了预训练,其预训练的分类模型采用图中前20个卷积层,然后添加一个average-pool层和全连接层。预训练之后,在预训练得到的20层卷积层之上加上随机初始化的4个卷积层和2个全连接层。由于检测任务一般需要更高清的图片,所以将网络的输入从224x224增加到了448x448。整个网络的流程如下图所示:

损失函数计算如下:

其中第一项是边界框中心坐标的误差项, 指的是第i个单元格存在目标,且该单元格中的第j个边界框负责预测该目标。第二项是边界框的高与宽的误差项。第三项是包含目标的边界框的置信度误差项。第四项是不包含目标的边界框的置信度误差项。而最后一项是包含目标的单元格的分类误差项, 指的是第i个单元格存在目标。

在说明Yolo算法的预测过程之前,这里先介绍一下非极大值抑制算法(non maximum suppression, NMS),这个算法不单单是针对Yolo算法的,而是所有的检测算法中都会用到。NMS算法主要解决的是一个目标被多次检测的问题,如图中人脸检测,可以看到人脸被多次检测,但是其实我们希望最后仅仅输出其中一个最好的预测框,比如对于美女,只想要红色那个检测结果。那么可以采用NMS算法来实现这样的效果:首先从所有的检测框中找到置信度最大的那个框,然后挨个计算其与剩余框的IOU,如果其值大于一定阈值(重合度过高),那么就将该框剔除;然后对剩余的检测框重复上述过程,直到处理完所有的检测框。

下面就来分析Yolo的预测过程,这里我们不考虑batch,认为只是预测一张输入图片。根据前面的分析,最终的网络输出是 ,但是我们可以将其分割成三个部分:类别概率部分为 ,置信度部分为 ,而边界框部分为 (对于这部分不要忘记根据原始图片计算出其真实值)。然后将前两项相乘可以得到 类别置信度值为 ,这里总共预测了 边界框。

所有的准备数据已经得到了,那么先说第一种策略来得到检测框的结果。首先,对于每个预测框根据类别置信度选取置信度最大的那个类别作为其预测标签,经过这层处理我们得到各个预测框的预测类别及对应的置信度值,其大小都是[7,7,2]。一般情况下,会设置置信度阈值,就是将置信度小于该阈值的box过滤掉,所以经过这层处理,剩余的是置信度比较高的预测框。最后再对这些预测框使用NMS算法,最后留下来的就是检测结果。一个值得注意的点是NMS是对所有预测框一视同仁,还是区分每个类别,分别使用NMS。Ng在中讲应该区分每个类别分别使用NMS,但是看了很多实现,其实还是同等对待所有的框,可能是不同类别的目标出现在相同位置这种概率很低吧。

上面的预测方法应该非常简单明了,但是对于Yolo算法,其却采用了另外一个不同的处理思路(至少从C源码看是这样的),其区别就是先使用NMS,然后再确定各个box的类别。其基本过程如图所示。对于98个boxes,首先将小于置信度阈值的值归0,然后分类别地对置信度值采用NMS,这里NMS处理结果不是剔除,而是将其置信度值归为0。最后才是确定各个box的类别,当其置信度值不为0时才做出检测结果输出。这个策略不是很直接,但是貌似Yolo源码就是这样做的。Yolo论文里面说NMS算法对Yolo的性能是影响很大的,所以可能这种策略对Yolo更好。

总结一下Yolo的优缺点。首先是优点,Yolo采用一个CNN网络来实现检测,是单管道策略,其训练与预测都是end-to-end,所以Yolo算法比较简洁且速度快。第二点由于Yolo是对整张图片做卷积,所以其在检测目标有更大的视野,它不容易对背景误判。另外,Yolo的泛化能力强,在做迁移时,模型鲁棒性高。

Yolo的缺点,首先Yolo各个单元格仅仅预测两个边界框,而且属于一个类别。对于小物体,Yolo的表现会不如人意。这方面的改进可以看SSD,其采用多尺度单元格。也可以看Faster R-CNN,其采用了anchor boxes。Yolo对于在物体的宽高比方面泛化率低,就是无法定位不寻常比例的物体。当然Yolo的定位不准确也是很大的问题。

参考链接 YOLO算法的原理与实现

  • 索引序列
  • 目标检测论文合集
  • coco数据集目标检测论文
  • 论文检测合格标准
  • 多传感器融合目标检测论文题目
  • yolo目标检测论文
  • 返回顶部