把效果图放在前面

03.28

handle_motion  False
architecture    simple
joint_encoder  False
depth_normalization  True
compute_minimum_loss  True
从头训练,没有任何数据增强

===============================

2019年3月22日13:20:38

论文名:

Depth Prediction Without the Sensors: Leveraging Structure for Unsupervised Learning

from Monocular Videos

代码: https://github.com/tensorflow/models/tree/master/research/struct2depth

看论文效果,说是可以处理运动区域,甚至计算出面前的汽车的移动速度。

对tensorflow不熟,算是一边学tensorflow,一边看这个算法。

另外,jupyter notebook是个好东西,可以自己给自己写教程。。。

最后发现这个库的代码根本不完善!!!

说是可以预测移动的物体,但是:

Similar to the ego-motion model, it takes an RGB image sequence as input,

but this time complemented by pre-computed instance segmentation masks.

也就是先做了实例分割。

https://github.com/tensorflow/models/issues/6173

他们先用mask-rcnn在另一个数据集上训练了实例分割,生成了X-seg.png

用align.py对准后,生成了 X-fseg.png 图片。

这就有点死循环了,我还指望着深度估计能够提升语义分割和动态场景的处理的效果呢,结果这。。。

这个流程图里头,用于训练的也是实例分割图片,暗示这个网络就算处理移动物体,也是训练

过的类别才能处理。

在readme里头也不清清楚楚的写出来。。。

gen_data部分,针对 city 数据集和 kitti 数据集操作不一样。

因为要用align.py比对并产生fseg图片,city数据集有标注好的实例分割图片,

kitti没有,然而我没下city数据集。。。然后我就跳过handle_motion部分的代码了。

不过这个库本身已经包含了DDVO的深度正则化的步骤在里头了。

2019年3月26日19:13:56

不处理移动物体的版本终于用pytorch重写完了,重点重写了建立loss的部分,loss之前的部分

沿用sfmlearner的代码。还得再花几天仔细消化。

因为原始的代码里头是处理移动物体的,所以连 explainability_mask 都省掉了,只有一个

warp mask来帮助计算误差,其实sfmlearner里头也需要一个warp mask。

还感觉到应该专门弄一个 seq_length x scale_num 的矩阵,代码看着太啰嗦了。

2019年3月28日10:43:11

1600张图片跑了94个epoch,效果图就是文章最上面的gif

这样的数据量,这样的训练次数,弄出这个效果我很满意,哈哈哈!

而且没上finetune,后面再把finetune部分改写成pytorch。

碰到一个 tensorflow 挂起的问题,还不报错,tf 真是难以调试,真难用。

2019年3月29日17:31:12

文章里的 finetune 看起来就像在相邻的几帧上做过拟合。。。

2019年3月30日11:07:04

想了想,数据集很小并不能保证可以 过拟合出想要的效果,反而会因为解空间的约束太少,

搞出一个不好的效果。

本来是想预测出一个深度图,给弱监督语义分割用的,再结合三维重建,重建出特定种类

目标物的三维点云出来供后续使用的,看来还是要加强深度估计的效果和泛化能力。

2019年4月2日19:19:49

看了点语义分割的东西,了解了下CRFs,deeplab系列的分割算法。

刚开始还在想用CRFs让预测出来的深度图更sharp一点,然而deeplab V3后都把CRFs去掉了。

不如直接把deeplab V3前面的结构拿过来生成视差图?搞不好还可以很好的和语义分割结合起来。

然后我看到了几篇CRFs做深度估计的文章。。。比如 CRFasRNN 。。。

2019年4月4日09:09:01

找到一个dilated resnet的语义分割库,看到一个多任务学习 multi task learning 的概念。

深度估计 和 语义分割 肯定是耦合在一起的。

2019年4月9日09:56:18

找了一些depth fusion,三维重建的东西。

https://github.com/andyzeng/tsdf-fusion-python

想起了以前做 ptychography 成像的时候,有一个大的图像要恢复,但是算法只能

一次优化一小块区域,这个时候就要利用好overlap部分,但是前提是知道position。

准备先用slam的方式算出pose,舍弃掉sfmlearner中姿态估计的部分,深度估计还是

用这些网络来算。充分利用两张深度图之间的重叠部分,加速收敛。

struct2depth 记录的更多相关文章

  1. 记一次debug记录:Uncaught SyntaxError: Unexpected token ILLEGAL

    在使用FIS3搭建项目的时候,遇到了一些问题,这里记录下. 这里是发布搭建代码: // 代码发布时 fis.media('qa') .match('*.{js,css,png}', { useHash ...

  2. nginx配置反向代理或跳转出现400问题处理记录

    午休完上班后,同事说测试站点访问接口出现400 Bad Request  Request Header Or Cookie Too Large提示,心想还好是测试服务器出现问题,影响不大,不过也赶紧上 ...

  3. Kali对wifi的破解记录

    好记性不如烂笔头,记录一下. 我是在淘宝买的拓实N87,Kali可以识别,还行. 操作系统:Kali 开始吧. 查看一下网卡的接口.命令如下 airmon-ng 可以看出接口名称是wlan0mon. ...

  4. 2015 西雅图微软总部MVP峰会记录

    2015 西雅图微软总部MVP峰会记录 今年决定参加微软MVP全球峰会,在出发之前本人就已经写这篇博客,希望将本次会议原汁原味奉献给大家 因为这次是本人第一次写会议记录,写得不好的地方希望各位园友见谅 ...

  5. 分享一个SQLSERVER脚本(计算数据库中各个表的数据量和每行记录所占用空间)

    分享一个SQLSERVER脚本(计算数据库中各个表的数据量和每行记录所占用空间) 很多时候我们都需要计算数据库中各个表的数据量和每行记录所占用空间 这里共享一个脚本 CREATE TABLE #tab ...

  6. 我是如何在SQLServer中处理每天四亿三千万记录的

    首先声明,我只是个程序员,不是专业的DBA,以下这篇文章是从一个问题的解决过程去写的,而不是一开始就给大家一个正确的结果,如果文中有不对的地方,请各位数据库大牛给予指正,以便我能够更好的处理此次业务. ...

  7. 前端学HTTP之日志记录

    前面的话 几乎所有的服务器和代理都会记录下它们所处理的HTTP事务摘要.这么做出于一系列的原因:跟踪使用情况.安全性.计费.错误检测等等.本文将谥介绍日志记录 记录内容 大多数情况下,日志的记录出于两 ...

  8. ASP.NET Core应用中如何记录和查看日志

    日志记录不仅对于我们开发的应用,还是对于ASP.NET Core框架功能都是一项非常重要的功能特性.我们知道ASP.NET Core使用的是一个极具扩展性的日志系统,该系统由Logger.Logger ...

  9. python+uwsgi导致redis无法长链接引起性能下降问题记录

    今天在部署python代码到预生产环境时,web站老是出现redis链接未初始化,无法连接到服务的提示,比对了一下开发环境与测试环境代码,完全一致,然后就是查看各种日志,排查了半天也没有查明是什么原因 ...

随机推荐

  1. Arch i3wm

    pacman -S i3-gaps i3blocks i3status dmenu xprofile设置 nano /home/user/,xprofile export LANG=zh_CN.UTF ...

  2. 如何通过Chrome远程调试android设备上的Web网站

    网上的帖子很多,但很多都是老版本的,试过了,根本不管用,花了一天时间,终于在本机试验通过了,特记录下来,以备用.有需要的朋友也可以参考.先上一张图,看看PC端chrome上调试的效果: 左边是手机的模 ...

  3. svn 部署

    安装svn [root@localhost ~]# yum -y install subversion 创建两个目录 一个 数据存储 一个用户密码 [root@localhost ~]# mkdir ...

  4. windows下python双系统安装

    1.首先安装Python2,确认好Python2的安装位置.接着安装Python3,并确定Python3的安装位置. 2.确认系统变量PATH中有python2和python3各自两个的路径,如: D ...

  5. Netty 基本组件与线程模型

    Netty 的学习内容主要是围绕 TCP 和 Java NIO 这两个点展开的,由于 Netty 是基于 Java NIO 的 API 之上构建的网络通讯框架,Java NIO 中的几个组件,都能在 ...

  6. s21day17 python笔记

    s21day17 python笔记 一.内容回顾及补充 回顾 补充 第三方模块补充 需要下载安装后才能导入使用 安装方式: pip包管理工具 # 把pip.exe 所在的目录添加到环境变量中. pip ...

  7. vue打包后接口报错

    最近自己和朋友做了一个小的项目,用的是vue3.x版本,本地dev运行的时候接口什么的都是正常的,但是build打包后本地使用anywhere启动一个本地服务的时候发现接口报错405状态,发布到线上接 ...

  8. PyCharm提交代码到git

  9. HTTPS协议学习

    http的缺点:(其他一些未加密的协议中也存在) 通信使用明文(不加密),内容可能会被窃听 不验证通信方的身份,因此有可能遭遇伪装 无法证明报文的完整性,所以有可能已遭篡改 TCP/IP是可能被窃听的 ...

  10. vue day7 table checkbox 全选

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...