Urban Radiance Fields

2023-11-04

Urban Radiance Fields:城市辐射场
摘要:这项工作的目标是根据扫描平台捕获的数据执行 3D 重建和新视图合成,这些扫描平台通常部署用于城市室外环境中的世界地图绘制(例如,街景)。给定 RGB 图像序列和通过室外场景移动的相机和扫描仪获取的激光雷达扫描,生成了一个模型,可以从中提取 3D 表面并合成新的 RGB 图像。该方法扩展了神经辐射场,它已被证明可以在受控设置中为小场景合成逼真的新颖图像,并使用新方法来利用异步捕获的激光雷达数据,解决捕获图像之间的曝光变化,并利用预测图像分割来监督密度在指向天空的射线上。这三个扩展中的每一个都在街景数据的实验中提供了显着的性能改进。

创新点:
1、实验中将激光雷达信息与RGB 信号结合起来。 通过仔细融合这两种模式,可以补偿大规模和复杂场景中视点的稀疏性。引入了一系列基于激光雷达的损失,可以对建筑物等固体结构和体积层进行准确的表面估计。
2、自动分割天空像素并定义一个单独的圆顶状结构,为指向天空的相机光线提供明确定义的监督信号。
3、模型通过估计每个相机的仿射颜色变换来自动补偿不同的曝光。

数据

本文研究了如何从自动驾驶和世界地图应用中收集的数据中重建三维表面并合成城市空间的新视图。
图像数据:街景图像是由多个鱼眼摄像头收集的,这些摄像头连接到一个徒步旅行者捕捉装置上。 每个摄像机都用估计的内参和相对于徒步者的位姿来校准。 当徒步旅行者在世界各地移动时,从每个摄像机以大约2Hz的速度收集图像。 图像在一个全局坐标系中自动定位,使用从运动中得到的结构和GPS信息,能够组装与每个像素相对应的原点为o和方向为d的相机射线。 现实世界的城市场景中有移动的物体,它们的位置随着时间的推移而变化(行人、汽车、骑自行车的人等)。 如果不处理,这些对象可能导致训练的神经网络,产生重影和模糊。 由于动态往往与语义相关,对每幅图像运行一个预先训练的语义分割模型,然后屏蔽最突出的运动类别–人的像素
雷达数据:除了成像传感器,还包含飞行时间VLP16激光雷达传感器,这些传感器主动发射光来测量到表面的距离。 与代表密集入射光样本的成像数据不同,激光雷达数据是一个扫描的时间戳3D线段序列,由起始和终止位置表示。 单个激光雷达段表明,在时间戳期间,发射射线穿过的空间没有与不透明表面相交。 做了一个简化的假设,激光雷达探测到的大多数表面都是静止的,比如建筑物和道路,所以忽略时间戳信息,并假设在整个捕获过程中空的空间是空的。 这可以模拟激光雷达射线类似于照相机射线,起源为ol,方向为dl,终止距离为zl

方法

用场景级神经网络参数θ和每幅图像曝光参数{βi}定义了一个城市辐射场(URF)。 给定场景的图像和激光雷达数据,通过最小化以下损失来优化URF:
在这里插入图片描述

1 Photometric-based Losses(基于光度的损失)

光度损失项类似于原始的NeRF方程,但也取决于估计的每幅图像曝光参数{βi}(个人认为这里的图像曝光参数类似于nerf in the wild里的外观潜在优化向量的作用,强调每张图片光景外观的不同)
在这里插入图片描述
用两种方法修改体绘制方程,每种方法分别介绍,公式如下
在这里插入图片描述

1、Exposure compensation (曝光补偿)

映射系统获取的图像通常采用自动白平衡和自动曝光的方法,这使得Lrgb的计算变得复杂。之前的文章使用latent codes潜在优化编码对每个图像分别学习,将图像无关的场景辐射映射到图像相关的辐射,该方法的缺点是:用每个图像的潜在代码建模曝光变化是过度参数化的,因为它允许潜在代码补偿非曝光相关的误差。该实验中,对共享网络预测的亮度进行仿射映射,其中仿射变换是一个从每幅图像潜在代码βi∈RB解码的3x3矩阵:
在这里插入图片描述
这种映射通过一个更严格的函数来模拟白平衡和曝光变化,因此当场景亮度参数θ和曝光映射β联合优化时,不太可能引起不必要的纠缠。
仿射变换,是指像素坐标到图像坐标的转换
在这里插入图片描述

2、Sky modeling (天空建模)

室外场景包含的天空区域,射出的光线从未穿过任何不透明的表面,因此NeRF模型在这些区域得到微弱的监控信号。 为了解决这个问题,渲染模型包括一个以基于坐标的神经网络表示的球形亮度(环境)地图,类似于Gancraft中使用的辐射图
在这里插入图片描述
对每个图像运行一个预先训练的语义分割模型,以检测可能是天空的像素:Si=S(Ii),如果射线r通过图像i中的天空像素,令Si®=1。然后使用天空掩码来定义一个额外的损失,鼓励通过天空像素的射线在所有点样本的密度为零
在这里插入图片描述
公式中,如果光线射向天空,未穿过物体,Si®=1,就会计算这个损失,并训练该损失最小,鼓励通过天空像素的射线在所有点样本的密度为零。

2、Lidar losses (雷达损失)

由于数据中有激光雷达数据(点云),用它来监督模型的训练。 给出了L个激光雷达样本的集合D={(ol,dl,zl)l=1-N},每个样本对应于一条射线r(z)=ol+zdl,以及相关的三维测量Pl=r(zl)。
将损失分解为两种不同的类型:1-监督期望的深度值;2-监督从激光雷达传感器到观测位置沿视线的自由空间。

1、Expected depth

首先从体积绘制过程来监督期望深度z,以匹配激光雷达测量的深度,即体绘制中得到的深度与点云中的深度误差越小越好。

在这里插入图片描述

2、Line-of-sight priors(视线先验)

对于由激光雷达传感器观测到的点,一个合理的假设是:一个测量点p对应于一个非透明表面上的位置,大气介质对激光雷达测量的颜色没有贡献。因此,我们期望辐射亮度集中在沿射线的一个点上,也就是说,一个点负责观察到的颜色。点密度等于当前表面密度,表面颜色等于点的颜色,不考虑后面遮挡

在这里插入图片描述
δ(.)为连续狄拉克函数,可以通过惩罚方法将这种约束转换为损失:

在这里插入图片描述
为了使这个数值易于处理,我们可以用一个积分为1(即一个分布)的核来代替狄拉克函数,类似于将密度分布变成一个正态分布,总积分为1,大部分的值集中在表面的点上。
在这里插入图片描述
第二项为near,物体表面的点,鼓励表示在P附近增加体积密度,从而允许训练更快地收敛。核函数在在这里插入图片描述

在这里插入图片描述
第一项可以简化为
在这里插入图片描述
这要求射线源和激光雷达点P之间的部分空间(即视线)不包含任何3D表面。 这种视线信息一直是“体雕”技术的关键组成部分
最后一项在这里插入图片描述
这个的是确保w(t)和为1,并且因为NeRF的体绘制方程只要求w(t)和不超过1,所以在训练过程中可以删掉这一项。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Urban Radiance Fields 的相关文章

随机推荐

  • 中科大、字节新作

    导读 最近 大型语言模型 Large Language Models LLMs 相关研究和落地取得了显著进展 为实现通用人工智能 AGI 迈出了重要步伐 并在各种语言应用中表现卓越 例如 2022 年底发布的 ChatGPT 能够基于在预训
  • 蓝桥杯算法训练VIP-单词接龙

    题目 题目链接 题解 DFS 真没想到居然是暴力搜索 感觉时间复杂度根本不允许啊 大致思路 每次递归都遍历全部字符串 对于每个字符串 枚举要匹配的长度 在此长度下依次匹配原串的尾与遍历到的字符串的头 完全相同说明可以匹配当前长度 就继续深搜
  • 20060122: 差点被偷

    昨天下班回去 车上比较挤 一中年男子掏我左上衣口袋 我转过身去 把口袋拉链拉起来 那男的又凑到我左边 右手拿把伞伸到我口袋前面 为的是挡住我前面坐着的乘客的视线 一个比较年轻的 站在我右后方 左手拿一块纸板挡住 右手开始拉我口袋拉链 我火来
  • MySQL数据库查询练习(子查询分步教程)

    注 数据库表格附录在文末 1 与张三同乡的男生姓名 step1 SELECT snativeplace FROM student WHERE sname 张三 step2 SELECT sname FROM student WHERE ss
  • C++11 智能指针

    此篇均参考C Primer第五版 为了更容易更安全的使用动态内存 C 11提供了两种智能指针 来管理动态对象 智能指针行为类似于常规指针 重要的区别在于它负责自动释放所指向的对象 shared ptr允许多个指针指向同一个对象 unique
  • Android自定义NoticeInfo实现顶部消息提示

    对于顶部消息提示功能 本文采用自定义NoticeInfo类 实现使用时只需要写一行代码 非常方便 一 效果如图所示 二 使用方法 只需要加入下面这8个文件 后面附有源码 即可使用 非常方便 使用示例 三 要加入的8个文件源代码如下 1 No
  • window下移动设备/硬盘报错位置不可用

    移动硬盘指示灯亮 但电脑上不显示 报错信息 无法访问E 参数错误 报错原因 移动硬盘打不开提示参数错误 是因为这个H盘的文件系统内部结构损坏导致的 要怎么恢复里面的数据呢 https jingyan baidu com article cb
  • java 生成条形码_JAVA 生成扫描条形码

    声明 转载为个人学习收藏 如有侵权 请及时联系本人删除 转载地址 https www cnblogs com MariaWang p 10837641 html 条形码是一种可视化 机器可读的数据 这些数据通常描述了携带该条码的物品的相关信
  • WCE下创建MFC的COM对象及使用方法(一)

    转载请标明是引用于 http blog csdn net chenyujing1234 平台 VS2005 MIPSSDK 例子代码 http www rayfile com zh cn files 7020e9b8 7240 11e1 b
  • 百度地图的基本知识与使用

    一 解释 LBS LocationBusinessServer基于定义位置的商业服务 二 使用步骤 1 登录注册 获取秘钥AK 2引入百度地图js 3创建地图的容器 div div 4初始化地图 var map new BMap Map c
  • 【安卓逆向】360加固-脱壳修复

    最近花了一些时间学习逆向脱壳 这方面一直投入的时间比较少 样本经过某加固宝进行加固 这里简单记录一下脱壳过程和思路 感谢某数字公司对安全加固的无私贡献 让我有机会小小的提高一下这方面的技能 安卓逆向交流学习qq 3251901516 vx
  • 【编程之路(003)】循环语句(for,while,do while语句)(C语言实现)

    目录 总体介绍 引言 for语句 基本语法 具体使用 for循环中的break和continue while语句 基本语法 具体使用 while语句中的break和continue do while 循环 具体使用 while语句中的bre
  • vc入门

    一 VC是什么 学VC是学什么 首先VC是一个软件 IDE集成开发环境 编译 编辑 调试 C和C 但C 中的有些特性是不用的 例如I O流 多态继承 WindowsSDK 软件开发工具 VC的灵魂 MFC 微软基础类库 ATL Active
  • php mail方法_php邮件发送的两种方式

    这篇文章研究的主要内容就是使用PHP来发送电子邮件 总结为以下两种方法 一 使用PHP内置的mail 函数 to test 163 com 收件人 subject Test 主题 message This is a test mail 正文
  • geopy 库 ConfigurationError 错误

    错误详情 geopy exc ConfigurationError Using Nominatim with default or sample user agent geopy 2 2 0 is strongly discouraged
  • LeetCode每日一练 —— 160. 相交链表

    前言 Wassup guys 我是Edison 今天是 LeetCode 上的 leetcode 160 相交链表 Let s get it 文章目录 1 题目分析 2 思路分析 判断相交 求出交点 实现步骤 3 代码实现 1 题目分析 给
  • Optional 详细用法

    1 Optional 是一个对象容器 具有以下两个特点 提示用户要注意该对象有可能为null 简化if else代码 Optional empty 创建一个空的 Optional 实例 Optional of T t 创建一个 Option
  • 正大国际:期货日内波段交易

    期货市场是变幻莫测的市场 期货价格受到各个方面的影响 很多投资者认为无法掌握期市规律 觉得期市没有规律 我认为 期货市场还是有很多规律可循的 我们只要掌握这些规律 就可以掌握大的概率 第一 价格总是能反映市场预期 第二 价格运行总是从一个平
  • PGF 概率生成函数 Probability generating function

    文章目录 随机结构举例 two classical combinatorial distributions PGF Probability generating functions定义 矩 Moments 例题 二项分布的r order 阶
  • Urban Radiance Fields

    Urban Radiance Fields 城市辐射场 摘要 这项工作的目标是根据扫描平台捕获的数据执行 3D 重建和新视图合成 这些扫描平台通常部署用于城市室外环境中的世界地图绘制 例如 街景 给定 RGB 图像序列和通过室外场景移动的相