计算机视觉与图形学-神经渲染专题-第一个基于NeRF的自动驾驶仿真平台

news2025/1/17 21:48:12

如今,自动驾驶汽车可以在普通情况下平稳行驶,人们普遍认识到,真实的传感器模拟将在通过模拟解决剩余的极端情况方面发挥关键作用。为此,我们提出了一种基于神经辐射场(NeRF)的自动驾驶模拟器。与现有作品相比,我们的作品具有三个显着特点:(1)实例感知。我们的模拟器使用独立的网络分别对前景实例和背景环境进行建模,以便可以单独控制实例的静态(例如大小和外观)和动态(例如轨迹)属性。(2)模块化。我们的模拟器允许在不同的 NeRF 相关主干、采样策略、输入模式等之间灵活切换。我们期望这种模块化设计能够促进基于 NeRF 的自动驾驶模拟的学术进步和工业部署。(3)真实感。考虑到最佳的模块选择,我们的模拟器设置了新的最先进的照片级真实感结果。我们的模拟器将是开源的,而我们的大多数模拟器则不是。

论文地址:https://arxiv.org/pdf/2307.15058.pdf

github地址:https://open-air-sun.github.io/mars/

核心框架

我们首先计算所待查询的射线 r 和所有可见实例边界框的射线盒交集。对于背景节点,我们直接使用选定的场景表示模型和选定的采样器来推断逐点属性,就像传统 NeRF 中一样。对于前景节点,光线首先被转换为实例帧,然后通过前景节点表示进行处理。右:所有样本都被组合并渲染为 RGB 图像、深度图和语义。

7f0ef08e555c7b369b704da1595e17fa.png

优化器中的Loss

5b5cd64dbc6cf10add4f24b234b0fbd3.png

颜色监督:标准的MSE;

深度监督:直接获取/单目深度估计获得;

语义监督:跟随着SemanticNeRF,并使用一个交叉熵Loss;

天空监督:引入 BCE 语义正则化来来支持使用天空模型来处理无限远距离处的外观;

accum监督:最小化背景截断采样的密度和,来去除伪影;

实验效果

dd26f1c03858b0bd2955d19e4c96b4ea.png

结论与局限性

在本文中,我们提出了一个基于 NeRF 的逼真自动驾驶模拟模块化框架。我们的开源框架由一个后台节点和多个前台节点组成,能够对复杂的动态场景进行建模。我们通过大量的实验证明了我们框架的有效性。所提出的管道在公共基准上实现了最先进的渲染性能。我们还支持场景表示和采样策略的不同设计选择,从而在模拟过程中提供灵活性和多功能性。 

局限性。 

我们的方法需要数小时的训练,并且无法实时渲染。此外,我们的方法未能考虑玻璃或其他反射材料上的动态镜面反射效应,这可能会导致渲染图像中的伪影。提高模拟效率和视图相关效果将是我们未来的工作。

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

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

相关文章

无人机自动返航的关键技术有哪些

无人机的广泛应用使得无人机自动返航技术变得至关重要。在各种应对意外情况的背景下,无人机自动返航技术的发展对确保无人机的安全,以及提高其应用范围具有重要意义。接下来,便为大家详细介绍无人机自动返航所运用到的关键技术。 一、定位与导…

Mysql on duplicate key update用法及优缺点

在实际应用中,经常碰到导入数据的功能,当导入的数据不存在时则进行添加,有修改时则进行更新, 在刚碰到的时候,一般思路是将其实现分为两块,分别是判断增加,判断更新,后来发现在mysql…

服务器的shell脚本

shell脚本语句可以执行linux的操作语句。 linux相当于网页,shell相当于java。可以解释编写执行逻辑。 shell的开头以:#!bin/sh 定义解析方式,不同的linuxe内核解释方式不同。大多数内核支持sh(bash)方式。 执行sh文件可…

C# Onnx Paddle模型 OCR识别

RapidOCR https://github.com/RapidAI/RapidOCR/blob/main/docs/README_zh.md 效果 项目 Demo(带模型)下载

spring-cache框架使用笔记

spring-cache框架使用笔记 什么是spring-cache框架 spring-cache是spring框架中的一个缓存抽象层, 它提供了一种简便的方式来集成不同的底层缓存实现, 如内存缓存(concurrentMap/ehcache/caffeine)/分布式缓存(redis/couchbase)等 它简化了在app中使用…

网络安全进阶学习第十课——MySQL手工注入

文章目录 一、MYSQL数据库常用函数二、MYSQL默认的4个系统数据库以及重点库和表三、判断数据库类型四、联合查询注入1、具体步骤(靶场演示):1)首先判断注入点2)判断是数字型还是字符型3)要判断注入点的列数…

O3DE的Pass

Pass介绍 Pass是具有输入和输出的渲染过程。 在最终渲染帧中看到的每个细节都是通过一系列Pass(前一个Pass的输出是下一个Pass的输入)计算出来的。Pass可以生成图像(作为纹理、缓冲区或渲染目标)。每个图像都包含关于场景的特定…

【话题】感觉和身边其他人有差距怎么办?也许自我调整很重要

每个人能力有限,水平高低不同,我们身在大环境里,虽然在同一个起跑线上,但是时间久了,你会发现,并越来越感觉到和身边其他人有了差距,慢慢的会有一定的落差感,怎么办呢!通…

Android手机信息获取(详细版)

经典好文推荐,通过阅读本文,您将收获以下知识点: 一、 获取手机基本信息(厂商、型号等参数) 二、设备信息获取实现图 三、 获取手机设备 宽、高、IMEI 信息 四、 获取手机厂商名、产品名、手机品牌、手机型号、主板名、设备名 五、获取手机硬件名、SDK版本、android版本 、语…

无代码开发:打破传统开发模式,引领数字化转型新方向

随着数字化转型的加速,企业对于高效、便捷的软件开发需求愈发旺盛。无代码开发作为一种新兴的软件开发模式,以其可视化、模块化的开发方式,为数字化转型提供了新的方向。本文将从无代码开发的优势、应用场景、如何实现等方面进行详细解读&…

中介者模式——协调多个对象之间的交互

1、简介 1.1、概述 如果在一个系统中对象之间的联系呈现为网状结构,如下图所示: 对象之间存在大量的多对多联系,将导致系统非常复杂,这些对象既会影响别的对象,也会被别的对象所影响,这些对象称为同事对…

配置root账户ssh免密登录并使用docker-machine构建docker服务

简介 Docker Machine是一种可以在多种平台上快速安装和维护docker运行环境,并支持多种平台,让用户可以在很短时间内在本地或云环境中搭建一套docker主机集群的工具。 使用docker-machine命令,可以启动、审查、停止、重启托管的docker 也可以…

揭示用户激活的价值:为什么产品经理应该关注

如果你在一家SaaS公司工作,你可能自诩对漏斗指标有很好的理解,你可能可以倒背如流——获取,用户激活,保留,推荐和收入。你甚至可能记得它们的出处,但是你对这些指标的理解到底有多深呢?你知道你…

node.js系列-多种方案教你在node程序中同时使用CommonJS 和 ES Module 混合开发最佳实践

前情提要 我们平时使用的npm 第三方包一般基于这两种规范开发的,很容易遇到一个项目里既有 CommonJS 又有 ES Module 的情况,那么我们应该如何解决这种CommonJS 和 ES Module 混合开发的问题呢? CommonJS是什么? 2009年&#x…

C++学习笔记总结练习--容器

容器 1 简介 新标准库的容器壁使用原始的数组实现的数据结构要快很多。经过了精心的优化。 确定使用哪种容器 除非有明确的理由,否则使用vector随机元素访问vector或deque容器中间插入或者插入元素list、forward_list头尾插入元素,使用deque可以在输入…

RelativeSource有四种类型

Self FindAncestor TemplatedParent PreviousData a.Self Self用于绑定源和绑定目标相同的场景中。对象的一个属性与同一对象的另一个属性绑定。 例如&#xff0c;让我们取一个高度和宽度相同的椭圆。在XAML文件中添加下面给出的代码。宽度属性与高度属性相对绑定。 <G…

Stephen Wolfram:“足够大的网络肯定能做任何事!”

“Surely a Network That’s Big Enough Can Do Anything!” “足够大的网络肯定能做任何事&#xff01;” The capabilities of something like ChatGPT seem so impressive that one might imagine that if one could just “keep going” and train larger and larger neura…

【Kubernetes】Kubernetes的部署

kubernetes 一、Kubernetes 的安装部署1. 常见的安装部署方式1.1 Minikube1.2 Kubeadm1.3 二进制安装部署 2. K8S 部署 二进制与高可用的区别2.1 二进制部署2.2 kubeadm 部署 二、Kubernetes 的部署过程1. 二进制部署1.1 服务器相关设置以及架构1.2 操作系统初始化配置1.3 部署…

【前端|Javascript第1篇】一文搞懂Javascript的基本语法

欢迎来到JavaScript的奇妙世界&#xff01;作为前端开发的基石&#xff0c;JavaScript为网页增色不少&#xff0c;赋予了静态页面活力与交互性。如果你是一名前端小白&#xff0c;对编程一无所知&#xff0c;或者只是听说过JavaScript却从未涉足过&#xff0c;那么你来对了地方…