#每天一篇论文#235/365 DynamicFusion:非刚体场景实时重建与追踪

news/2024/4/21 0:11:31/

DynamicFusion: Reconstruction and Tracking of Non-rigid Scenes in Real-Time

project website: http://grail.cs.washington.edu/projects/dynamicfusion

摘要

我们提出了第一个能够实时重建非刚性变形场景的稠密slam系统,通过融合从消费级传感器捕获的rgbd扫描。我们的dynamicfusion方法重建场景几何体,同时估计密集的6d运动场,该运动场将估计的几何体扭曲成实时帧。与KinectFusion一样,我们的系统随着更多测量数据的融合而产生越来越多的去噪、详细和完整的重建,并实时显示更新的模型。由于不需要模板或其他先验场景模型,该方法适用于范围广泛的运动对象和场景。

贡献

1.体积模型到帧扭曲场参数的估计
2.通过估计的扭曲场将实时帧深度图融合到规范空间
3.调整扭曲场结构以捕获新添加的几何体

方法

引用https://blog.csdn.net/seamanj/article/details/78474275
3.1

Ntwarp={dgv,dgw,dgse3}tNwarpt={dgv,dgw,dgse3}t
dgvdgv表示该点canonical frame的位置
dgwdgw表示影响范围
dgse3dgse3该点在当前帧的形变

i=1…ni=1…n 其中nn是第0层node点数

公式(2)中TlwTlw从world转到当前帧的camera view

3.2算体素的psdf

对于每个体素中心xcxc(世界坐标, canonical space), 先转到当前帧的camera view中xtxt, (3)式第二部分

然后将该点xtxt投影当前帧的Image view里面ucuc, 然后索引出深度, 转回到camera view中. (3)式第一部分

第一部分为相机到surface, 第二部分为相机到体素中心的距离, 两者相减则为体素中心到surface的距离

3.3算WtWt,即算每帧相机的poseTlwTlw, 每点的形变TicTic
5)

3.3.1 用non-rigid ICP构造data term

注意ICP第一步是找匹配, 跟kinnect fusion不同(kinnect fusion找前后两帧Image view的匹配点, 然后算出世界坐标让他们一致), 它先根据TSDF提取出一个zero level set: Vc={Vc,Nc}Vc={Vc,Nc}, 然后用WtWt对其进行形变,(注意WtWt是我们要求的, 我们这里采用的初值然后逐步迭代, 跟KinnectFusion求Tzg,k一样,先定一个初值,然后代入公式再逐步优化Tg,kz一样,先定一个初值,然后代入公式再逐步优化), 此时形变后的坐标为当前帧的camera view, 然后再投影到image space里面, 这样就有一个image view 到canonical space的对应关系. 即每个像素uu对应一个形变后的canonical点的坐标vuvu 以及形变后的canonical的法向量nunu, 然后将vuvu投影回image view uu, 索引出深度,投影回camera view, vluvlu, 最后组成公式(7)

好了, 现在说说我自己对整个流程的理解

第一帧深度图来了之后, 算每个体素中心的tsdf, 根据tsdf的零切面可以提取出来canonical model的点云,然后我们更新整个体素的tsdf(好更新零切面), 由于场景物体是运动的(也就是体素是在扭曲), 所以要需要算体素的形变,由于体素数量太多, 我们将体素的形变embedded到node的形变, 我们先采样node,然后算node的形变,再用node的形变去插值体素的形变。

那么怎么采样node呢?就是用一堆半径为r的点去覆盖前面的canonical model的点云(canonical cloud)

那么算node的形变呢?对于新加进来的node, 我们把它的形变初始化为单位形变, 然后每帧算出新的形变, 前一帧的形变作为当前帧形变的初始值, 然后迭代去解。具体解法见3.3, 这里大致说下,假设前一帧node的形变已求得, 对于当前帧,我们先用前一帧每一个node的形变去形变canonical cloud, 然后渲染到当前视角,得到一张图片,其中有canonical cloud的像素区域我们称为可见区域,对于可见区域里的像素我们可以还原出形变后的canonical 3d cloud, 然后当前帧的深度图可以还原一个3d cloud, 然后用icp的方法,可以得到canonical cloud的形变, 由于cloud的形变又是由node的形变插值完成, 所以我们可以得到node的形变。

得到了node的形变我们就可以通过3.2回去更新我们的canonical cloud, 怎么更新呢?

先通过node的形变算出体素的形变, 然后结合当前的深度图更新体素的tsdf, 最后提取出更新后的canonical cloud. 如果有新的cloud没有被node覆盖到, 我们增加新的node去覆盖它。

实验

在这里插入图片描述

在这里插入图片描述


http://www.ppmy.cn/news/843990.html

相关文章

【干货笔记】CS224n-2019 学习笔记 Lecture 01 Introduction and Word Vectors

点击上方,选择星标或置顶,每天给你送干货! 阅读大概需要33分钟 跟随小博主,每天进步一丢丢 机器学习算法与自然语言处理出品 公众号原创作者 徐啸 学校 | 哈工大SCIR直博推免生 Lecture 01 Introduction and Word Vectors Human l…

使用VMware进行LVM逻辑卷的安装、配置与使用

一、添加硬盘 1、在VMware Workstation中的虚拟机设置界面,单击下方“添加”按钮,选择“硬盘”,然后单击右下角“下一步”按钮; 2、选择SCSI(S)磁盘,单击右下角“下一步”按钮; 3、…

gradle安装笔记

文章目录 项目管理工具简介Gradle安装配置(Windows版)Gradle目录结构说明配置环境变量指定本地repository Gradle集成idea配置路径新建一个Gradle项目 Gradle项目目录结构 项目管理工具简介 Ant: Apache,2000年,将软件编译、测试、部署等步骤…

H5+CSS前端特效源代码:可旋转动态日文片假名

H5CSS前端特效源代码&#xff1a;可旋转日文片假名 1.效果展示2.H5部分3.CSS部分&#xff1a; 1.效果展示 2.H5部分 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content&q…

NLP学习(8) 词向量

Word2vec one-hot representation → \to → local generalization distributed representation → \to → global generalization 分布式是把词的信息分散到不同维度 词向量模型的假设: 类似的词会出现在相似的地方, You shall know a word by the company it keep Ski…

mootools弹框_使用MooTools选中所有/无复选框

mootools弹框 Theres nothing worse than having to click every checkbox in a list. Why not allow users to click one item and every checkbox becomes checked? Heres how to do just that with MooTools 1.2. 没有比单击列表中的每个复选框更糟糕的了。 为什么不允许用…

python最小二乘法拟合圆_最小二乘法拟合圆 转(示例代码)

有一系列的数据点 {xi,yi}{xi,yi}&#xff0c;我们知道这些数据点近似的落在一个圆上&#xff0c;根据这些数据估计这个圆的参数就是一个很有意义的问题。今天就来讲讲如何来做圆的拟合。圆拟合的方法有很多种&#xff0c;最小二乘法属于比较简单的一种。今天就先将这种。 我们…

python 拟合圆_最小二乘法拟合圆 转

有一系列的数据点 {xi,yi}{xi,yi}&#xff0c;我们知道这些数据点近似的落在一个圆上&#xff0c;根据这些数据估计这个圆的参数就是一个很有意义的问题。今天就来讲讲如何来做圆的拟合。圆拟合的方法有很多种&#xff0c;最小二乘法属于比较简单的一种。今天就先将这种。 我们…

典型二阶系统的计算机仿真,二阶系统电路设计_RLC串联二阶电路实验报告

信号与系统实验课要求做的综合设计性实验的实验报告,要求建立一个二阶的LTI连续系统模型,并做成电路,所以选择了最简单的RLC串联二阶电路来做这个实验,这个就是实验的实验报告。 一、实验目的 在软硬件常规实验的基础上&#xff0c;运用“信号与系统”的理论知识&#xff0c;设…

2020前端经典面试题整理合集,面试心得体会

学习建议 在你开始入手学习前,有一些小的建议。根据我自己学习的经验发现,这些建议在现在乃至我以后的岗位生涯里都是有很大帮助的。还有就是开始学习前,建议可以先花几天时间,查找一些如何入门的文章,通过对许多文章及前人的建议。整理出适合自己学习的一套完整计划,然…

httpclient+jsoup实现小说线上采集阅读

前言 用过老版本UC看小说的同学都知道&#xff0c;当年版权问题比较松懈&#xff0c;我们可以再UC搜索不同来源的小说&#xff0c;并且阅读&#xff0c;那么它是怎么做的呢&#xff1f;下面让我们自己实现一个小说线上采集阅读。&#xff08;说明&#xff1a;仅用于技术学习、研…

SDR比赛后续

首先&#xff0c;感谢组委会的厚爱&#xff0c;给了我一个三等奖。虽然没做出来&#xff0c;可能实验报告拿了点分。 我的思路是错误的&#xff0c;我是输入一个中心频谱&#xff0c;观察它周围的值&#xff0c;而主委会希望是通过扫频&#xff0c;输出输入信号所有的频谱。 …

词向量 文本相似度计算

一、abstract 为把人们所理解的自然语言让计算机也能够认识并且操作&#xff0c;需要将人的语言&#xff08;即文字&#xff09;转换成计算机的语言&#xff08;即数字&#xff09; 二 、词的两种表示方法 1.1离散表示&#xff08;one-hot representation&#xff09; 缺点…

C++的继承与派生

文章目录 继承继承的访问权限 继承的对象模型如何构造基类名字遮蔽与类作用域名字遮蔽类作用域继承的特殊关系型 多继承与虚继承多态の基本概念多态的应用场景多态的对象模型如何析构派生类纯虚函数和抽象类运行阶段类型识别dynamic_casttypeid运算符和type_info类 继承 C的继…

Prompt本质解密及Evaluation实战与源码解析(一)

第9章 Prompt本质解密及Evaluation实战与源码解析 9.1 Customer Service案例 本节主要谈提示词(Prompt)内部的工作机制,围绕案例、源码、论文三个维度展开。首先,我们可以看一下代码部分,这是对基于大模型应用程序开发的一个评估(Evaluation),这显然是一个至关重要的内…

百度Carlife车载导航怎么升级?

不得不说百度车载carlife使用中真的很方便&#xff0c;看导航直接、明瞭&#xff0c;但是不可避免出现一些问题&#xff0c;如黑屏、掉线、闪退&#xff0c;出现这些问题大家可能认为版本低了&#xff0c;但是车载carlife升级方法没有找到&#xff0c;大家手机可是经常升级&…

车路协同在智慧高速领域的应用探索

车路协同在智慧高速领域的应用探索 智慧高速公路车路协同系统框架车载终端 OBU路侧设备 附&#xff1a;高速公路典型应用场景智慧高速车路协同分级说明 智慧高速公路车路协同系统框架 智慧高速是具备数字化、网联化、智能化等特征的高速公路。 它通过多维状态感知、多源信息融…

高速公路智能化维护,多点布局智慧交通“车路协同”

随着智能交通科技和产业的发展&#xff0c;我国正在形成一个安全可靠、便捷高效、绿色智能、开放共享的现代化综合交通运输体系。《“十四五”现代综合交通运输体系发展规划》明确提出&#xff0c;加快智能技术深度推广应用&#xff0c;坚持创新驱动发展&#xff0c;推动互联网…

DolphinScheduler×长安汽车 | 千万级数据接入能力智能网联汽车云平台引进核心调度系统...

点击蓝字 关注我们 用户案例 | 长安汽车 长安汽车智能车云平台&#xff0c;网联车日活达百万级&#xff0c;车联网平台日均接收信号条数达百亿级。面对海量车联网数据分析的挑战&#xff0c;长安汽车建设了一套具备千万级数据接入能力的智能网联汽车云平台。为保证智能汽车数据…

智慧交通:地铁站 3D 可视化,车路协同赋能科学出行

自动体温检测、刷脸过闸、智慧屏查路线……颇具科技感的“智慧地铁”提高了人们出行的获得感。以智能化方式实现生产域、管理域、服务域的联动&#xff0c;让地铁站管理变得智慧。 通过可视化、数字化、智能化手段的加持&#xff0c;让安检、票务、列车管理等系统数据有效融合。…