cvpr 深度估计_无监督单目视频深度估计中的uncertainty方法(CVPR#x27;20)

Contribution
- 对11种使用uncertainty方法的全面评估
- 深度挖掘uncertainty对depth estimation起到的作用
- 提出一个新颖的self-teaching方法去model uncertainty
文中使用的uncertainty estimation分为两个类别:empirical uncertainty estimation和predictive uncertainty estimation,empirical的做法基本都是得到N个model得到N个输出,然后计算均值和方差;而predictive呢则是直接预测出uncertainty,下面分别介绍。
Empirical uncertainty estimation
Dropout Sampling
大概就是训练的时候层与层之间的连接以p的概率随机drop防止过拟合,测试的时候也去drop,一个forward跑N次就可以得到N个不同的model了,然后就可以计算model输出值的均值和方差了:

Bootstrapped Ensemble
这个方法就是从数据集种sample出N个subset,用同样的网络结构在不同的subset上分别训练,得到N个model,然后计算均值和方差。
Snapshot Ensemble
snapshot的做法是在一次training中通过使用cyclic learning rate schedules去得到C个model,然后再从C个model中选N个,这样做是否靠谱就不得而知了。
Predictive estimation
Learned Reprojection

很朴素的想法,让网络尽可能的去预测
Log-Likelihood Maximization
另一种预测uncertainty的方法是采用极大对数似然的思路,可以采用拉普拉斯分布来得到似然,这个似然函数在

对应得到的负对数似然loss就是:

考虑到不能直接得到重建深度,只能用像素值来代替:

当然除了拉普拉斯分布,还可以选用其他的分布比如高斯分布。
作者认为这种方式因为使用的是像素之间的重建误差,而在单目深度预测里面这个重建误差包含了depth和pose两项,所以网络估计的uncertainty也会包含这两项,最终得到的uncertainty会多包含pose uncertainty的信息,可能是个sub-optimal解。
Self-Teaching
所以为了直接对depth的uncertainty进行建模,作者采用了teacher-student framework,设计了两个结构相同的网络

估计训练流程是先训练teacher network,用Photometric loss去更新参数,然后student network使用
效果

感觉效果提升微乎其微,不过work确实make sense。
总结
- 提出了使用uncertainty的新方法, self-teaching,思路是make sense的,然而效果提升不大。
- 从文中给出的example来看网络输出的uncertainty比较大的地方主要是边缘或者说不同纹理之间有尖锐变化的区域,这些地方很容易不满足光度一致性的条件,而uncertainty的方法会降低这些区域的loss,但这也会导致网络一直无法学习到边缘这种很难匹配的地方,如果能有一种方法可以提高边缘点的匹配准确度应该会有比较大的效果提升。
- 有一种可能性是尽可能利用空间信息,现有的网络架构因为降采样等等必然会丢失边缘的细节信息,导致很难匹配,网络也很难在这些点学到东西,packnet-sfm可能是个很好的证明。
相关文章:

python之CSV文件格式
1、csv文件是以一些以逗号分隔的值 import csv filename "wenjian.csv" with open(filename) as f:reader csv.reader()header next(reader)for index,column in enumerate(header):#enumerate函数获取每个元素的索引及其值print(index,column) 转载于:https://ww…

最受欢迎的ASP.NET的CMS下载
http://www.csdn.net/article/2011-11-28/308172 转载于:https://www.cnblogs.com/xuddong/archive/2013/04/08/3071733.html

【组队学习】【29期】4. 吃瓜教程——西瓜书+南瓜书
4. 吃瓜教程——西瓜书南瓜书 航路开辟者:谢文睿、秦州领航员:刘琳航海士:谢文睿、秦州 基本信息 开源内容:https://github.com/datawhalechina/pumpkin-bookB 站视频:https://www.bilibili.com/video/BV1Mh411e7VU…

editor修改样式 vue_vue+element-ui项目搭建实战
1.使用vue ui创建vue工程利用vue-cli提供的图形化工具快速搭建vue工程:命令行运行:vue ui工程结构说明build:项目构建webpack(打包器)相关代码config:配置目录,包括端口号等node_modules:npm加载的项目依赖…

【IT笔试面试题整理】不用加减乘除做加法
【试题描述】写一个函数,求两个整数的和,要求在函数体内不得使用加减乘除四则运算符合。 基本思路是这样的: int A, B;A&B //看哪几位有进位A^B //不带进位加 考虑二进制加法的过程, 步骤一、A^B,能够得到没有…

修改centos7的网卡名
1. 使用命令修改网卡名 cd /etc/sysconfig/network-scripts/ mv ifcfg-ens33 ifcfg-eth0 mv ifcfg-ens34 ifcfg-eth1 2. 修改网卡内容 cat > ifcfg-eth0<<END TYPEEthernet BOOTPROTOnone DEFROUTEyes IPV4_FAILURE_FATALno NAMEeth0 DEVICEeth0 ONBOOTyes IPADDR1…

【组队学习】【29期】5. 李宏毅机器学习(含深度学习)
5. 李宏毅机器学习(含深度学习) 航路开辟者:王茂霖、陈安东,刘峥嵘,李玲领航员:王洲烽航海士:王茂霖 基本信息 开源内容:https://github.com/datawhalechina/leeml-notes开源内容…

eslint 换行_javascript – 预期的换行符为“LF”,但在Eslint中使用gulp找到“CRLF”换行符...
当在gulp项目中使用eslint时,我遇到了像这样的错误的问题.预期的linebreaks为’LF’,但是发现’CRLF’linebreak-style,我正在使用Windows环境运行gulp,并且下面给出了整个错误日志Kiran (master *) Lesson 4 $gulp:17:08] Using gulpfile c:\Users\Sai\Desktop\web-build-tool…

【组队学习】【29期】6. 动手学数据分析
6. 动手学数据分析 航路开辟者:陈安东、金娟娟、杨佳达、老表、李玲、张文涛、高立业领航员:李婉桦航海士:陈安东、叶前坤、18:46、吴卓辰、livid 基本信息 开源内容:https://github.com/datawhalechina/hands-on-d…

编码风格 - 函数
每个函数都应该设计得尽可能简单,简单的函数才容易维护。应遵循以下原则: 实现一个函数只是为了做好一件事情,不要把函数设计成用途广泛、面面俱到的,这样的函数肯定会超长,而且往往不可重用,维护困难。 函…

利用Oracle GoldenGate记录源系统所有表的操作
通过goldengate,可以实现目标表和源表不同结构之间的实时复制,包括记录源系统所有表的变更操作,供ETL或其它审计系统使用。 记录信息包括表名、操作时间、操作SCN,事务标记,操作类型到一个流水表。用于后续ETL处理过程…

dis的前缀单词有哪些_玩转英语词汇--词汇积累策略之前缀dis
拇指英语说,分享英语学习心得,技巧和方法。让英语学习变得更有趣,更简单。在英语学习中,词汇量的大小是衡量英语水平的重要标志。通常词汇量越大,运用英语的能力就越强,反之亦然。许多英语偏弱的学生将词汇…

Centos7.x系统配置上的变化【转】
安装CentOS 7后,一开始有点儿无力吐槽的感觉,变化这么大? 一:Runlevel 二:Services 三:网络 四:ip ss指令替代 ifconfig route arp netstat 五:nmtui配置基本网络连接 六:…

C++自动生成的成员函数
每个类都有构造函数和析构函数。如果程序员没有编写这些成员函数,C将自动生成他们。 1、class::class() 默认的构造函数。 如果没有定义其它的构造函数就会自动生成。生成的代码使用随机值填充类的数据成员。 当类的变量不带参数时就会被自动调用,如&…

【组队学习】【29期】7. 集成学习(上)
7. 集成学习(上) 航路开辟者:李祖贤、薛传雨、六一、杨毅远、陈琰钰领航员:刘思含航海士:李祖贤 基本信息 开源内容:https://github.com/datawhalechina/ensemble-learning开源内容:https://…

shell中竖线的作用_如何在 Linux 中安装、配置和使用 Fish Shell?
每个 Linux 管理员都可能听到过 shell 这个词。你知道什么是 shell 吗? 你知道 shell 在 Linux 中的作用是什么吗? Linux 中有多少个 shell 可用?-- Magesh Maruthamuthu每个 Linux 管理员都可能听到过 shell 这个词。你知道什么是 shell 吗? 你知道 s…

Android APK加壳技术方案----代码实现
本文章由Jack_Jia编写,转载请注明出处。 文章链接:http://blog.csdn.net/jiazhijun/article/details/8746917 作者:Jack_Jia 邮箱: 309zhijun163.com 一、序言 在上篇“Android APK加壳技术方案”(http://blog.cs…

【组队学习】【29期】9. 基于transformers的自然语言处理(NLP)入门
9. 基于transformers的自然语言处理(NLP)入门 航路开辟者:多多、erenup、张帆、张贤、李泺秋、蔡杰、hlzhang领航员:张红旭、袁一涵航海士:多多、张红旭、袁一涵、童鸣 基本信息 开源内容:https://github.com/datawhalechina/L…

golang xml和json的解析与生成
golang中解析xml时我们通常会创建与之对应的结构体,一层层嵌套,完成复杂的xml解析。 package main;import ("encoding/xml""fmt" )//我们通过定义一个结构体,来解析xml //注意,结构体中的字段必须是可导出的 …

mongodb 索引去重_朋友问你 MongoDB 是什么?给他看这篇就好了
点击▲关注 “ITPUB” 给公众号标星置顶更多精彩 第一时间直达来源:hello_锦泰blog.csdn.net/hayre/article/details/80628431总结的目的在于回顾MongoDB的相关知识点,明确MongoDB在企业级应用中充当的角色,为之后的技术选型提供一个可查阅…

Win32 API消息函数:GetMessagePos
函数功能:该函数返回表示屏幕坐标下光标位置的长整数值。此位置表示当上一消息由GetMessage取得时鼠标占用的点。 函数原型:DWORD GetMessagePos(VOID) 参数:无。 返回值:返回值给出光标位置的X&a…

【组队学习】【29期】11. 青少年编程(Scratch 二级)
11. 青少年编程(Scratch 二级) 航路开辟者:王思齐、马燕鹏领航员:马燕鹏航海士:王思齐、马燕鹏 基本信息 开源内容:https://github.com/datawhalechina/team-learning-program/tree/master/Scratch内容属…

TP基础问题第一天
1、入口文件中定义的内容,说出3点 1. 检测PHP环境 if(version_compare(PHP_VERSION,5.3.0,<)) die(require PHP > 5.3.0 !); 2. 开启调试模式 建议开发阶段开启 部署阶段注释或者设为false define(APP_DEBUG,True); 3. 定义应用目录 define(APP_P…

均值聚类散点图怎么画_GraphPad Prism 绘图教程 | 手把手教你绘制Column散点图
散点图,最常见的散点图是数据在直角坐标系中的分布图,我们可以考察坐标点的分布,判断两变量之间是否存在某种关联或总结坐标点的分布模式和趋势等;此外,我们还会用到多组数据的散点图,那我们如何来操作呢&a…

lucene3.0范围查找TermRangeQuery
原文链接:http://www.wenhq.com/article/view_415.html欢迎转载,请注明出处:亲亲宝宝 lucene3.0范围查找TermRangeQuery 在lucene3.0中,范围查询也有很大的变化,RangeQuery已经不推荐使用,使用TermRangeQuery和NumericRangeQuery两个替代。Te…

开源大数据周刊-第11期
摘要:开源有四个阶段:拥抱开源、回馈开源、融合开源、回报开源阿里云E-Mapreduce动态E-Mapreduce团队1.3.3版本 (已经发布)商业化发布,用户无需申请即可使用E-MapReduce服务1.3.4版本 (正在研发)升级jdk到1.8升级Hadoop到2.7.2添加python2.7.…

【青少年编程】【四级】绘制花瓣
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。 我们将有关编程题目的教学视频已经发布到抖音号21252972100,小马老…

一加7t人脸识别_一加7T系列国行版开启预约 谷歌Pixel 4系列高清图曝光
据一加手机官方消息,一加7T系列国行版已经开启预约,全新系列将于10月15日正式发布。一加7T采用6.55英寸,分辨率为24001080的AMOLED显示屏,具有90Hz刷新率、峰值亮度为1000尼特和HDR10 ,采用屏下指纹。硬件方面…

MS IME 2007输入法
CH到JP 快捷键 ALTShift A到あ 快捷键 ctrlcaps lock 切换到片假 快捷键 altcaps lock 切换回来 快捷键 shiftcaps lock比如我输あした。本来按空格该出现"明日"的汉字三个假名下面的横线要是分开的话,你按住"SHIFT""左右箭头…

Weex第一天:手势
实验特征 Weex封装原生触摸事件以提供手势系统。使用手势类似于在Weex中使用事件。只需on在节点上设置属性即可收听手势。 类型 目前,有四种类型的手势: Touch。当触摸点被放置,移动或从触摸表面移除时,触摸手势被触发。触摸手势是…