哈尔滨建站模板大全,慈溪高端网站设计,网站建设找酷风,重庆网站推广营销价格0 1前言#xff1a;基于锚点的目标检测方法在基于关键点(key points)的目标检测方法出现之前#xff0c;主流目标检测方法一般先设置一些预先定义好的 锚点 (anchor boxes)。 作为预测物体框的参考#xff0c;神经网络只需要预测实际的物体框相对于这些锚点的偏移。 这样模型…0 1前言基于锚点的目标检测方法在基于关键点(key points)的目标检测方法出现之前主流目标检测方法一般先设置一些预先定义好的 锚点 (anchor boxes)。 作为预测物体框的参考神经网络只需要预测实际的物体框相对于这些锚点的偏移。 这样模型就能在一个位置预测多个不同尺寸的物体框并且预测相对偏移比预测绝对值要容易一些。最初这些锚点的大小是人工设置的如Faster R-CNN [1]和SSD [2]中使用的锚点。 由于模型预测的是相对偏移一般来说比较接近锚点的物体框预测要更为准确一些因此YOLOv2[3]中使用了k-means聚类的方法来选择与训练集样本最为匹配的锚点。基于锚点的目标检测方法 缺点 在于需要生成大量的锚点以更好的覆盖整个图片中的物体并且需要人工设计一些参数比如锚点的数量、大小等。图2 SSD中使用的锚点0 2基于关键点的目标检测方法1. CornerNet [4]CornerNet发表在2018年ECCV是使用关键点方法进行目标检测的开山之作。CornerNet通过预测物体框左上角和右下角两个角点来组成最终的物体框避免了锚点的使用。物体的特征一般集中在物体内部比如一个人的身体、头部其左上角和右下角两个点的特征并不明显而且不容易确定位置。为了解决这个问题文章引入了 Corner pooling 的结构。在输出层之前的特征图上针对左上角点取其右边和下边的最大值之和针对右下角点取其左边和上边的最大值之和。直观上理解就是我们在左上角处往右下方向看在右下角处往左上方向看这样就能看到整个物体。如果不使用Corner pooling相当于看的是角点周围这样对于比较大的物体就很难获得整个物体的特征会导致大物体的检测效果差。网络针对左上角和右下角分别输出 三个结果 a. Heatmaps表示某位置是角点的概率b. Offsets表示实际角点相对于该位置的偏移c. Embeddings, 嵌入向量用于将左上角和右下角进行配对。生成最终物体框时取概率最高的k个角点加上Offsets得到实际位置再使用Embeddings对左上角和右下角进行配对取嵌入向量距离超过一定阈值的两个点来组成最终物体框。损失函数的选择上Heatmaps使用分类损失函数focal loss的变种Offsets使用回归损失函数smooth L1 lossEmbeddings使用衡量相似度的pull loss和push loss损失函数细节可查阅原文。图3 CornerNet结构示意图图4 Corner poolingCornerNet一个 明显的缺点 是使用Embeddings进行角点匹配的效果并不太好可能导致某个物体的左上角匹配到另一个物体的右下角。后续的ExtremeNet、CenterNet等论文都设法修复或避免这一问题。 图5 CornerNet角点配对错误的例子2. CornerNet-Lite[5]针对CornerNet速度较慢的问题CornerNet的研究团队对网络结构进行了优化。主要从 两方面 入手分别提出了一个方案。一减少处理的像素数量。也就是先用一个轻量的网络确定物体的大概位置然后再从这个大概的裁切区域上检测物体的具体位置该网络被称为CornerNet-Saccade。二减少每个像素的处理次数。参考了SqueezeNet和MobileNets使用深度可分离卷积等方法对网络主干进行轻量化该网络被命名为CornerNet-Squeeze。CornerNet-Saccade相比CornerNet 速度 上有较大提升而准确率相当CornerNet-Squeeze则达到与YOLOv3相当的 速度 和 准确率 CornerNet-Lite依然受限于CornerNet角点匹配 错误较多 的缺点。比如CornerNet-Squeeze虽然从文章中给出的结果上看与YOLOv3相当但是实际使用中容易出现角点匹配错误情况效果不佳。图6 CornerNet-Lite作者给出的优化效果3. CenterNet [6]CenterNet在CornerNet基础上加入了一个关键点—— 中心点 通过检查CornerNet预测框的中心区域是否存在中心关键点来决定是否保留这个预测框。中心关键点在pooling阶段使用了Center pooling同时取上下左右四个方向的最大值。此外还对原有的Corner pooling进行了 优化 。 确定中心区域时对于较大的物体取5*5分割的中间区域较小物体取3*3分割的中心区域。中心区域的选择过于依赖人工设计的参数也是该方法的一个缺点。图7 CenterNet结 构示意图4. Objects as Points [7]这篇文章和上一篇CenterNet一样是19年4月份放到网上的而且也把自己的网络起名为CenterNet...不同于上一篇CenterNet对CornerNet进行修补。 该方法直接抛弃了右上角和右上角两个关键点只预测一个中心关键点再加上物体的宽高构成最终的物体框。该文章提出的方法 简洁明了 在 速度 和 精度 的权衡上也做的比较好因此比较被看好。 缺点 在于如果两个物体的中心重合只能预测一个不过这种情况概率很低。图8 Objects as Points效果示意图0 3小结基于关键点的目标检测方法或多或少都还存在一些缺点在实际应用中相比基于锚点的方法也 没有绝对优势 。但是作为近两年目标检测方法的新趋势我们期待在不远的将来这类方案能有进一步的 突破 。