79、ClimateNeRF: Physically-based Neural Rendering for Extreme Climate Synthesis

news2024/9/23 23:34:28

简介

主页

物理模拟可以很好地预测天气影响。神经辐射场产生SOTA场景模型。

ClimateNeRF 允许我们渲染真实的天气效果,包括雾霾、雪和洪水 ,结果可以通过有物理意义的变量来控制,比如水位 ,这允许人们可视化气候变化的结果将对他们产生什么影响

实现流程

首先,使用instant-NGP重建3D场景。重建的亮度场能够高效地合成高质量的新颖的场景视图图像。其次,有选择地微调学习的instant-ngp模型,以便它捕获所提供的样式图像的样式。这种3D一致的风格化对于难以通过物理模拟捕获的天气效应建模特别有用。第三,通过将相关的物理实体(雪、水、雾霾)集成到场景中并渲染物理上合理的图像来模拟气候事件。

3D Scene Reconstruction

在Instant-ngp这种显式的特征编码和空间划分特别适合于ClimateNeRF,因为可以相对容易地编辑局部特征。

物理模拟需要访问任意点的表面法线来计算与雪和水的交互,并且需要访问点的语义(在语义分割的意义上)来转换样式 。因此扩展NGP,允许它输出语义逻辑 s 和表面法线n,训练数据中没有语义或表面法线ground truth,这里使用现成的预训练单目语义分割网络为每张图像生成语义map,使用密度梯度来引导具有加权MSE损失的预测表面法线 n

为了模拟暴风雪,必须在场景中添加雪,并将树木变暗,但不应该改变房屋的形状,为了在程式化阶段保持空间特征的完整性,对instant-NGP的潜在特征进行了解纠缠,对于NGP模型中的每个体素,将潜在特征分为几何特征 和外观特征

几何特征被训练来渲染密度。外观特征用于渲染颜色、语义和法线。

将在程式化阶段冻结几何特征向量,只改变外观特征向量

在给定查询点和光线方向的情况下,给出密度σ、颜色c、语义对数后验s和表面法线n

Stylization

使用FastPhotoStyle从预训练的模型转移样式到渲染图像,只转移到“地形”、“植被”或“天空”区域,以模拟自然天气变化现象,只是这样的话,产生的图像看起来很逼真,但不一定与视图一致。

对学生网络 instant-NGP模型进行微调,以确保风格转换后场景的视图一致性,尽量减少学生网络渲染结果和风格转移图像之间的色差,保持几何形状完整,只改变外观来实现这一目标,所以在样式转换阶段,只有外观特征代码。被优化

Representing and Rendering Climate Effects

生成具有新的物理实体的场景,雪,水,雾霾,必须确定它们的位置(物理模拟的工作)以及生成的图像是什么样子的(渲染的工作)

渲染总是涉及到对光线查询的计算响应,因此计算u在v方向上的辐射度。必须用密度表示模拟结果,并且必须能够计算法线和表面反射率属性

物理模拟得出的密度

预测法线

预测BRD

每个都取决于现有的场景。选择可以模拟各种效果,包括雾霾的大气效应,水面的折射和反射,以及积雪的散射。

{}在不同的物理模拟中有很大差异

一旦物理实体被函数 定义,就可以通过模拟物理实体与场景之间的光传输来真实地将它们渲染到图像中

给定查询点位置x,仿真框架通过基于物理的渲染来估计x位置物理实体的密度和颜色

上式基于物理的绘制方程

通过跟踪与学习的NeRF中入射方向相反的射线 来近似入射照明

根据物理实体的表面BRDF,对积分使用分析或基于采样的解决方案。注意,可以通过采样来模拟多次反弹

遵循在两个通道中定义的体积渲染过程。对于沿着摄像机射线的每个点,查询公式4中定义的物理实体的不透明度和颜色。同时,系统还通过公式2得到原始密度和颜色

Climate Effect Details

Smog Simulation

假设烟雾是由均匀分布在真空中的微小吸收粒子形成的, 空白空间中,NeRF密度,可以通过简单地在密度上添加一个非负常数来模拟自由空间中的烟雾密度,在NeRF的高密度区域内,加上常数不会显著改变积分

是决定雾霾密度的可控参数 ,雾霾颗粒有恒定的颜色 ,颗粒颜色和密度都是可控参数

Flood Simulation

洪水场景的水面近似为一个水平面:,其中重力方向法线 通过相机姿态和消失点检测估计,平面原点决定了水的高度

基于快速傅里叶变换(FFT)的波纹和波,FFT波以随机谱系数为输入,输出一个基于风速、方向和时空频率的时空面法线,与静水相比,基于fft的水面模拟显著提高了水面的真实感,模拟不透明度和微面波纹,使水看起来有光泽,近似公式 4中的积分,采用sigma-point方法,从x处采样5条射线,包括反射方向和附近的4条射线

Snow Simulation

雪更有可能堆积在朝上的表面上,由于重力作用,雪的深处密度更大,使用以表面为中心的metaballs并以密度为中心来模拟物体表面上的密度分布,metaballs内的密度分布可以用核函数 表示,随着距离球中心距离的增加,密度平滑地减小

对于空间中的任意点x,使用parzen窗口密度估计器在N个局部最近邻上计算x的雪的密度

是一个可控的曲面截断阈值,a是一个超参数 ,这个方程表明,如果一个点接近或大于阈值,它更有可能是表面边界,使用空间变化的漫射颜色(接近于纯白色乘以场景的平均照度)来近似BRDF,并应用地下散射效果来照亮雪的阴影部分,表面法线值仍然以基于梯度的方式计算

limitations

ClimateNeRF依赖于NeRF重建的质量。不准确的几何形状导致洪水和积雪模拟不理想。

在雪模拟中不正确的地面表面导致伪影的情况。

这也显示了未来通过物理模拟自动发现几何理解错误的机会。

Conclusion

提出了一种新的NeRF编辑框架,将物理模拟应用于场景的NeRF模型。利用这个框架,建立了ClimateNeRF,使能够渲染现实的气候变化影响,包括雾霾、洪水和雪。合成的视频是真实的,一致的,物理上合理的,高度可控的。展示了ClimateNeRF在帮助提高社区对气候变化的认识和增强对不利天气条件的自驱动健壮性方面的潜力。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2022年MathorCup数学建模B题无人仓的搬运机器人调度问题解题全过程文档加程序

2022年第十二届MathorCup高校数学建模 B题 无人仓的搬运机器人调度问题 原题再现 本题考虑在无人仓内的仓库管理问题之一,搬运机器人 AGV 的调度问题。更多的背景介绍请参看附件-背景介绍。对于无人仓来说,仓库的地图模型可以简化为图的数据结构。 仓库…

面试常问【进程间通信】最详细解说

文章目录 目录 文章目录 一、进程间有哪几种的通信方式 1.为什么需要进程间通信? 2.进程通信的几种方式 3.进程间通信的目的 二、管道 1.匿名管道 2.命名管道 3.管道总结 三、消息队列 四、共享内存 1.共享内存的原理 2.共享内存的接口 1.创建共享内存 2.将共享内存附加到进程…

HBase---Hbase安装(单机版)

Hbase安装单机版 文章目录Hbase安装单机版Master/Slave架构安装步骤配置Hbase1.上传压缩包解压更名修改hbase-env.sh修改hbase-site.xml配置HBase环境变量配置Zookeeper复制配置文件修改zoo.cfg配置文件修改myid配置Zookeeper环境变量刷信息配置文件启动hbase步骤hbase shellMa…

BS系统中的安全方案(SSO和Oauth2认证,数据加密)

摘要用户用浏览器打开网站,DNS会根据域名找到相应的服务器IP给到浏览器,仅接着用户的浏览器会与服务器建立连接,通过网路上的各个设备(交换机、路由器、基站、光纤等),将服务器上的数据发送到用户的电脑上,在浏览器里呈…

运输层概述及web请求

运输层 运输层概述 运输层向高层用户屏蔽了下面网络核心的细节(如网络拓扑、所采用的路由选择协议等)它使应用进程看见的就好像是在两个运输层实体之间有一条端到端的逻辑通信信道; 根据需求不同,运输层提供两种运输协议 面向连…

buffer它到底做了个啥,源码级分析linux内核的文件系统的缓冲区

最近一直在学习linux内核源码,总结一下 https://github.com/xiaozhang8tuo/linux-kernel-0.11 自己整理过的带注释的源码。 为什么要有buffer ​ 高速缓冲区是文件系统访问块设备中数据的必经要道(PS:如果所有程序结果都不落盘,只是int a, a直接在主存…

TryHackMe-Debug(ez php反序列化)

Debug Linux机器CTF!您将了解枚举,查找隐藏的密码文件以及如何利用php反序列化! 端口扫描 循例,nmap Web枚举 进到web是apache默认页面,直接开扫 由于题目告诉我们涉及php反序列化,那直接找php文件来看&…

Linux学习第十四节-shell脚本

1.Shell概述 Shell连接了用户和Linux内核,他可以解释用户输入的命令传输给内核,让用户可以更加方便的使用Linux系统; Shell本身并不是内核的一部分,他只是站在内核的基础上编写一个应用程序; Shell具备编程的能力&a…

C++回顾(八)—— 继承

8.1 继承的概念 继承是类与类之间的关系,是一个很简单很直观的概念,与现实世界中的继承类似,例如儿子继承父亲的财产。 继承(Inheritance)可以理解为一个类从另一个类获取成员变量和成员函数的过程。例如类 B 继承于类…

jconsole远程linux下的tomcat

修改Tomcat的配置 进去 Tomcat 安装目录下的 bin 目录,编辑 catalina.sh vi catalina.sh定位到 ----- Execute The Requested Command ----------------------------------------- vi 编辑模式下,点击 Esc,输入 / ,然后粘贴 -…

什么是Netty

一.Netty介绍 1.什么是netty Netty 是由 JBOSS 提供的一个 Java 开源框架。Netty 提供异步的、基于事件驱动的网络应用程序框架,用以快速开发高性能、高可靠性的网络 IO 程序,是目前最流行的 NIO 框架,Netty 在互联网领域、大数据分布式计算…

自动驾驶介绍系列 ———— 看门狗

文章目录硬件看门狗软件看门狗差异分析延申窗口看门狗硬件看门狗 硬件看门狗的本质上是一个定时器电路。通常存在一个输入,输入到MCU的RST端。在正常工作状态下,MCU每隔固定时间间隔会输出一个信号给RST端,实现对看门狗端清零。如果在指定的时…

RK3568驱动OV13850摄像头模组调试过程

摄像头介绍品牌:Omnivision型号:CMK-OV13850接口:MIPI像素:1320WOV13850彩色图像传感器是一款低电压、高性能1/3.06英寸1320万像素CMOS图像传感器,使用OmniBSI?技术提供了单-1320万像素(42243136)摄像头的…

C++20 协程体验

1 介绍协程是比线程更加轻量级并发编程方式,CPU资源在用户态进行切换,CPU切换信息在用户态保存。协程完成异步的调用流程,并对用户展示出同步的使用方式。协程的调度由应用层决定,所以不同的实现会有不同的调度方式,调度策略比较灵…

麻雀算法SSA优化LSTM长短期记忆网络实现分类算法

1、摘要 本文主要讲解:麻雀算法SSA优化LSTM长短期记忆网络实现分类算法 主要思路: 准备一份分类数据,数据介绍在第二章准备好麻雀算法SSA,要用随机数据跑起来用lstm把分类数据跑起来将lstm的超参数交给SSA去优化优化完的最优参数…

Python可变对象与不可变对象的浅拷贝与深拷贝

前言 本文主要介绍了python中容易面临的考试点和犯错点,即浅拷贝与深拷贝 首先,针对Python中的可变对象来说,例如列表,我们可以通过以下方式进行浅拷贝和深拷贝操作: import copya [1, 2, 3, 4, [a, b]]b a …

小众实用!5款不为人知的Windows软件,让你工作更轻松

分享5款冷门但值得下载的Windows软件,个个都是实用,你可能一个都没见过,但是 我觉得你用过之后可能就再也离不开了。 1.键盘可视化——Keyviz Keyviz是一款免费开源的小工具,它的作用是可以实时展示键盘的操作,就可以…

编程语言分类

目录 ❤ 机器语言 机器语言的编程 ❤ 汇编语言 ❤ 高级语言(编程语言) 编译型 解释型 ❤ 动态语言和静态语言 ❤ 强类型定义语言和弱类型定义语言 ❤ 主流语言介绍 C语言 C java python JavaScript SQL PHP python从小白到总裁完整教程目录:https://blog…

浅入浅出keepalived+mysql实现高可用双机热备

当数据库发生宕机的情况,如果配置了数据库主从同步模式或主主同步模式,则可以从从库中获取数据。 当数据库发生宕机的情况,要求应用系统实现高可用,应用系统不会受到影响,需要对mysql进行双机热备实现数据库的高可用。…

断点调试(debug)

目录 F8案例 ​编辑 debug过程中报错 ​编辑用debug查看方法源码 一层一层查看 Arrays.sort()方法 F9 DebugExercise 介绍:断点调试是指在程序的某一行设置一个断电,调试时,程序运行到这一行就会停住,然后可以一步步往下调试…