关闭

深度学习+几何结构:1+1>2?

1038人阅读 评论(0) 收藏 举报
分类:

转载:

http://mp.weixin.qq.com/s/bb9PNsgEqb-xiXPsdtWh6g

深度学习+几何结构:1+1>2?

Have We Forgotten about Geometry in Computer Vision?http://alexgkendall.com/computer_vision/have_we_forgotten_about_geometry_in_computer_vision/

深度学习极大的促进了计算机视觉领域的发展。现在计算机视觉领域的很多问题的最优解决方案都可以用一个端到端的深度学习模型来搞定。一些传统的技术已经研究了几十年,而一个初学者无需了解该领域的基础理论就可以通过一个端到端的深度神经网络来得到一个还不错的benchmark。但是,这些神经网络大部分都只是一个黑盒子,虽然很多人用的很溜,但是还有很多问题并没有完全搞明白。


先抛出结论:深度学习和几何结构的结合,将极大提高现有算法的性能



几何信息

几何描述了物理世界的结构、形状、体积、深度、姿态、视差、运动、光流等信息。

真实世界的几何信息


语义

这里不得不提到另外一个术语:语义表达。语义表达利用语言来描述现实世界里的关联。比如,猫或者狗都是对某种物体的语言描述。


语义有关的研究在计算机视觉领域广受关注,许多高引用率的突破性的文章都和图像分类和语义分割有关。

电脑对世界的语义理解。不同的颜色表示不同的语义类,比如道路、行人、车辆、天空、树木等。


语义的一个问题就是它是人类自己定义的,对于需要和人类进行交互的AI系统来说语义信息非常必要。但很可能这样的语义表达并不是最优的,而直接从可观测到的几何信息学习可能更加符合自然规律。


几何vs语义

几何和语义相比,有两个明显的优势:


1、几何信息可以直接观测到。人类或动物都可以利用眼睛来观察世界的几何信息。比如我们可以从连续的视频帧间的对应像素来观察到运动和深度信息。还有一些更有趣的,比如我们可以根据阴影来观察形状,根据立体视差来观察深度。


相比之下,语义表达则专属于人类语言,只有有限的词汇来描述,并且不能直观的观测。


2、几何信息是连续的变量。比如,深度可以用米来表示,视差可以用像素来表示。但是语义表达只能是大量离散的量或者二元标签。

运动恢复结构方法重建的几何结构


人类在婴儿时期时是通过低级的几何信息来学习识别物体的。根据美国光学协会的报告,人类婴儿在最初的9个月内主要是学习调整眼睛来聚焦和理解深度,学习不同的颜色和几何。直到12个月后才学会如何识别物体和语义信息。这也说明了几何信息对于人类视觉的基础学习很重要。这个思想可以用到计算机视觉模型中来。


几何信息的作用

几何信息的这两个优势非常重要,尤其是对于无监督学习来说。


无监督学习是人工智能领域非常热的研究方向,主要目的就是在没有数据标签的情况下学习表达和结构信息。这个非常有用,因为想要得到大量带标签的训练数据非常困难且代价非常大。


几何信息的可观测性和连续表达性可以用于构建无监督学习模型。例如:用无监督训练来用几何信息学习深度信息,《Unsupervised CNN for Single View Depth Estimation: Geometry to the Rescue》、用无监督训练来用几何信息学习运动《Learning to See by Moving》等。


具体例子

几何信息用于深度学习中的2个具体例子:

1

用PoseNet学习重定位

PoseNet是一个单目6个自由度的重定位算法。


ICCV 2015上,论文《PoseNet: A Convolutional Network for Real-Time 6-DOF Camera Relocalization》使用一个卷积神经网络来学习输入图像到6自由度相机姿态的端到端的映射,这仅仅是简单地将该问题视为一个黑盒问题。CVPR 2017的论文《Geometric loss functions for camera pose regression with deep learning》使用几何重投影误差来同时对相机位置和方向进行学习,利用真实世界几何信息极大地提高了性能。

PoseNet:从单张图片估计相机的6个自由度


项目主页:

http://mi.eng.cam.ac.uk/projects/relocalisation/

开源代码:

https://github.com/alexgkendall/caffe-posenet


2

用双目视觉进行深度估计

双目视觉算法用2个相机拍摄同一物体的视差来估计深度。该问题可以简化为一个匹配问题——也就是寻找同一个物体在左右两个相机拍摄图片里的对应点。


目前该领域最好的算法是基于深度学习的方法来学习用于匹配的特征,而估计深度所必须的匹配和正则化部分大部分仍然是非学习的方法。而CVPR17论文《End-to-End Learning of Geometry and Context for Deep Stereo Regression》 提出了GC-Net (Geometry and Context Network)。

该文章提出的GC网络结构


此论文将该问题视为基础几何的问题。该论文的创新之处就是用微分方式建立几何代价体用于回归模型。从下图的结果来看,该方法估计的深度已经非常接近groundtruth。

从左到右:输入的左双目图,该文章深度估计结果,groundtruth


总结


1、深入理解经典的CV方法对于解决计算机视觉问题非常有价值,尤其是机器学习或者数据科学出身的人。


2、如果网络构建可以结构化,利用问题的几何特性,用深度学习来学习和表达复杂模型将会变得更容易且更高效。



0
0
查看评论

阿里天池比赛快速入门

【这里只讲快速入门——即破题,正负样本不平衡、特征数量等问题就自己多看论文或者其他资料吧~~如果还有数据挖掘相关基础知识不了解的,建议看看《数据挖掘导论》】 【以下是理解错误案例】:错误的根本原因是不能保证训练集的构建逻辑与赛题目标保持一致,不能保证训练集和测试集的构建逻辑保持一致,不能保...
  • lvhao92
  • lvhao92
  • 2016-04-18 09:28
  • 2541

FlowNet 2.0: Evolution of Optical Flow Estimation with Deep Networks

最近专心看flownet,在跑代码,但愿有个好结果。如果出问题,应该是delay_mult也设置成10的问题了。 训练过程看flownet2论文 从图中结果看,flownet2的结果更加平滑,2代相对于1代在质量和速度上都有了显著的提升 1.注重了训练样本质量 2.提出了网络堆结构,以中间光流状...
  • lvhao92
  • lvhao92
  • 2017-06-14 13:36
  • 1534

End-to-End Learning of Geometry and Context for Deep Stereo Regression

摘: 使用深度特征表示组成成本向量,充分利用3D卷积提取上下文的纹理信息。深度值以差分softargmin操作相规范化,没有额外的预处理或者正则化得到一种端到端的方法 介: 立体匹配算法应该看重全局,而非局部。本篇展示了如何利用端到端的立体匹配模型,从而理解更加广泛的文本信息 3.学习端到端偏差回归
  • lvhao92
  • lvhao92
  • 2017-05-23 17:23
  • 1134

深度学习与计算机视觉 看这一篇就够了

人工智能是人类一个非常美好的梦想,跟星际漫游和长生不老一样。我们想制造出一种机器,使得它跟人一样具有一定的对外界事物感知能力,比如看见世界。 在上世纪50年代,数学家图灵提出判断机器是否具有人工智能的标准:图灵测试。即把机器放在一个房间,人类测试员在另一个房间,人跟机器聊天,测试员事先不知道另...
  • tsb831211
  • tsb831211
  • 2016-09-26 10:36
  • 1941

一种人工智能学习--兼谈基于微分几何与拓扑的神经网络

一种人工智能学习–兼谈基于微分几何与拓扑的神经网络标签(空格分隔): 人工智能 神经网络 拓扑 微分几何 深度学习版权声明:本文为作者原创文章,未经作者允许不得转载。前言提到人工智能,相信对机器学习、神经网络、深度学习等已经非常熟悉,这里我要提另一种人工智能学习结构——共形学习,亦反映了我的想法和兴...
  • hjwang1
  • hjwang1
  • 2016-08-12 19:43
  • 1332

深度学习来做图像分割 Fully Convolutional Networks for Semantic Segmentation (FCNs)

摘要 卷积网络在特征分层领域是非常强大的视觉模型。我们证明了经过端到端、像素到像素训练的卷积网络超过语义分割中最先进的技术。我们的核心观点是建立“全卷积”网络,输入任意尺寸,经过有效的推理和学习产生相应尺寸的输出。我们定义并指定全卷积网络的空间,解释它们在空间范围内dense predictio...
  • scutjy2015
  • scutjy2015
  • 2017-07-05 20:19
  • 3073

深度学习中的数学与技巧(9):协方差矩阵的几何解释

reference:https://www.cnblogs.com/nsnow/p/4758202.html A geometric interpretation of the covariance matrix http://www.visiondummy.com/2014/04/...
  • u011534057
  • u011534057
  • 2016-10-20 17:32
  • 706

斯坦福人工智能突破:结构递归神经网络用于 时空领域图像中的深度学习

虽然相当适合用来进行序列建模,但深度递归神经网络体系结构缺乏直观的高阶时空架构。计算机视觉领域的许多问题都固有存在高阶架构,所以我们思考从这方面进行提高。在解决现实世界中的高阶直觉计算方面,时空领域图像是一个相当流行的工具。在本文中,我们提出了一种结合高阶时空图像和递归神经网络的方法。我们开发了一种...
  • baobei0112
  • baobei0112
  • 2016-08-19 10:42
  • 1368

读论文笔记:无监督的卷积神经网络对单目视图的深度估计

Unsupervised CNN for Single View Depth Estimation: Geometry to the Rescue 作者R Garg , KBG Vijay , G Carneiro ,I Reid 论文原文:https://www.researchgate.ne...
  • fuzi2012
  • fuzi2012
  • 2017-05-29 20:56
  • 781

神经网络:学习(2)

初始化,不能一开始全部全设成0,因为这样的话,隐层结点就会变得全部一样,体现不出神经网络多层多结点的优越性。 咦~如果层数很多的话,超过三层,那么有个潜规则就是中间的几层的隐节点数一般都是一样大小 隐节点数稍微大点输入结点个数这个是极好的。 下面就是几个步骤 第一步,随机化参数 第...
  • lvhao92
  • lvhao92
  • 2016-08-04 21:45
  • 192
    个人资料
    • 访问:124716次
    • 积分:2122
    • 等级:
    • 排名:千里之外
    • 原创:68篇
    • 转载:132篇
    • 译文:1篇
    • 评论:8条
    文章分类
    最新评论