万物皆可“计算机视觉”

简介: 想做计算机视觉?深度学习是最近的发展方向。
TB1b9lTDMTqK1RjSZPhXXXfOFXa.jpg

本文为 AI 研习社编译的技术博客,原标题 :

How to do everything in Computer Vision

作者 | George Seif

翻译 | chesc、Disillusion、Ophria

校对 | 邓普斯•杰弗      审核 | Lam-W     整理 | 菠萝妹

原文链接:

https://towardsdatascience.com/how-to-do-everything-in-computer-vision-2b442c469928

TB1MKXTDMDqK1RjSZSyXXaxEVXa.gif

Mask-RCNN进行目标检测和实例分割

想做计算机视觉?深度学习是最近的发展方向。大规模数据集加上深度卷积神经网络(CNNs)的表征能力使得超精确和稳健的模型成为可能。现在只剩下一个挑战:如何设计你的模型。

由于计算机视觉领域广泛而复杂,因此解决方案并不总是很清晰。计算机视觉中的许多标准任务都需要特别考虑:分类,检测,分割,姿态估计,增强和恢复,动作识别。尽管用于每个任务的最先进的网络表现出共同的模式,但他们都需要自己独特的设计风格。

那么我们如何为所有这些不同的任务建立模型呢?

让我来告诉你如何用深度学习在计算机视觉中做所有事情!

  分类

所有任务中最为人所知的!图像分类网络以固定尺寸的输入开始。输入图像可以具有任意数量的通道,但对于RGB图像通常为3。在设计网络时,分辨率在技术上可以是任何尺寸,只要它足够大以支持你将在整个网络中执行的下采样数量。例如,如果您在网络中进行4次下采样,那么您的输入尺寸需要至少为 4² = 16 x 16 像素。

当你进入网络更深层时,空间分辨率将会降低,就像我们尽力挤压所有信息并降低到一维向量表示。为了确保网络始终具有继承其提取的所有信息的能力,我们根据深度按比例增加特征图的数量以适应空间分辨率的降低。也就是说,我们在下采样过程中丢失了空间信息,为了适应损失,我们扩展了我们的特征图以增加我们的语义信息。

在你选择了一定数量的下采样后,特征图会被矢量化并送入一系列全连接层。最后一层的输出与数据集中的类一样多。

TB1hv87DMHqK1RjSZFEXXcGMXXa.jpg

  目标检测

目标检测器有两种形式:单阶段和两阶段。它们两者都以“锚框”开始;这些是默认的边界框。我们的检测器将预测这些方框与边界框真值之间的差异,而不是直接预测方框。

在两阶段检测器中,我们自然有两个网络:一个框提议网络和一个分类网络。框提议网络得到了边界框的坐标,它认为目标在这里的可能性很大;再次提醒,这些坐标都是相对于锚框的。然后,分类网络获取每个边界框并对其中的潜在物体进行分类。

在单阶段检测器中,提议和分类器网络被融合到一个单独的阶段中。网络直接预测边界框坐标和在该框内物体的类别。因为两个阶段融合在一起,所以单阶段检测器往往比两阶段更快。但是由于两个任务的分离,两阶段检测器具有更高的精度。

TB1nL87DMHqK1RjSZFEXXcGMXXa.jpg

Faster-RCNN 两阶段目标检测架构

TB11pJ4DQvoK1RjSZFDXXXY3pXa.jpg

SSD 一阶段目标检测架构

  分割

分割是计算机视觉中更独特的任务之一,因为网络需要学习低级和高级信息。低级信息通过像素精确地分割图像中的每个区域和物体,而高级信息用于直接对这些像素进行分类。这就需要将网络设计成结合低级信息和高级信息的结构,其中低级空间信息来自于前面层且是高分辨率的,高级语义信息来自于较深层且是低分辨率的。

正如我们在下面看到的,我们首先在标准分类网络上运行我们的图像。然后,我们从网络的每个阶段提取特征,从而使用从低到高的级别内的信息。每个级别的信息都是独立处理的,然后依次将它们组合在一起。在组合信息时,我们对特征图进行上采样以最终获得完整的图像分辨率。

要了解更多有关如何用深度学习进行分割的详细信息,请查看此文章。

TB1BOF7DQvoK1RjSZFwXXciCFXa.jpg

GCN分割架构

  姿态估计

姿态估计模型需要完成两个任务:(1)检测每个身体部位图像中的关键点(2)找出如何正确连接这些关键点的方式。这分为三个阶段:

1、使用标准分类网络从图像中提取特征

2、鉴于这些特点,训练一个子网络来预测一组2D热力图。每张热力图都与一个特定的关键点相关联,并且包含每个图像像素是否可能存在关键点的置信值。

3、再次给出分类网络的特征,我们训练一个子网络来预测一组2D向量场,其中每个向量场编码关键点之间的关联度。具有高度关联性的关键点就称其为连接的。

以这种方式训练模型与子网络将共同优化检测关键点并将它们连接在一起。

TB1v15XDNjaK1RjSZFAXXbdLFXa.jpg

开放式姿态估计体系结构

  增强和恢复

增强和恢复网络是它们自己的独特之处。因为我们真正关心的是高像素/空间精度,所以我们不会对这些进行任何降采样。降采样真的会杀死这些信息,因为它会减少我们空间精度的许多像素。相反,所有的处理都是在完整的图像分辨率下完成的。

我们首先将要增强/恢复的图像以全解析度传递到我们的网络,而不进行任何修正。网络仅仅由一堆卷积和激活函数组成。这些块通常是最初为图像分类而开发的那些块的灵感,有时是直接副本,例如残余块、密集块、挤压激励块等。由于我们希望直接预测图像像素,不需要任何的概率或分数,所以在最后一层上没有激活功能,甚至没有sigmoid或softmax。。

这就是所有这些类型的网络!在图像的全解析度下进行大量的处理,以获得高空间精度,这些使用已经证明与其他任务相同的卷积。

TB1Oa4WDNTpK1RjSZFGXXcHqFXa.png

EDSR超分辨率架构

  行为识别

动作识别是少数几个需要视频数据才能正常工作的应用之一。要对一个动作进行分类,我们需要知道随着时间的推移场景发生的变化;这导致我们需要视频。所以我们的网络必须训练以学习空间和时间信息。也就是空间和时间的变化。最适合的网络是3D-CNN。

3D- CNN,顾名思义,就是一个使用3D卷积的卷积网络!它们不同于常规CNN的地方在于其卷积应用于三维空间:宽度、高度和时间。因此,每个输出像素都是基于它周围的像素和相同位置上的前帧和后帧中的像素进行计算预测的!

TB1wFN4DQvoK1RjSZFDXXXY3pXa.png

直接进行图像的批量传递

视频帧可以通过以下几种方式传递:

(1)直接以大批量,如图1所示。由于我们正在传递一组序列帧,因此空间和时间信息都是可用的

TB1ESl0DFzqK1RjSZSgXXcpAVXa.png

单帧+光流(左)。视频+光流(右)

(2)我们还可以在一个流(数据的空间信息)中传递单个图像帧,并从视频(数据的时间信息)中传递其相应的光流表示。我们将使用常规的2D CNNs从两者中提取特征,然后将它们组合起来传递给我们的3D CNN,它将组合这两种类型的信息

(3)将我们的帧序列传递给一个3D CNN,将视频的光流表示传递给另一个3D CNN。这两个数据流都有可用的空间和时间信息。这可能是最慢的选项,但同时也可能是最准确的选项,因为我们正在对视频的两个不同表示进行特定的处理,这两个表示都包含所有信息。

所有这些网络都输出视频的动作分类。

想要继续查看该篇文章相关链接和参考文献?

长按链接点击打开或点击【万物皆可“计算机视觉”】:

https://ai.yanxishe.com/page/TextTranslation/1358

AI研习社每日更新精彩内容,观看更多精彩内容:雷锋网雷锋网雷锋网(公众号:雷锋网)

命名实体识别(NER)综述

杰出数据科学家的关键技能是什么?

初学者怎样使用Keras进行迁移学习

如果你想学数据科学,这 7 类资源千万不能错过

等你来译:

深度学习目标检测算法综述

一文教你如何用PyTorch构建 Faster RCNN

高级DQNs:利用深度强化学习玩吃豆人游戏

用于深度强化学习的结构化控制网络 (ICML 论文讲解)

目录
相关文章
|
7月前
|
机器学习/深度学习 人工智能 监控
人工智能计算机视觉
人工智能计算机视觉
75 1
|
4月前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习的奥秘:探索人工智能的未来之路
本文深入探讨了深度学习技术的核心原理及其在人工智能领域的应用。通过浅显易懂的语言和生动的比喻,我们将一窥深度学习如何模仿人脑处理信息,以及这项技术如何推动自动驾驶汽车、医疗诊断和自然语言处理等领域的创新。文章旨在为初学者提供一个清晰的深度学习入门视角,同时为有一定基础的读者展现深度学习的未来发展潜力。
|
3月前
|
机器学习/深度学习 人工智能 监控
深度学习浪潮中的轻舟:探索卷积神经网络的奥秘
在这个数据泛滥的时代,深度学习如同一艘巨轮,在知识的海洋中破浪前行。然而,在这艘巨轮上,有一个小小的角落常常被人忽视—那就是卷积神经网络(CNN)。本文将带领读者一探究竟,从CNN的核心概念到其在实际中的应用,我们将用通俗易懂的语言,揭开这一技术神秘面纱,让每一位对深度学习感兴趣的朋友都能轻松理解并应用CNN。
43 0
|
4月前
|
机器学习/深度学习 编解码 文字识别
第3章 计算机视觉基础
这篇文章是计算机视觉基础的介绍,涵盖了计算机视觉的概念、应用场景、挑战,以及常见的计算机视觉任务(如图像分类、目标检测、图像分割、OCR、视频分析和图像生成),并通过PaddleHub工具提供了快速实践的指南。
|
6月前
|
机器学习/深度学习 搜索推荐 自动驾驶
深度学习与计算机视觉的融合发展
深度学习与计算机视觉的融合发展
52 1
|
7月前
|
机器学习/深度学习 人工智能 监控
【AI 初识】计算机视觉的概念
【5月更文挑战第3天】【AI 初识】计算机视觉的概念
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
【专栏】计算机视觉借助深度学习实现革命性变革
【4月更文挑战第27天】计算机视觉借助深度学习实现革命性变革,从图像分类到复杂场景理解,深度学习模型提升性能并拓宽应用边界。深度学习兴起始于AlexNet,后续模型如VGG、ResNet等不断优化。对象检测、语义分割、图像生成等领域取得显著进展,广泛应用于安防、医疗、零售和农业。然而,数据隐私、模型可解释性、计算资源和鲁棒性仍是待解挑战。未来,计算机视觉将在多领域发挥更大潜力,技术创新与伦理考量将驱动其健康发展。
110 1
|
7月前
|
机器学习/深度学习 人工智能 算法
深度学习引领计算机视觉革命
随着深度学习技术的快速发展,计算机视觉领域迎来了一场革命。本文将探讨深度学习在计算机视觉中的应用,包括图像分类、目标检测、图像生成等方面。通过深度学习的强大能力,计算机视觉正在实现更高精度、更广泛的应用,为人们的生活带来了巨大的影响。
|
7月前
|
机器学习/深度学习 编解码 监控
深度学习掀起计算机视觉革命
计算机视觉是一门涵盖了图像处理、模式识别、机器学习等多个领域的交叉学科。近年来,随着深度学习技术的发展,计算机视觉得到了飞速的发展,取得了令人瞩目的成果。本文将探讨深度学习在计算机视觉中的应用,以及它所带来的变革。
|
机器学习/深度学习 数据采集 算法
计算机视觉技术
计算机视觉技术
105 1