CVPR2023 | 3D Data Augmentation for Driving Scenes on Camera

news2024/9/24 15:23:40

3D Data Augmentation for Driving Scenes on Camera

摄像机驾驶场景的 3D 数据增强

摘要翻译

驾驶场景极其多样和复杂,仅靠人力不可能收集到所有情况。虽然数据扩增是丰富训练数据的有效技术,但自动驾驶应用中现有的摄像头数据扩增方法仅限于二维图像平面,在三维真实世界场景中可能无法最佳地增加数据多样性。为此,我们提出了一种名为 Drive-3DAug 的三维数据增强方法,旨在增强三维空间中摄像头拍摄的驾驶场景。我们首先利用神经辐射场(NeRF)重建背景和前景物体的三维模型。然后,将位置和方向经过调整的三维物体放置在预定义的背景有效区域,就可以获得增强的驾驶场景。因此,可以有效地扩大训练数据库。然而,三维物体建模受限于图像质量和有限的视角。为了克服这些问题,我们对原始 NeRF 进行了修改,引入了几何矫正损失和对称感知训练策略。我们在 Waymo 和 nuScences 数据集上评估了我们的方法在仅摄像头的单目 3D 检测任务中的应用。在 Waymo 和 nuScences 数据集上,我们提出的数据增强方法分别提高了 1.7% 和 1.4% 的检测准确率。此外,构建的三维模型可作为数字驾驶资产,并可用于不同的检测器或其他三维感知任务。

论文总结

论文《3D Data Augmentation for Driving Scenes on Camera》提出了一种名为Drive-3DAug的3D数据增强方法,用于丰富自动驾驶应用中的训练数据。该方法利用神经辐射场(NeRF)重建背景和前景对象的3D模型,然后将这些对象放置在背景的预定义有效区域中,以创建增强的驾驶场景。作者通过引入几何校正损失和对称感知训练策略来解决3D对象建模的挑战。所提出的方法在Waymo和nuScenes数据集上进行了摄像头仅用单目3D检测的评估,显示出在检测准确性上的显著提升。构建的3D模型也可以用于不同的检测器或其他3D感知任务。

主要要点和关键论点包括

  • 驾驶场景多样化,手动收集所有案例是不可能的。
  • 自动驾驶中现有的针对摄像头数据的数据增强方法限于2D图像平面。
  • 提出的Drive-3DAug方法使用NeRF重建背景和前景对象的3D模型,在3D空间中增强驾驶场景。
  • 该方法通过引入几何校正损失和对称感知训练策略,改进了训练数据库并克服了3D对象建模的限制。
  • Drive-3DAug在Waymo和nuScenes数据集上的摄像头仅用单目3D检测中实现了检测准确性的提升。
  • 构建的3D模型可以用于不同的检测器或其他3D感知任务。

架构

图 2. 用于三维数据增强的 Drive-3DAug 概览。驾驶场景被分解为多个背景和物体。对于每个背景和物体,我们使用多帧视图,通过基于体素的 NeRF [41],分别对其进行重建。为了进一步提高重建质量,我们在 NeRF 中引入了对称约束、几何矫正和深度监控。我们利用训练有素的三维模型在三维空间中编辑场景,并通过渲染组成的新场景生成图像,以完成以下三维感知任务。

架构说明

以下是该架构说明的具体含义:

  1. 驾驶场景分解:Drive-3DAug首先将驾驶场景分解为多个背景和对象。这意味着场景中的每个元素(如车辆、行人、道路、建筑等)被单独识别和处理,以便独立重建。

  2. 基于体素的NeRF重建:对于每个背景和对象,Drive-3DAug使用多帧视图通过基于体素的NeRF(神经辐射场)技术分别进行重建。这种方法允许从一组稀疏的2D图像中重建出每个元素的3D模型。

  3. 重建质量改进:为了进一步提高重建质量,Drive-3DAug引入了对称性约束、几何校正和深度监督。这些技术帮助确保重建的3D模型在形状、结构和深度上更加准确和真实。

    • 对称性约束:假设对象在某些方向上是对称的,以帮助改进形状的重建。
    • 几何校正:调整重建过程,以纠正可能的几何畸变,确保3D模型的正确比例和定位。
    • 深度监督:使用深度信息作为额外的监督信号,以提高重建的深度准确性。
  4. 3D空间中的场景编辑:通过对训练好的3D模型进行操作,Drive-3DAug在3D空间中编辑场景。这可能包括移动、旋转或添加新的对象到场景中,以创造新的训练数据。

  5. 新场景的图像生成:编辑后的新场景通过渲染生成2D图像,这些图像可用于后续的3D感知任务。渲染过程考虑了新组合场景的光照、视角和其他视觉效果,以生成逼真的图像。

总之,Drive-3DAug为驾驶场景的3D数据增强提供了一个全面的框架,通过分解、独立重建和编辑场景中的各个元素,并引入先进的技术改进重建质量,最终生成用于3D感知任务的高质量训练数据。

Drive-3DAug中的NeRF应用

在Drive-3DAug中,使用NeRF来重建背景和前景对象的3D模型具体涉及以下几个步骤:

  1. 3D场景重建:首先,使用NeRF技术从自动驾驶场景的2D图像中重建整个场景的3D模型。这包括场景中的静态背景以及动态的前景对象。

  2. 背景和前景分离:通过适当的方法将重建的3D场景中的背景和前景对象分离开来。这可能涉及到使用额外的信息或技术来识别和区分场景中的不同组成部分。

  3. 数据增强:一旦背景和前景对象被成功重建和分离,就可以在3D空间中对它们进行各种操作,如移动前景对象、改变它们的位置或向场景中添加新的对象。这样做可以生成新的、多样化的训练数据,增强自动驾驶系统的3D感知能力。

        通过这种方式,Drive-3DAug能够在3D空间中灵活地增强驾驶场景,提供更丰富和多样化的数据,以训练和改进自动驾驶系统的性能。这种基于NeRF的3D数据增强方法,相比传统的基于2D图像的增强方法,能够更好地模拟和理解复杂的3D场景和对象间的相互作用,从而提高3D目标检测和场景理解的准确性。

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

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

相关文章

MySQL order by 语句执行流程

全字段排序 假设这个表的部分定义是这样的: CREATE TABLE t (id int(11) NOT NULL,city varchar(16) NOT NULL,name varchar(16) NOT NULL,age int(11) NOT NULL,addr varchar(128) DEFAULT NULL,PRIMARY KEY (id),KEY city (city) ) ENGINEInnoDB; 有如下 SQL 语…

自动控制原理--matlab/simulink建模与仿真

第一讲 自动控制引论 第二讲 线性系统的数学模型 第三讲 控制系统的复域数学模型(传递函数) 第四讲 控制系统的方框图 /video/BV1L7411a7uL/?p35&spm_id_frompageDriver pandas, csv数据处理 numpy,多维数组的处理 Tensor,PyTorch张量 工作原理图…

留学生课设|R语言|研究方法课设

目录 INSTRUCTIONS Question 1. Understanding Quantitative Research Question 2. Inputting data into Jamovi and creating variables (using the dataset) Question 3. Outliers Question 4. Tests for mean difference Question 5. Correlation Analysis INSTRUCTIO…

Tomcat的使用

1. Tomcat 1.1 Tomcat 是什么 Tomcat 就是基于 Java 实现的一个开源免费, 也是被广泛使用的 HTTP 服务器 1.2 下载安装 Tomcat官网选择其中的 zip 压缩包, 下载后解压缩即可,解压缩的目录最好不要带 “中文” 或者 特殊符号 进入 webapps 目录,每个文件夹都对应…

graylog API 弱密码

graylog web 页面密码设置 输入密码&#xff1a;获取sha256加密后密码 echo -n "Enter Password: " && head -1 </dev/stdin | tr -d \n | sha256sum | cut -d" " -f1vi /etc/graylog/server/server.conf #修改以下配置 root_usernameroot ro…

Monorepo 解决方案 — 基于 Bazel 的 Xcode 性能优化实践

背景介绍 书接上回《Monorepo 解决方案 — Bazel 在头条 iOS 的实践》&#xff0c;在头条工程切换至 Bazel 构建系统后&#xff0c;为了支持用户使用 Xcode 开发的习惯&#xff0c;我们使用了开源项目 Tulsi 作为生成工具&#xff0c;用于将 Bazel 工程转换为 Xcode 工程。但是…

【爬虫开发】爬虫从0到1全知识md笔记第1篇:爬虫概述【附代码文档】

爬虫开发从0到1全知识教程完整教程&#xff08;附代码资料&#xff09;主要内容讲述&#xff1a;爬虫概述。selenium的其它使用方法。Selenium课程概要。常见的反爬手段和解决思路。验证码处理。chrome浏览器使用方法介绍。JS的解析。Mongodb的介绍和安装,小结。mongodb的简单使…

信息系统项目管理师--干系人管理

干系人会受到项⽬积极或消极的影响&#xff0c;或者能对项⽬施加积极或消极的影响 项⽬经理和团队管理⼲系⼈的能⼒决定着项⽬的成败。为提⾼项⽬成功的概率&#xff0c; 尽早开始识别⼲系⼈并引导⼲系⼈参与。当项⽬章程被批准、项⽬经理被委任&#xff0c;以及团队开始组建之…

【剪枝实战】使用VGGNet训练、稀疏训练、剪枝、微调等,剪枝出只有3M的模型

摘要 本次剪枝实战是基于下面这篇论文去复现的&#xff0c;主要是实现对BN层的γ/gamma进行剪枝操作&#xff0c;本文用到的代码和数据集都可以在我的资源中免费下载到。 相关论文&#xff1a;Learning Efficient Convolutional Networks through Network Slimming (ICCV 2017…

算法---滑动窗口练习-3(水果成篮)

水果成篮 1. 题目解析2. 讲解算法原理3. 编写代码 1. 题目解析 题目地址&#xff1a;水果成篮 2. 讲解算法原理 算法的主要思想是使用滑动窗口来维护一个包含最多两种水果的子数组。定义两个指针 left 和 right 分别表示窗口的左边界和右边界。还定义了一个数组 hash 来记录水…

【新书推荐】29.1 32位汇编基本概念

第二十九章 32处理器体系结构 这一章我们将讲述32处理器体系结构。包括32位计算机的一些基本概念&#xff0c;32位处理器&#xff0c;程序加载执行的过程&#xff0c;32位计算机的硬件组成和输入输出系统。 29.1 基本概念 本节内容&#xff1a; ■实模式与保护模式 ■操作系…

Css提高——flex布局及其相关属性

目录&#xff1a; 1、传统布局与flex布局的区别 2、flex的布局原理 3、flex常见的父项属性 3.1、flex-direction &#xff1a;设置主轴的方向 3.2、justify-content 设置主轴上的子元素排列方式 3.3、flex-wrap 设置子元素是否换行 3.4、align-items 设置侧轴上的子元素排…

北京保险服务中心携手镜舟科技,助推新能源车险市场规范化

2022 年&#xff0c;一辆新能源汽车在泥泞的小路上不慎拖底&#xff0c;动力电池底壳受损&#xff0c;电池电量低。车主向保险公司报案&#xff0c;希望能够得到赔偿。然而&#xff0c;在定损过程中&#xff0c;保司发现这辆车的电池故障并非由拖底事件引起&#xff0c;而是由于…

融入Facebook的世界:探索数字化社交的魅力

融入Facebook的世界&#xff0c;是一场数字化社交的奇妙之旅。在这个广袤的虚拟社交空间中&#xff0c;人们可以尽情展现自己、分享生活&#xff0c;与全球朋友、家人和同事保持紧密联系&#xff0c;共同探索社交互动的乐趣与魅力。让我们深入了解这个世界的魅力所在&#xff1…

Docker 安装部署MySQL教程

前言 Docker安装MySQL镜像以及启动容器&#xff0c;大致都是三步&#xff1a;查询镜像–>拉取镜像–>启动容器 1、查询镜像 docker search mysql2、拉取镜像 拉取镜像时选择stars值较高的 docker pull mysql:5.7 #这里指定拉取对应的版本Mysql5.7&#xff0c;没有指…

冒泡排序,详详解解

目录 基本概念&#xff1a; 上图&#xff1a; 核心思路&#xff1a; 基本步骤&#xff1a; 关键&#xff1a; 代码核心&#xff1a; 补充&#xff1a; 代码&#xff08;规范&#xff09; &#xff1a; 代码&#xff08;优化&#xff09;&#xff1a; 今天我们不刷力扣了&…

Docker出现容器名称重复如何解决

假如你的重复容器名称是mysql5 删除已存在的容器&#xff1a;如果你不再需要那个已经存在的名为“mysql5”的容器&#xff0c;你可以删除它。使用下面的命令&#xff1a; docker rm -f mysql5这条命令会强制删除正在运行的容器。一旦容器被删除&#xff0c;你就可以重新使用这个…

计算数据集的几何平均数geometric_mean

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 计算数据集的几何平均数 geometric_mean [太阳]选择题 geometric_mean的作用是&#xff1f; import statistics a [1, 2, 3, 4] average_a statistics.geometric_mean(a) print(average_a)…

软考高级:遗留系统演化策略(集成、淘汰、改造、继承)概念和例题

作者&#xff1a;明明如月学长&#xff0c; CSDN 博客专家&#xff0c;大厂高级 Java 工程师&#xff0c;《性能优化方法论》作者、《解锁大厂思维&#xff1a;剖析《阿里巴巴Java开发手册》》、《再学经典&#xff1a;《Effective Java》独家解析》专栏作者。 热门文章推荐&am…

14.WEB渗透测试--Kali Linux(二)

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 内容参考于&#xff1a; 易锦网校会员专享课 上一个内容&#xff1a;13.WEB渗透测试--Kali Linux&#xff08;一&#xff09;-CSDN博客 netcat简介内容:13.WE…