选自The M tankhtml
机器之心编译git
参与:蒋思源、刘晓坤github
The M Tank 编辑了一份报告《A Year in Computer Vision》,记录了 2016 至 2017 年计算机视觉领域的研究成果,对开发者和研究人员来讲是不可多得的一份详细材料。该材料共包括四大部分,在本文中机器之心对第一部分作了编译介绍,后续会放出其余部份内容。
内容目录算法
简介网络
第一部分架构
第二部分app
第三部分框架
第四部分机器学习
结论ide
完整 PDF 地址:http://www.themtank.org/pdfs/AYearofComputerVisionPDF.pdf
简介
计算机视觉是关于研究机器视觉能力的学科,或者说是使机器能对环境和其中的刺激进行可视化分析的学科。机器视觉一般涉及对图像或视频的评估,英国机器视觉协会(BMVA)将机器视觉定义为「对单张图像或一系列图像的有用信息进行自动提取、分析和理解」。
对咱们环境的真正理解不是仅经过视觉表征就能够达成的。更准确地说,是视觉线索经过视觉神经传输到主视觉皮层,而后由大脑以高度特征化的形式进行分析的过程。从这种感受信息中提取解释几乎包含了咱们全部的天然演化和主体经验,即进化如何令咱们生存下来,以及咱们如何在一辈子中对世界进行学习和理解。
从这方面来讲,视觉过程仅仅是传输图像并进行解释的过程,然而从计算的角度看,图像其实更接近思想或认知,涉及大脑的大量功能。所以,因为跨领域特性很显著,不少人认为计算机视觉是对视觉环境和其中语境的真实理解,并将引领咱们实现强人工智能。
不过,咱们目前仍然处于这个领域发展的胚胎期。这篇文章的目的在于阐明 2016 至 2017 年计算机视觉最主要的进步,以及这些进步对实际应用的促进。
为简单起见,这篇文章将仅限于基本的定义,并会省略不少内容,特别是关于各类卷积神经网络的设计架构等方面。
这里推荐一些学习资料,其中前两个适用与初学者快速打好基础,后两个能够做为进阶学习:
对于还想进一步了解神经网络和深度学习的,咱们推荐:
下面咱们先简介本文的第一部分,这一部分主要叙述了目标分类与定位、目标检测与目标追踪等十分基础与流行的计算机视觉任务。然后机器之心将陆续分享 Benjamin F. Duffy 和 Daniel R. Flynn 后面 3 部分对计算机视觉论述,包括第二部分的语义分割、超分辨率、风格迁移和动做识别,第三部分三维目标识别与重建、和第四部分卷积网络的架构与数据集等内容。
基础的计算机视觉任务
分类/定位
图像分类任务一般是指为整张图像分配特定的标签,以下左图整张图像的标签为 CAT。而定位是指找到识别目标在图像中出现的位置,一般这种位置信息将由对象周围的一些边界框表示出来。目前 ImageNet [9] 上的分类/定位的准确度已经超过了一组训练有素的人类 [10]。所以相对于前一部分的基础,咱们会着重介绍后面如语义分割、3D 重建等内容。
图 1:计算机视觉任务,来源 cs231n 课程资料。
然而随着目标类别 [11] 的增长,引入大型数据集将为近期的研究进展提供新的度量标准。在这一方面,Keras [12] 创始人 Francois Chollet 将包括 Xception 等架构和新技术应用到谷歌内部的大型数据集中,该数据集包含 1.7 万个目标类别,共计 350M(Million)的多类别图像。
图 2:ILSVRC 竞赛中,分类/定位的逐年错误率,来源 Jia Deng (2016),ILSVRC2016。
ImageNet LSVRC(2016)亮点:
目标检测
目标检测(Object Detection)即如字面所说的检测图像中包含的物体或目标。ILSVRC 2016 [20] 对目标检测的定义为输出单个物体或对象的边界框与标签。这与分类/定位任务不一样,目标检测将分类和定位技术应用到一张图像的多个目标而不是一个主要的目标。
图 3:仅有人脸一个类别的目标检测。图为人脸检测的一个示例,做者表示目标识别的一个问题是小物体检测,检测图中较小的人脸有助于挖掘模型的尺度不变性、图像分辨率和情景推理的能力,来源 Hu and Ramanan (2016, p. 1)[21]。
目标识别领域在 2016 年主要的趋势之一是转向更快、更高效的检测系统。这一特性在 YOLO、SSD 和 R-FCN 方法上很是显著,它们都倾向于在整张图像上共享计算。所以能够将它们与 Fast/Faster R-CNN 等成本较高的子网络技术区分开开来,这些更快和高效的检测系统一般能够指代「端到端的训练或学习」。
这种共享计算的基本原理一般是避免将独立的算法聚焦在各自的子问题上,由于这样能够避免训练时长的增长和网络准确度的下降。也就是说这种端到端的适应性网络一般发生在子网络解决方案的初始以后,所以是一种可回溯的优化(retrospective optimisation)。然而,Fast/Faster R-CNN 技术仍然很是有效,仍然普遍用于目标检测任务。
YOLO9000 实现了检测和分类的联合训练,并将其预测泛化能力扩展到未知的检测数据上,即它能检测从未见过的目标或物体。YOLO9000 模型提供了 9000 多个类别的实时目标检测,缩小了分类和检测数据集间的鸿沟。该模型其它详细的信息和预训练模型请查看:http://pjreddie.com/darknet/yolo/。
图 4:目标检测中的准确率权衡,来源 Huang et al. (2016, p. 9)[31]。
注意:Y 轴表示的是平均准确率(mAP),X 轴表示不一样元架构(meta-architecture)的各类特征提取器(VGG、MobileNet...Inception ResNet V2)。此外,mAP small、medium 和 large 分别表示对小型、中型和大型目标的检测平均准确率。即准确率是按「目标尺寸、元架构和特征提取器」进行分层的,而且图像的分辨率固定为 300。虽然 Faster R-CNN 在上述样本中表现得更好,可是这并无什么价值,由于该元架构相比 R-FCN 来讲慢得多。
Huang et al. (2016)[32] 的论文提供了 R-FCN、SSD 和 Faster R-CNN 的深度性能对比。因为机器学习准确率对比中存在的问题,这里使用的是一种标准化的方法。这些架构被视为元架构,由于它们能够组合不一样的特征提取器,好比 ResNet 或 Inception。
论文的做者经过改变元架构、特征提取器和图像分辨率研究准确率和速度之间的权衡。例如,对不一样特征提取器的选择能够形成元架构对比的很是大的变化。
实时商业应用中须要低功耗和高效同时能保持准确率的目标检测方法,尤为是自动驾驶应用,SqueezeDet[33] 和 PVANet[34] 在论文中描述了这种发展趋势。
COCO[36] 是另外一个经常使用的图像数据集。然而,它相对于 ImageNet 来讲更小,更常被用做备选数据集。ImageNet 聚焦于目标识别,拥有情景理解的更普遍的语境。组织者主办了一场包括目标检测、分割和关键点标注的年度挑战赛。在 ILSVRC[37] 和 COCO[38] 上进行的目标检测挑战赛的结果以下:
从以上结果能够看出,在 ImageNet 上的结果代表「MSRAVC 2015 的结果为『引入 ResNet』设置了很高的标准。在整个项目中对全部的类别的目标检测性能都有所提高。在两个挑战赛中,定位任务的性能都获得较大的提高。关于小型目标实例的大幅性能提高结果详见参考文献」(ImageNet,2016)。[39]
图 5.ILSVRC 的图像目标检测结果(2013-2016),来源 ImageNet. 2016. [Online] Workshop
目标追踪
目标追踪即在给定的场景中追踪感兴趣的一个或多个特定目标的过程,在视频和现实世界的交互中(一般是从追踪初始的目标检测开始的)有不少应用,且对于自动驾驶而言很是重要。
「本论文展现了深度运动特征(motion features)对检测和追踪框架的影响。咱们还进一步说明了手工制做的特征、深度 RGB 和深度运用特征包含互补信息。据咱们所知,这是第一个提出融合外表信息和深度运动特征,并用于视觉追踪的研究。咱们全面的实验代表融合方法具备深度运动特征,并超过了单纯依赖外表信息的方法。」
参考文献:
[1] British Machine Vision Association (BMVA). 2016. What is computer vision? [Online] Available at: http://www.bmva.org/visionoverview [Accessed 21/12/2016]
[2] Krizhevsky, A., Sutskever, I. and Hinton, G. E. 2012. ImageNet Classification with Deep Convolutional Neural Networks, NIPS 2012: Neural Information Processing Systems, Lake Tahoe, Nevada. Available: http://www.cs.toronto.edu/~kriz/imagenet_classification_with_deep_convolutional.pdf
[3] Kuhn, T. S. 1962. The Structure of Scientific Revolutions. 4th ed. United States: The University of Chicago Press.
[4] Karpathy, A. 2015. What a Deep Neural Network thinks about your #selfie. [Blog] Andrej Karpathy Blog. Available: http://karpathy.github.io/2015/10/25/selfie/ [Accessed: 21/12/2016]
[5] Quora. 2016. What is a convolutional neural network? [Online] Available: https://www.quora.com/What-is-a-convolutional-neural-network [Accessed: 21/12/2016]
[6] Stanford University. 2016. Convolutional Neural Networks for Visual Recognition. [Online] CS231n. Available: http://cs231n.stanford.edu/ [Accessed 21/12/2016]
[7] Goodfellow et al. 2016. Deep Learning. MIT Press. [Online] http://www.deeplearningbook.org/[Accessed: 21/12/2016] Note: Chapter 9, Convolutional Networks [Available: http://www.deeplearningbook.org/contents/convnets.html]
[8] Nielsen, M. 2017. Neural Networks and Deep Learning. [Online] EBook. Available: http://neuralnetworksanddeeplearning.com/index.html [Accessed: 06/03/2017].
[9] ImageNet refers to a popular image dataset for Computer Vision. Each year entrants compete in a series of different tasks called the ImageNet Large Scale Visual Recognition Challenge (ILSVRC). Available: http://image-net.org/challenges/LSVRC/2016/index
[10] See「What I learned from competing against a ConvNet on ImageNet」by Andrej Karpathy. The blog post details the author』s journey to provide a human benchmark against the ILSVRC 2014 dataset. The error rate was approximately 5.1% versus a then state-of-the-art GoogLeNet classification error of 6.8%. Available: http://karpathy.github.io/2014/09/02/what-i-learned-from-competing-against-a-convnet-on-imagenet/
[11] See new datasets later in this piece.
[12] Keras is a popular neural network-based deep learning library: https://keras.io/
[13] Chollet, F. 2016. Information-theoretical label embeddings for large-scale image classification. [Online] arXiv: 1607.05691. Available: arXiv:1607.05691v1
[14] Chollet, F. 2016. Xception: Deep Learning with Depthwise Separable Convolutions. [Online] arXiv:1610.02357. Available: arXiv:1610.02357v2
[15] Places2 dataset, details available: http://places2.csail.mit.edu/. See also new datasets section.
[16] Hikvision. 2016. Hikvision ranked No.1 in Scene Classification at ImageNet 2016 challenge. [Online] Security News Desk. Available: http://www.securitynewsdesk.com/hikvision-ranked-no-1-scene-classification-imagenet-2016-challenge/[Accessed: 20/03/2017].
[17] See Residual Networks in Part Four of this publication for more details.
[18] Details available under team information Trimps-Soushen from: http://image-net.org/challenges/LSVRC/2016/results
[19] Xie, S., Girshick, R., Dollar, P., Tu, Z. & He, K. 2016. Aggregated Residual Transformations for Deep Neural Networks. [Online] arXiv: 1611.05431. Available: arXiv:1611.05431v1
[20] ImageNet Large Scale Visual Recognition Challenge (2016), Part II, Available: http://image-net.org/challenges/LSVRC/2016/ [Accessed: 22/11/2016]
[21] Hu and Ramanan. 2016. Finding Tiny Faces. [Online] arXiv: 1612.04402. Available: arXiv:1612.04402v1
[22] Liu et al. 2016. SSD: Single Shot MultiBox Detector. [Online] arXiv: 1512.02325v5. Available: arXiv:1512.02325v5
[23] Redmon, J. Farhadi, A. 2016. YOLO9000: Better, Faster, Stronger. [Online] arXiv: 1612.08242v1. Available: arXiv:1612.08242v1
[24] YOLO stands for「You Only Look Once」.
[25] Redmon et al. 2016. You Only Look Once: Unified, Real-Time Object Detection. [Online] arXiv: 1506.02640. Available: arXiv:1506.02640v5
[26]Redmon. 2017. YOLO: Real-Time Object Detection. [Website] pjreddie.com. Available: https://pjreddie.com/darknet/yolo/ [Accessed: 01/03/2017].
[27] Lin et al. 2016. Feature Pyramid Networks for Object Detection. [Online] arXiv: 1612.03144. Available: arXiv:1612.03144v1
[28] Facebook's Artificial Intelligence Research
[29] Common Objects in Context (COCO) image dataset
[30] Dai et al. 2016. R-FCN: Object Detection via Region-based Fully Convolutional Networks. [Online] arXiv: 1605.06409. Available: arXiv:1605.06409v2
[31] Huang et al. 2016. Speed/accuracy trade-offs for modern convolutional object detectors. [Online] arXiv: 1611.10012. Available: arXiv:1611.10012v1
[32] ibid
[33] Wu et al. 2016. SqueezeDet: Unified, Small, Low Power Fully Convolutional Neural Networks for Real-Time Object Detection for Autonomous Driving. [Online] arXiv: 1612.01051. Available: arXiv:1612.01051v2
[34] Hong et al. 2016. PVANet: Lightweight Deep Neural Networks for Real-time Object Detection. [Online] arXiv: 1611.08588v2. Available: arXiv:1611.08588v2
[35] DeepGlint Official. 2016. DeepGlint CVPR2016. [Online] Youtube.com. Available: https://www.youtube.com/watch?v=xhp47v5OBXQ [Accessed: 01/03/2017].
[36] COCO - Common Objects in Common. 2016. [Website] Available: http://mscoco.org/[Accessed: 04/01/2017].
[37] ILSRVC results taken from: ImageNet. 2016. Large Scale Visual Recognition Challenge 2016.
[Website] Object Detection. Available: http://image-net.org/challenges/LSVRC/2016/results [Accessed: 04/01/2017].
[38] COCO Detection Challenge results taken from: COCO - Common Objects in Common. 2016. Detections Leaderboard [Website] mscoco.org. Available: http://mscoco.org/dataset/#detections-leaderboard [Accessed: 05/01/2017].
[39] ImageNet. 2016. [Online] Workshop Presentation, Slide 31. Available: http://image-net.org/challenges/talks/2016/ECCV2016_ilsvrc_coco_detection_segmentation.pdf [Accessed: 06/01/2017].
[40] Bertinetto et al. 2016. Fully-Convolutional Siamese Networks for Object Tracking. [Online] arXiv: 1606.09549. Available: https://arxiv.org/abs/1606.09549v2
[41] Held et al. 2016. Learning to Track at 100 FPS with Deep Regression Networks. [Online] arXiv: 1604.01802. Available: https://arxiv.org/abs/1604.01802v2
[42] David Held. 2016. GOTURN - a neural network tracker. [Online] YouTube.com. Available: https://www.youtube.com/watch?v=kMhwXnLgT_I [Accessed: 03/03/2017].
[43] Gladh et al. 2016. Deep Motion Features for Visual Tracking. [Online] arXiv: 1612.06615. Available: arXiv:1612.06615v1
[44] Gaidon et al. 2016. Virtual Worlds as Proxy for Multi-Object Tracking Analysis. [Online] arXiv: 1605.06457. Available: arXiv:1605.06457v1
[45] Lee et al. 2016. Globally Optimal Object Tracking with Fully Convolutional Networks. [Online] arXiv: 1612.08274. Available: arXiv:1612.08274v1
原报告地址:http://www.themtank.org/a-year-in-computer-vision
本文为机器之心编译,转载请联系本公众号得到受权。