【论文阅读】NeROIC:在线图像集合中对象的神经渲染

论文连接: NeROIC: Neural Rendering of Objects from Online Image Collections

introduction

从在线图像集合中获取对象表示的新颖方法,从具有不同相机、照明和背景的照片中捕获任意对象的高质量几何形状和材料属性。这使得各种以对象为中心的渲染应用程序成为可能,例如新颖的视图合成、重新照明以及来自具有挑战性的野外输入的协调背景合成。

  • 使用扩展神经辐射场的多阶段方法,我们首先推断表面几何形状并细化粗略估计的初始相机参数,同时利用粗略的前景对象掩模来提高训练效率和几何质量。
  • 我们还引入了一种强大的法线估计技术,可以消除几何噪声的影响,同时保留关键细节。
  • 最后,我们提取表面材料属性和环境照明,以球谐函数表示,并具有处理瞬态元素(例如锐阴影)的扩展。

这些组件的结合产生了高度模块化且高效的对象获取框架。广泛的评估和比较证明了我们的方法在捕获对渲染应用程序有用的高质量几何和外观属性方面的优势

我们从在线图像中捕获对象的结果。 我们基于 NeRF 的模块化方法仅需要稀疏、粗略分割的图像来描绘在广泛变化的条件下捕获的对象(左上)。我们首先使用神经渲染(右上)将几何形状推断为密度场,然后计算对象的表面材质属性和每个图像的照明条件(中)。我们的模型不仅可以合成新颖的视图,还可以在新颖的环境和照明条件下重新照明和合成捕获的对象(底部)

可以在购物网站上或通过简单的图像搜索在线找到许多具有相同物体(例如家具、玩具、车辆)的图像集合。非常需要将这些对象与周围环境隔离并捕获高保真结构和外观的能力,因为它可以实现诸如从图像中数字化对象并将其混合到新背景等应用。然而,这些集合中物体的单个图像通常是在高度可变的背景、照明条件和相机参数下捕获的,使得专门为来自受控环境的数据设计的物体数字化方法不适合这种野外设置。在这项工作中,我们寻求通过扩展神经对象渲染的最新进展,开发一种从无约束图像集合中捕获和重新渲染对象的方法来解决这一挑战。

最近使用隐式 3D 场景表示的较著名的作品之一是神经辐射场 (NeRF) 模型 [ 22 ],它学习从稀疏校准图像中表示静态场景的局部不透明度和与视图相关的辐射度,从而实现高质量的新颖视图综合(NVS)。虽然在提高 NeRF的质量和功能方面取得了实质性进展(例如移动或非刚性内容 [29,26,14,41 ] ),但仍然存在一些重要的要求 - 合成背景对象的新颖视图应查看并固定照明条件,并且应在单个会话中捕获多视图图像或视频序列。

最近,一些作品 [ 6,20,3,4,49,43 ]扩展了 NeRF,并在将场景渲染分解为语义上有意义的组件(包括几何、反射率、材质和照明)方面取得了令人印象深刻的进展,从而实现了灵活的交互使用这些组件中的任何一个,例如重新照明和交换背景。不幸的是,他们都没有建立一个全面的解决方案来解决从现实世界、野外图像集合中捕获的对象的局限性。

在这项工作中,我们提出了NeROIC,一种对在线图像集合中的对象进行神经渲染的新颖方法。我们的对象捕获和渲染方法建立在神经辐射场的基础上,具有几个关键功能,可以从在截然不同的条件下捕获的稀疏图像中进行高保真捕获,这​​在在线图像集合中很常见,其中包含使用不同的照明、相机、环境拍摄的单个图像,和姿势。每个图像唯一预期的注释是粗略的前景分割和粗略估计的相机参数,至关重要的是,我们可以从运动结构框架(例如 COLMAP [33])以无监督且无成本的方式 获得这些参数。

我们基于学习的方法的关键是引入模块化方法,其中我们首先优化 NeRF 模型来估计几何形状并细化相机参数,然后推断最能解释图像的表面材料属性和每幅图像的照明条件。捕获的图像。这些阶段的解耦使我们能够使用第一阶段的深度信息在第二阶段进行更有效的光线采样,从而提高材质和照明估计质量和训练效率。此外,由于我们方法的模块化,我们还可以在第一阶段单独利用从几何体初始化的表面法线,并通过新的法线提取层进行创新,以提高获取底层对象材料的准确性。我们的方法概述如图 2 (b) 所示。

为了评估我们的方法,我们创建了几个野外对象数据集,包括我们自己在不同环境中捕获的图像,以及从在线资源收集的对象图像。在这些具有挑战性的设置中,与最先进的替代方案的比较表明,我们的方法在质量和数量上都优于替代方案,同时仍然保持可比的训练和推理效率。图 1展示了我们的方法的一组示例对象捕获和应用结果。

一种新颖的模块化管道,用于从在不同条件下捕获的物体推断几何和材料属性,仅使用稀疏图像、前景掩模和粗糙相机姿势作为附加输入,

一种新的多阶段架构,我们首先提取几何形状并细化输入相机参数,然后推断对象的材料属性,我们证明它对不受限制的输入具有鲁棒性,

一种从神经辐射场估计法线的新方法,使我们能够比更标准的替代技术更好地估计材料属性并重新照亮物体,

包含在变化和具有挑战性的环境和条件下捕获的物体图像的数据集,

使用这些和其他已建立的数据集进行广泛的评估、比较和结果,展示了通过我们的方法获得的最先进的结果。

方法

所有这些方法都不可避免地容易受到复杂阴影输入的影响,即尖锐的阴影和镜面反射,因为它们仅包含一个相对简单的基于物理的渲染器。虽然我们并不声称要学习如何在我们的方法中适应这些阴影,但在我们的工作中,我们引入了基于 [ 49 ]的瞬态组件来识别它并将其与环境照明分开,从而获得对象的无偏差材料属性。据我们所知,我们是第一个基于 NeRF 的方法,可以通过来自互联网的完全不受约束的图像来推断目标的几何形状和材料参数。

在这里插入图片描述
在第一阶段,我们通过学习指示物理内容的密度场来估计对象的几何形状(第 3.3节)。在此阶段,我们还学习静态和瞬态辐射值,以允许基于图像的监督,但不会将此信息完全分解为材质和照明属性。我们还优化相机的姿态和内在参数,以细化作为输入提供的粗略估计。

在第二阶段,我们修复学习的几何形状并优化在任意照明条件下重新渲染对象所需的表面材质和照明参数(第 3.5 节 )。在此阶段,我们使用从相机到物体表面的估计距离来改进沿相机光线的点采样。我们还优化了表面法线,这改进了从密度场获得的粗略估计(第 3.4节)。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/130420.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Mysql数据库 14.SQL语言 视图

一、视图的概念 视图:就是由数据库中一张或多张表根据特定的条件查询出的数据狗造成的虚拟表 二、视图的作用 安全性,简单性 三、视图的语法 语法 create view 视图表 as select_statement; 代码实现 #创建视图 将查询结果创建称为视图&#x…

聊聊测试左移到需求阶段

这是鼎叔的第七十九篇原创文章。行业大牛和刚毕业的小白,都可以进来聊聊。 欢迎关注本公众号《敏捷测试转型》,星标收藏,大量原创思考文章陆续推出。本人新书《无测试组织-测试团队的敏捷转型》​​​​​​​已出版(机械工业出版…

JAVA集合学习和源码分析

一、结构 List和Set继承了Collection接口,Collection继承了Iterable Object类是所有类的根类,包括集合类,集合类中的元素通常是对象,继承了Object类中的一些基本方法,例如toString()、equals()、hashCode()。 Collect…

云计算、大数据技术的智慧工地,实现对建筑工地实时监测、管理和控制的一种新型建筑管理方式

智慧工地是利用物联网、云计算、大数据等技术,实现对建筑工地实时监测、管理和控制的一种新型建筑管理方式。 智慧工地架构: 1、终端层: 充分利用物联网技术、移动应用、智能硬件设备提高现场管控能力。通过RFID、传感器、摄像头、手机等终…

Sectigo SSL

Sectigo(前身为ComodoCA)是全球在线安全解决方案提供商和全球最大的证书颁发机构。为了强调其在SSL产品之外的扩张,Comodo在2018年更名为Sectigo。新名称减少了市场混乱,标志着公司向创新的全方位网络安全解决方案提供商过渡。 S…

RVS—面向目标硬件的软件性能测试工具

产品概述 Rapita Verification Suite(简称:RVS),为美国Danlaw公司提供的一款嵌入式系统在板测试套件,主要应用于汽车领域。其产品符合ISO-26262、DO178B/C、IEC-61508等行业标准,兼容Vxworks、Linux、SYSBI…

Windows 安装 JDK 8 和 JDK 17 和多版本JDK切换

下载 JDK JDK 8 下载地址:https://www.aliyundrive.com/s/koYe1SVRg76 JDK 17 下载地址: https://www.aliyundrive.com/s/tBcbUtAHTbg 安装 JDK 点击可执行文件 jdk-8u291-windows-x64.exe 进行安装 如果需要更改JDK安装目录,根据个人偏好…

从零开始搭建React+TypeScript+webpack开发环境-基于lerna的webpack项目工程化改造

项目背景 在实际项目中,我们的前端项目往往是一个大型的Webpack项目,结构较为复杂。项目根目录下包含了各种配置文件、源代码、以及静态资源,整体布局相对扁平。Webpack的配置文件分散在不同的部分,包括入口文件、输出目录、加载…

无需公网IP!部署Apache服务器与内网穿透实现公网访问

Apache服务安装配置与结合内网穿透实现公网访问 文章目录 Apache服务安装配置与结合内网穿透实现公网访问前言1.Apache服务安装配置1.1 进入官网下载安装包1.2 Apache服务配置 2.安装cpolar内网穿透2.1 注册cpolar账号2.2 下载cpolar客户端 3. 获取远程桌面公网地址3.1 登录cpo…

html与django实现多级数据联动

html与django实现多级数据联动 1、流程 1、进入页面后先获取年级数据 2、选择年级后获取院级数据 3、选择院级后获取层次数据 4、选择层次数据后获取专业数据 2、html代码 <p style"margin-top: 10px;"><label>年级</label><select id"…

ARM 基础学习记录 / 异常与GIC介绍

GIC概念 念课本&#xff08;以下内容都是针对"通用中断控制器&#xff08;GIC&#xff09;"而言&#xff0c;直接摘录的&#xff0c;有的地方可能不符人类的理解方式&#xff09;&#xff1a; 通用中断控制器&#xff08;GIC&#xff09;架构提供了严格的规范&…

常见排序算法之插入排序类

插入排序&#xff0c;是一种简单直观的排序算法&#xff0c;工作原理是将一个记录插入到已经排好序的有序表中&#xff0c;从而形成一个新的、记录数增1的有序表。在实现过程中&#xff0c;它使用双层循环&#xff0c;外层循环对除了第一个元素之外的所有元素&#xff0c;内层循…

RK3399平台开发系列讲解(内存篇)free 命令查看内存占用情况介绍

🚀返回专栏总目录 文章目录 一、free的使用二、free的内容📢free 指令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等。 一、free的使用 -b  以 Byte 为单位显示内存使用情况。-k  以 KB 为单位显示内存使用情况。…

Clickhouse表引擎

前言&#xff1a; 有关Clickhouse的前置知识详见&#xff1a; 1.ClickHouse的安装启动_clickhouse后台启动_THE WHY的博客-CSDN博客 2.ClickHouse目录结构_clickhouse 目录结构-CSDN博客 Cickhouse创建表时必须指定表引擎 表引擎&#xff08;即表的类型&#xff09;决定了&…

Java语言基础(上)

Java 语言的特点 面对对象&#xff1a;Java 中所有的数据和方法都封装在对象中跨平台性&#xff1a;Java 通过 Java 虚拟机&#xff0c;可以在不同的操作系统上运行相同的程序自动内存管理&#xff1a;Java 提供垃圾回收机制&#xff0c;不需要手动管理内存强类型语言&#xf…

矩阵的除法

B/A 如果矩阵A可逆&#xff0c;那么 证明&#xff1a; A/AB 如果矩阵A和B都可逆&#xff0c;那么 证明&#xff1a;

Ubuntu系统使用apt-get管理软件工具

记录一下使用Ubuntu系统的apt-get管理软件工具 先查看一下系统的版本&#xff0c;可以看到这里使用的是Ubuntu20.04版本&#xff0c;版本代号focal rootmyw:~# uname -a Linux myw 5.4.0-70-generic #78-Ubuntu SMP Fri Mar 19 13:29:52 UTC 2021 x86_64 x86_64 x86_64 GNU/L…

GEE:基于 Landsat 计算的 kNDVI 应用 APP

作者:CSDN @ _养乐多_ 本文记录了在Google Earth Engine(GEE)平台中,使用 Landsat 遥感数据计算 kNDVI 的应用 APP 链接,并介绍该 APP 的使用方法和步骤。该APP可以为用户展示 NDVI 和 kNDVI 的遥感影像,进行对比分析。该 APP 在 Google Earth Engine(GEE)平台中实现。…

2022年12月 Python(四级)真题解析#中国电子学会#全国青少年软件编程等级考试

Python等级考试(1~6级)全部真题・点这里 一、单选题(共25题,每题2分,共50分) 第1题 有n个按名称排序的商品,使用对分查找法搜索任何一商品,最多查找次数为5次,则n的值可能为?()(2分) A.5 B.15 C.30 D.35 答案:C 答案解析:对分查找最多查找次数m与个数之间n的…

@JSONField或@JsonProperty注解使用

一、需求 使用JSONField或JsonProperty注解&#xff0c;来解决bean与json字段不一致问题&#xff0c;或者字段定义不符合前端所需要的标准&#xff0c;最近在项目中发现实体类属性中&#xff0c;同时使用了JSONField和JsonProperty注解&#xff0c;用于重新声明属性key。有时候…