赞
踩
yolo9000,最先进的,实时的目标检测系统,可以检测超过9000个类别。
yolov2提出了很多新的改进方法,无论是新的还是在原有的yolov1中汲取的。
yolov2使用新颖的,多尺度训练方法,它可以在各种尺寸的图片上运行(yolov1固定图片尺寸448*448),从而在速度与准确度之间平衡。
yolov2在VOC 2007数据集上达到67fps的同时,还有着76.8mAP,当fps在40的时候,yolov2就能达到78.6的mAP,效果优于最先进的带有ResNet和SSD的Faster-RCNN,同时它还是运行最快的。
最后作者提出了一种联合训练对象检测和分类的算法,并在COCO检测数据集和ImageNet分类数据集上同时训练yolo9000。在这种联合训练下,yolov2可以预测没有标记数据集的对象(即图像分类中有的,但是目标检测数据集中没有的类别)
通用的目标检测应当是快速的、准确的,而且应当具备识别大量的目标。自从引入神经网络之后,目标检测的框架变得越来越快速和准确,但是大部分的目标检测方法都只能受限于一小部分目标。(作者提出当前目标检测的特点-----快速而准确,但是能识别的目标还不够多)
与分类和标记等其他任务的数据集相比,当前的对象检测数据集是有限的。最常见的检测数据集包含数千到数十万张图片但是只有数十到数百个标签。分类数据集有数百万张图像,具有数万或数十万个类别。(当前的目标检测数据集远不如分类数据集)获得标记对象检测数据集远比获得标记分类数据集(标签通常由用户免费提供-----steam中注册账号的时候人机识别免费标注公交车和直行车之类的)要花的代价更多。
作者提出解决数据集的方法:使用对象分类的分层视图,允许我们将不同的数据集组合在一起
作者提出联合训练算法:让yolov2同时在目标检测数据集和分类数据集上同时训练目标检测。利用标记的检测图像让yolov2来学习精确定位对象,同时使用分类图像来增加其识别的类别和鲁棒性
回顾yolov1,和Fast R-CNN相比,yolov1产生了大量的定位错误,此外相比较于候选区域定位法,yolov1有着更低的召回率。因此,作者在专注于提高召回率(recall,所有真实目标中被检测的比例)和定位问题的同时还要保持yolo的分类准确性。
更好的性能通常取决于训练更大的网络或将多个模型集成在一起,但是对于yolov2,作者想要的是更准确,速度更快的检测系统,而不是简简单单的扩大自己的网络。相反,作者有意简化自己的网络,使其表示更容易学习。
批量标准化(对每一个输出的神经元进行标准化)
高分辨分类器
从 AlexNet 开始,大多数分类器对小于 256 × 256的输入图像进行操作。原 YOLO 以 224 × 224 训练分类器网络,并将分辨率提高到 448 用于检测。这意味着网络需要同时切换到学习对象检测并调整到新的输入分辨率。
对于 YOLOv2,作者首先在 ImageNet 上以 448 × 448 的全分辨率微调分类网络 10 个 epoch。这使网络有时间调整其过滤器以更好地处理更高分辨率的输入。然后,在检测时微调生成的网络。这种高分辨率分类网络使yolov2的 mAP 增加了近 4%。
带有锚盒的卷积
YOLO 直接使用卷积特征提取器之上的全连接层来预测边界框的坐标.
Faster R-CNN 不是直接预测坐标,而是使用手工挑选的先验预测边界框,模型输出的是预测框相对于这些手动选取边界框的偏移量。Faster R-CNN 中的区域提议网络 (RPN,候选区) 仅使用卷积层来预测锚框的偏移量和置信度。
预测偏移量而不是坐标可以简化问题并使网络更容易学习。
作者在yolov1的基础上移除了全连接层,增加了锚点盒子来预测边界框。首先作者移除了一个池化层来提高卷积层的高分辨率输出,作者还缩小了网络让输入图象是416x416而不是448x448。这样做是因为想要在特征图中有奇数个位置,所以只有一个中心单元,这个中心单元用来预测图片中最大的那个物体(yolov1是四个单元预测一个大物体)。YOLO 的卷积层将图像下采样 32 倍,因此通过使用 416 的输入图像,我们得到 13 × 13 的输出特征图
使用锚框,yolov2的准确性会略有下降。 YOLO 仅预测每张图像 98 个框,但使用锚框,yolov2的模型预测将近1000 个框(416/32=13,13x13x5=845)。在没有锚框的情况下,yolov1的中间模型得到 69.5 mAP,召回率为 81%。使用锚框,yolov2的模型获得 69.2 mAP,召回率为 88%。尽管 mAP 降低了,但召回率的增加意味着模型还有更多的改进空间。
数据集标注框长宽聚类
在 YOLO 中使用锚框时,作者遇到了两个问题。首先是盒子尺寸是手工挑选的。网络可以学习适当地调整框,但是如果我们为网络选择更好的先验(锚框)(指定更好的长宽比例),就可以让网络更好的学习预测更好的目标。
在yolov2中,作者不在手动挑选锚框,而是在训练集边界框中运行k-means聚类,让它来告诉我们最佳锚框长宽比是多少。k-means算法,作者选择k=5,一个网格框产生5个边界框。
直接位置预测
修改后的 YOLO 在13*13的特征图上预测目标检测。虽然这对于大型对象来说已经足够了,但是加上细粒度特征后,它也可以更好的检测小物体(弥补yolov1对小目标检测的缺陷)。 Faster R-CNN 和 SSD 都在网络中的各种特征图上运行他们的候选区域网络,以获得一系列分辨率。作者采用了不同的方法,只需添加一个直通层,从前面的层中引入26x26分辨率的特征。
直通层通过将相邻特征堆叠到不同的通道而不是空间位置来连接更高分辨率的特征和低分辨率的特征,类似于 ResNet 中的恒等映射。
这将 26 × 26 × 512 的特征图变成了 13 × 13 × 2048 的特征图,可以与原始特征进行拼接。我们的检测器在这个扩展的特征图之上运行,因此它可以访问细粒度的特征。这会带来 1% 的适度性能提升
(具体的拆分方法没有弄懂,同济子豪兄yolov2 论文讲解59:02处)
原始 YOLO 使用 448 × 448 的输入分辨率。通过添加锚框,我们将分辨率更改为 416×416。作者希望 YOLOv2 能够在不同大小的图像上运行,因此他们将这个想法训练到模型中。
作者不是固定输入图像的大小,而是每隔几次迭代就改变网络。每 10 批他们的网络就会随机选择一个新的图像尺寸。由于作者的模型下采样了 32 倍,因此他们从以下 32 的倍数中随机挑选尺度:{320, 352, …, 608}。因此,最小的选项是 320 × 320,最大的选项是 608 × 608。(这种制度迫使网络学会在各种输入维度上进行良好的预测)这意味着同一个网络可以预测不同分辨率的检测。网络在较小的尺寸下运行得更快,因此 YOLOv2 提供了速度和准确性之间的简单权衡。
在低分辨率下,YOLOv2 是一种廉价且相当准确的检测器。在 288 × 288 时,它以超过 90 FPS 的速度运行,mAP 几乎与 Fast R-CNN 一样好。这使其非常适合较小的 GPU、高帧率视频或多个视频流场景。
在高分辨率下,YOLOv2 是最先进的检测器,在 VOC 2007 上具有 78.6 mAP,同时仍以高于实时速度运行。
大多数检测框架依赖 VGG-16 作为基本特征提取器 。VGG-16 是一个强大、准确的分类网络,但它太过复杂。VGG-16 的卷积层需要306.9亿次浮点运算才能在 224 × 224 分辨率的单个图像上进行单次传递。YOLO 框架使用基于 Googlenet 架构的自定义网络。这个网络比 VGG-16 更快,前向传递只使用了 85.2 亿次操作。但是,它的准确性比 VGG16 略差。对于 224 × 224 的单裁剪、top-5 (模型预测五个结果,只要猜中一个就算对了)准确率,在这种224x224单裁剪,top5的准确率中YOLO 的自定义模型获得 88.0%的准确率,而 VGG-16 为 90.0%。
作者提出联合训练和检测的机制: 使用标记的图像让检测器来学习特定于检测的信息,例如边界框坐标预测和对象性,以及如何对常见对象进行分类。
在训练期间,作者混合来自检测和分类数据集的图像。当网络看到标记为检测的图像时,可以基于完整的 YOLOv2 损失函数进行反向传播。当它看到分类图像时,我们只从体系结构的分类特定部分反向传播损失。
这种方法遇到的挑战:
目标检测数据集只有一些常见的目标和标签,比如狗和船。而目标分类的数据集则不管在种类和数量上都多的多(ImageNet 拥有一百多种犬种,包括“诺福克梗犬”、“约克夏梗犬”和“贝灵顿梗犬”)。如果想在两个数据集上进行训练,则我们需要一种连贯的方式来合并这些标签。
作者提出的解决方案
分级分类
数据集与WordTree的组合
联合分类与检测
YOLOv2 是最先进的检测系统,并且在各种检测数据集中比其他检测系统更快。此外,它可以在各种图像尺寸下运行,以提供速度和准确性之间的平滑折衷。
YOLO9000 是一个实时框架,通过联合优化检测和分类来检测超过 9000 个对象类别。作者使用 WordTree 结合来自各种来源的数据和他们的联合优化技术,在 ImageNet 和 COCO 上同时进行训练。 YOLO9000 是朝着缩小检测和分类之间的数据集大小差距迈出的重要一步。
作者的许多技术都在对象检测之外进行推广。他们的 ImageNet 的 WordTree 表示为图像分类提供了更丰富、更详细的输出空间。使用分层分类的数据集组合将在分类和分割领域中很有用。多尺度训练等训练技术可以为各种视觉任务带来好处
作者对未来的展望
对于未来的工作,我们希望使用类似的技术进行弱监督图像分割。我们还计划使用更强大的匹配策略来改进我们的检测结果,以便在训练期间为分类数据分配弱标签。计算机视觉拥有大量标记数据。我们将继续寻找将不同来源和数据结构整合在一起的方法,以构建更强大的视觉世界模型
对于未来的工作,我们希望使用类似的技术进行弱监督图像分割。我们还计划使用更强大的匹配策略来改进我们的检测结果,以便在训练期间为分类数据分配弱标签。计算机视觉拥有大量标记数据。我们将继续寻找将不同来源和数据结构整合在一起的方法,以构建更强大的视觉世界模型
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。