EMVS: Event-based Multi-View Stereo 阅读笔记
0. 摘要
EMVS目的:从已知轨迹的event相机,估计半稠密的3D结构
传统的MVS算法目的:从已知视点的图片集,去估计场景的稠密3D结构。
EMVS2个固有属性:
(1) 当传感器发生相对运动时,响应场景的边(提供场景的结构信息)
(2) 传感器运动时,进行连续时间的测量
1. 介绍
只在场景发生亮度变化时,产生event,输出是一系列毫秒分辨率的异步event流
当然还有很多优点比如:低功耗,高动态范围(130dB),没有运动模糊,毫秒级的延时,kilobates的低速数据率。
适用场景:需要快速响应,效率重要,光照变化大
没有一个前人工作是解决使用单个event进行深度估计的。相关的前人工作是:使用多个event相机(彼此之间是刚体固定连接:基线固定;并且共享一个clock)进行3D重建。该方法主要分为2步:(1)解决像平面上event的对应关系(2)三角测量得3D点的位置。
event之间的匹配有两种方法进行:(1)通过一定的时间累计生成手工帧,使用传统的立体声方法进行。(2)利用event相机之间的同时性和event间的时间相关性匹配。
传统MVS与基于event的MVS方法比较:
(1)传统的MVS是从已知视点的图片集,去估计场景的稠密3D结构。需要在全图的基础上工作;不能使用传感器提供的异步的event流。
EMVS需要考虑event的稀疏性和异步性。
(2)event相机需要与场景之间发生相对运动,不然无视觉内容输出。而传统的相机不需要。
(3)EMVS估计半稠密的3D结构,因为event自然响应强度边。
【总结】:EMVS是从具有已知视点的移动的event相机获取的稀疏异步事件流中获取场景的三维重建。
由于传统的MVS作用在强度图上,故不能直接作用于EMVS问题。但是该论文提出的方法建立在传统的MVS方法之上。
主要参考了场景空间MVS方法的求解策略,分为两步:通过变换图像测量来计算感兴趣的离散体积(视差空间图像DSI)中的聚合一致性分数,然后在该体积中找到三维结构信息。
主要使用空间扫描投票和最大化策略去估计半稠密深度图,融合深度图去生成更大的3D模型。(建立一个只包含边缘的虚拟相机的DSI,并在其中找到三维点)
2. 基于Event的空间扫描方法
2.1 传统的空间扫描方法
空间扫描方法依赖于场景的二进制边缘图,该方法有3步:
(1)变换(反投影)图象特征成为通过DSI的光线
(2)记录通过每个DSI体素的光线的数量
(3)判断每个DSI体素中是否有一个3D点(DSI得分表示:边的几何一致性。)
2.2 基于event的空间扫描方法
(1)通过event反投影 的 特征-观察光线:光线密度高的地方对应着特征点。
(2)将包含3D场景的体积离散化,并使用DSI计算通过每个体素的观察光线的数量
(3)通过最大化光线密度函数,决定场景结构
下面就这三方面进行详细说明:
(1)其中,x,y是像素坐标,t是时间,p是亮度的极性。
使用DVS输出的event流{ek},作为类点特征,输入到变换的DSI中。
每一个event ek,根据 tk 时刻的DVS的视点进行反投影。下面左图是传统的MVS方法的反投影步骤,右边是基于event的反投影步骤。
基于event的反投影无明确的数据关联,通过分析高密度区域可以得到空间点位置。
(2)离散化包含3D场景的体积,使用DSI计数 通过每个体素的可见光的数量。
为了实现场景的可缩放,我们沿着DVS轨迹将包含3D场景的体积切分为更小的体积,计算局部3D重建,然后再融合深度图。
如何从event子集中进行局部3维重建?
首先创建一个 [位于参考视点] 虚拟相机;
在体积V中定义一个DSI,( DSI使用像素宽高 和 深度平面进行定义:w x h x Nz )
函数 f(X)=经过每个体素中心的反投影光线的数目。(体素光线的角点,2步就能算出来)
(3)通过算光线密度的最大值,检测场景结构
存储在DSI中的光线密度函数 f(X) 可以决定是否有一个3D点出现在每个DSI体素中,从而决定场景的半稠密结构。
f(X)的局部最大值——光线的高密度区域——光线的角点——场景的3D点——焦点区域
两步就可以检测出局部最大值:
(1)在虚拟相机处生成一个稠密深度图Z*(x,y), 通过记录沿每个像素(x,y)的观察光线中的体素行的 [最佳局部最大值] 的位置和大小来确定相关的置信度图c(x,y).
(2)对置信图c(x,y)进行阈值处理,在深度图Z*(x,y)选出最confidence的像素,生成半稠密深度图。
本文使用迭代高斯阈值:
令T(x,y)=c(x,y)*G(x,y)+6, 如果c(x,y)>T(x,y)则选择这个像素(x,y)
(4)从多个参考视图中融合深度图
当到上一个关键参考视图的距离超过平均场景深度的一定百分比时,我们选择一个新的关键参考视图,并使用event子集直到下一个关键参考视图来估计场景的相应半密集深度图。
深度图转换为点云,从孤立点(给定半径内相邻点的数量小于阈值的点云)中清除,并使用虚拟相机的已知位置合并到全局点云中。
----------------------到这里论文的方法已经结束,下面开始整理实验结果
实验分为2部分,一个是真实数据集,一个是合成的数据集。
(1)合成数据集。
使用groundtruth信息,通过event相机模拟器来生成3个合成数据集
空间分辨率是240 x 180.
数据集包含沿着event相机视点的强度图,但是它们在EMVS方法中没有被使用,只是为了帮助用我们的方法获得的半致密深度图的可视化。
下图是测试关于深度平面Nz 去采样DSI的 灵敏度。(d)展示了关于Nz的函数,平均相对深度误差)
之后的深度平面就选择Nz=100进行,下表是实验结果包括平均深度误差,相对深度误差和深度范围等。
(2)真实数据集
DAVIS是包括一个基于帧的相机(24Hz)和一个event传感器(DVS),位于同一像素阵列中,尺寸为240×180。
使用两种方法去提供相机的pose:(1)电动线性滑块,去分析受控实验的性能 (2)基于帧的视觉里程计算法SVO,证明我们的方法在手持(即无约束)6自由度运动中的适用性。
在这一部分展示:EMVS算法有能力重建精确的半稠密场景:(1)HDR(2)高速运动
1.HDR环境:
2.高速运动实验:
EMVS: Event-based Multi-View Stereo 阅读笔记的更多相关文章
- [读论文]Shading-aware multi view stereo
如何实现refine的? 几何误差和阴影误差如何加到一起? 为了解决什么问题? 弱纹理或无纹理:单纯的多视图立体算法在物体表面弱纹理或者无纹理区域重建完整度不够高,精度也不够高,因此结合阴影恢复形状来 ...
- 个性探测综述阅读笔记——Recent trends in deep learning based personality detection
目录 abstract 1. introduction 1.1 个性衡量方法 1.2 应用前景 1.3 伦理道德 2. Related works 3. Baseline methods 3.1 文本 ...
- Wordpress Calendar Event Multi View < 1.4.01 反射型xss漏洞(CVE-2021-24498)
简介 WordPress是Wordpress基金会的一套使用PHP语言开发的博客平台.该平台支持在PHP和MySQL的服务器上架设个人博客网站.WordPress 插件是WordPress开源的一个应 ...
- [学习笔记]编译sensetime发表的Single View Stereo Matching(SVS)遇到的问题
最近在研究用深度学习预测图像深度信息的方法,一开始用的是2017年CVPR上Godard大神的monodepth,代码在这里.这篇文章介绍了利用双目的consistency训练网络以对单张图像进行深度 ...
- 阅读笔记——《How a Facebook rejection pushed me to start and grow a profitable business in 12 months》
阅读笔记——<How a Facebook rejection pushed me to start and grow a profitable business in 12 months> ...
- guavacache源码阅读笔记
guavacache源码阅读笔记 官方文档: https://github.com/google/guava/wiki/CachesExplained 中文版: https://www.jianshu ...
- 3.View绘制分析笔记之onLayout
上一篇文章我们了解了View的onMeasure,那么今天我们继续来学习Android View绘制三部曲的第二步,onLayout,布局. ViewRootImpl#performLayout pr ...
- 4.View绘制分析笔记之onDraw
上一篇文章我们了解了View的onLayout,那么今天我们来学习Android View绘制三部曲的最后一步,onDraw,绘制. ViewRootImpl#performDraw private ...
- 2.View绘制分析笔记之onMeasure
今天主要学习记录一下Android View绘制三部曲的第一步,onMeasure,测量. 起源 在Activity中,所有的View都是DecorView的子View,然后DecorView又是被V ...
随机推荐
- php 发送邮件(实例)
html部分 <!DOCTYPE html> <html> <head> <title></title> <script type=& ...
- Codevs 1425 最长公共子串
1425 最长公共子串 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 青铜 Bronze 题解 题目描述 Description 输入N(2<=N<= ...
- 洛谷P4869 albus就是要第一个出场(线性基)
传送门 不知道线性基是什么东西的可以看看蒟蒻的总结 线性基居然有这性质我还不知道orz 假设$n$个数的线性基中有$k$个数,那么显然共有$2^k$个不同的异或和,而其中每一个异或和的出现次数都是$2 ...
- JQuery:介绍、安装、选择器、属性操作、动画
目录 jQuery 详细内容 1.JQuery介绍 2.JQuery的下载安装 3.JQuery的使用 4.jQuery的选择器 5.JQuery的属性操作 6.动画 6.自定义动画 jQuery 详 ...
- swap(2018.10.16)
题意:给定一个{0,1,2,3,-,n-1}的排列 p. 一个{0,1,2 ,-,n-2}的排列 q 被认为是优美的排列, 当且仅当 q 满足下列条件 对排列 s={0,1,2,3,...,n-1}进 ...
- [NOIP2014]无线网站发射器选址
Description 随着智能手机的日益普及,人们对无线网的需求日益增大.某城市决定对城市内的公共场所覆盖无线网.假设该城市的布局为由严格平行的129条东西向街道和129条南北向街道所形成的网格状, ...
- Tyvj1474 打鼹鼠
Description 在这个“打鼹鼠”的游戏中,鼹鼠会不时地从洞中钻出来,不过不会从洞口钻进去(鼹鼠真胆大……).洞口都在一个大小为n(n<=1024)的正方形中.这个正方形在一个平面直角坐标 ...
- 归档-对模型数组对象(存储到本地的plist文件)也数组里存放的是模型
一.模型文件 (1)JLMainViewsModel.h文件 必须遵循 NSCoding协议 @interface JLMainViewsModel : NSObject<NSCopying,N ...
- [題解](二分答案/單調隊列)luogu_P1419尋找段落
果然又抄的題解... 顯然答案具有單調性,而對于平均數計算的式子我們移一下項, 若s[l..r]>mid*(r-l+1)无解, 於是我們把每個數都減去一個mid,看和的正負即可,如果為正就可能有 ...
- foreach循环与迭代器循环 删除插入元素的区别
(1)仅对其遍历而不修改容器大小时,只使用foreach循环 (2)需要边遍历边修改容器大小时(插入删除元素),只使用迭代器循环 import java.util.HashMap;import ja ...