当前位置: 首页 > news >正文

【RoadRunner】自动驾驶模拟3D场景构建 | 软件简介与视角控制

💯 欢迎光临清流君的博客小天地,这里是我分享技术与心得的温馨角落 💯

在这里插入图片描述

🔥 个人主页:【清流君】🔥
📚 系列专栏: 运动控制 | 决策规划 | 机器人数值优化 📚
🌟始终保持好奇心,探索未知可能性🌟

动图描述

文章目录

  • 引言
  • 一、RoadRunner 功能概述
    • 1.1 创建自定义3D场景
    • 1.2 交通信号与流量控制
    • 1.3 数据导入与导出
    • 1.4 素材库与场景构建
  • 二、视角控制基本操作
    • 2.1 旋转视角
    • 2.2 放大和缩小视角
    • 2.3 平移视角
      • (1) 水平移动视角
      • (2) 垂直移动视角
  • 三、视角框定
    • 3.1 将视角框在选定的对象上
    • 3.2 将视角置于光标上
  • 四、更改视图投影
  • 五、设置视角视图方向
  • 六、总结
  • 参考资料


在这里插入图片描述

引言

  在自动驾驶的世界里,模拟测试是确保车辆在各种复杂环境中安全行驶的关键。今天,我要给大家介绍一款超级强大的工具——RoadRunner,这是一个创新的交互式编辑器,专为自动驾驶系统的模拟和测试而设计。本篇博客主要介绍 RoadRunner 软件的视角控制。


一、RoadRunner 功能概述

1.1 创建自定义3D场景

  RoadRunner能够在一个完全自定义的 3 D 3D 3D 道路场景中,模拟自动驾驶车辆可能遇到的各种情况。RoadRunner 能够轻松地创建特定区域的路标和标记,无论是添加标志、信号灯、护栏,还是模拟道路损坏,甚至是添加树叶、建筑物等 3 D 3D 3D 模型。

1.2 交通信号与流量控制

  RoadRunner 提供了丰富的工具,能够细致地设置和配置交叉路口的交通信号计时、相位和车辆路径。这意味着可以在模拟环境中精确地控制交通流,从而更真实地测试自动驾驶系统的性能。

  此外,RoadRunner 还支持激光雷达点云、航拍图像和 GIS 数据的高清可视化,让模拟场景更加逼真。还可以使用 ASAM OpenDRIVE 导入和导出道路网络,确保场景与行业标准保持一致。

1.3 数据导入与导出

  使用RoadRunner构建的 3 D 3D 3D 场景可以导出为多种格式,包括 FBXglTFOpenFlightOpenSceneGraphOBJUSD ,这使得它们可用于各种自动驾驶模拟器和游戏引擎,如 CARLAVIRES VTDNVIDIA DRIVE SimSVLBaidu ApolloUnityUnreal Engine

1.4 素材库与场景构建

  RoadRunner的素材库提供了大量逼真且视觉一致的 3 D 3D 3D 模型,可快速填充场景。而RoadRunner Scene Builder更是能从高清地图自动生成 3 D 3D 3D 道路模型,极大地提高了效率。

  RoadRunner 使能够编辑跨越数公里或英里的 3 D 3D 3D 环境的大规模和小规模细节。交互式摄像机控制使能够快速有效地在这个巨大的 3 D 3D 3D 空间中导航。本篇博客以一个例子展示 RoadRunner 场景编辑环境中视角控制的基础知识,后续完成地图构建后可导入 Carla 内做自动驾驶模拟仿真。


二、视角控制基本操作

  打开一个基本场景来移动视角。从菜单栏中选择 File ,选择 Open Scene ,打开 FourWaySignal.rrscene,它是 RoadRunner 项目的 Scenes 文件夹中包含的默认场景之一。场景在屏幕中央自上而下展开,倾斜 45 45 45 度角。

在这里插入图片描述

2.1 旋转视角

  RoadRunner 中的视角控制基于极轴观察模型,其中视角以固定距离围绕兴趣点旋转。默认情况下,当打开新场景时,兴趣点位于原点上方 1.5 1.5 1.5 米,以近似站在场景中心的人的头部位置。该场景的兴趣点位于交叉路口的中心。

  可以随时从任何工具中按住 Alt 键或 Windows 键并移动指针,围绕兴趣点旋转视角。

按住 Win 键拖动指针,每次会弹出 windows 菜单,不好用,因此推荐使用 Alt 键。

  按住 Alt 键,点击场景中的任意位置,拖动指针。观察视角旋转相对于兴趣点的变化。

在这里插入图片描述

2.2 放大和缩小视角

  要放大视角,按住 Alt 和右键,向上或向右拖动指针。相反,要缩小视角,按住 Alt 和右键,向下或向左拖动指针。或者,可以使用鼠标滚轮来放大或缩小。

  按住 Alt 和右键,向下拖动指针以缩小。

在这里插入图片描述

  按住 Alt 和右键,向上拖动指针并一直放大到兴趣点,直到视角停止移动。

在这里插入图片描述

  按住 Alt 和左键可旋转视角。类似于人站在固定位置环顾四周。

在这里插入图片描述

2.3 平移视角

(1) 水平移动视角

  要沿地面( x y xy xy )平面水平移动视角,首先按住 Alt 键并按住鼠标左键和右键,拖动指针。或者,可以通过按住中键并拖动指针来移动视角。

(2) 垂直移动视角

  对于简单的环境,可以将视角兴趣点的高度设置为默认值。但是,对于更复杂的环境,可能需要向上或向下移动兴趣点。例如,如果正在设计带有桥梁的场景,则可能需要向下移动兴趣点,以便可以在桥下操纵视角。

  • 要向上移动视角,按住 Alt + Shift +鼠标左键+鼠标右键,向下拖动指针。
  • 要向下移动视角,按住这些键的同时,向上拖动指针。

或者,可以按住 Alt 、 Shift 和鼠标中键,上下拖动指针以获得相同的效果。


三、视角框定

3.1 将视角框在选定的对象上

  在任何工具中,都可以将视角居中或框定在当前选定的对象上。要将视角置于选定物体的中心,按 F 键。或者,从 View 菜单中,选择 Frame Selected

  1. 缩小场景。按住 Alt 和右键,将指针向下拖动。

在这里插入图片描述

  1. 点击 Road Plan Tool 按钮 在这里插入图片描述 以使道路可选。

  2. 选择较长的道路并按 F 键。视角以较长的道路为中心。

在这里插入图片描述

  1. 选择另一条道路并按下 F 。视角会放大到较短道路的中心。

在这里插入图片描述

  1. 点击 Prop Point Tool 按钮 在这里插入图片描述 以使交通灯道具可选。

  2. 选择一个点道具并按下 F 。视角将放大所选道具。

在这里插入图片描述

  按住 Alt 点击并拖动来旋转视角时,视角会围绕道具旋转。

在这里插入图片描述

  • 如果未选择任何视图或对象,按 F 键或从 View 菜单中选择 Frame Selected ,将框住场景中的所有数据,并保留视角角度位置。

  • 如果场景是空的,按 F 键或选择 Frame Selected ,将带回到场景编辑画布中的原点。

3.2 将视角置于光标上

  可以将视角居中或框定到光标当前所在的位置。要将视角置于光标中心,执行以下步骤:

  1. 缩小场景。将光标悬停在道路的一端。

在这里插入图片描述

  1. V 。视角拉近到道路的尽头。

在这里插入图片描述


四、更改视图投影

RoadRunner 视角可以使用 透视正交 投影。

  • 透视投影:默认的观看投影,它会导致远处的物体看起来比近处的物体小。

  • 正交投影:与 CAD 工具中的投影类似。它对于通常从自上而下的角度进行精确定位很有用。在正交模式下,对象在靠近或远离时不会改变外观尺寸。

视角控件在两种投影模式下的工作方式相同。

  移动视角,使整个交叉路口都在视野中。,按 O 切换到正字法模式。在此模式下,交通信号灯的大小均相同。要在正交模式下放大到特定位置,将光标悬停在该位置上并滚动。这将带到达所需的位置。

  按 P 切换回透视模式,远处的交通灯会显得更小。

正交模式(按 O O O透视模式(按 P P P
在这里插入图片描述在这里插入图片描述

五、设置视角视图方向

  可以将摄像机的视图方向设置为正北、南、东、西或自上而下。要更改视图方向,在 View 菜单上选择 Direction ,选择所需的视图方向。或者,可以使用数字键盘快捷键。

  使用数字键盘上的这些键更改场景的视图方向。此表显示了当摄像机位于场景及其相应数字键盘快捷键的交叉路口时的示例视图方向。在自上而下的视图中,视角也会旋转到指向北方,相对位置关系如下表所示。

 

北( 8 键)

Camera at intersection and pointed north

 

西 ( 4 键)

Camera at intersection and pointed west

自上而下( 5 键)

Camera at intersection and viewing it from a top-down perspective

东 ( 6 键)

Camera at intersection and pointed east

 

南( 2 键)

Camera at intersection and pointed south

 

六、总结

  在使用 RoadRunner 进行场景编辑时,视角控制是一个重要的功能,能够帮助用户高效地导航和操控复杂的 3 D 3D 3D 环境。通过上述方法,用户可以轻松地旋转、放大、缩小以及移动视角,从而准确定位和调整场景元素。掌握如何将视角框定在选定对象上以及根据光标位置调整视角,有助于提升工作效率。此外,用户可以根据需要切换透视和正交投影,以实现不同的视觉效果和精确度。

  通过快捷键和鼠标操作的结合,用户能够灵活地设置视图方向,确保以最佳的角度进行场景设计。这些技巧不仅使得编辑过程更加流畅,还增强了用户对场景整体布局的理解。掌握这些视角控制的基本技能,将大大提高在 RoadRunner 中进行高效设计的能力,使其在交通仿真和规划领域的应用更加得心应手。


参考资料

  RoadRunner 官方帮助文档


后记:

🌟 感谢您耐心阅读这篇关于 RoadRunner 软件简介与视角控制 的技术博客。 📚

🎯 如果您觉得这篇博客对您有所帮助,请不要吝啬您的点赞和评论 📢

🌟您的支持是我继续创作的动力。同时,别忘了收藏本篇博客,以便日后随时查阅。🚀

🚗 让我们一起期待更多的技术分享,共同探索移动机器人的无限可能!💡

🎭感谢您的支持与关注,让我们一起在知识的海洋中砥砺前行 🚀

动图描述

相关文章:

【RoadRunner】自动驾驶模拟3D场景构建 | 软件简介与视角控制

💯 欢迎光临清流君的博客小天地,这里是我分享技术与心得的温馨角落 💯 🔥 个人主页:【清流君】🔥 📚 系列专栏: 运动控制 | 决策规划 | 机器人数值优化 📚 🌟始终保持好奇心&…...

15分钟学Go 第4天:Go的基本语法

第4天:基本语法 在这一部分,将讨论Go语言的基本语法,了解其程序结构和基础语句。这将为我们后续的学习打下坚实的基础。 1. Go语言程序结构 Go语言程序的结构相对简单,主要包括: 包声明导入语句函数语句 1.1 包声…...

【Qt】Qt的介绍——Qt的概念、使用Qt Creator新建项目、运行Qt项目、纯代码方式、可视化操作、认识对象模型(对象树)

文章目录 Qt1. Qt的概念2. 使用Qt Creator新建项目3. 运行Qt项目3.1 纯代码方式实现3.2 可视化操作实现 4. 认识对象模型(对象树) Qt 1. Qt的概念 Qt 是一个跨平台的 C 图形用户界面应用程序开发框架。它是软件开发者提供的用于界面开发的程序框架&#…...

论文笔记:PTR: Prompt Tuning with Rules for Text Classification

Abstract 手动设计大量语言提示麻烦且易出错,而自动生成的提示,在非小样本场景下验证其有效性昂贵且耗时。因此,提示调优以处理多类别分类任务仍然具有挑战。为此,本文提出使用规则进行多类别文本分类提示调优(PTR&…...

服务器和中转机协同工作以提高网络安全

服务器和中转机(代理服务器)可以通过多种方式协同工作来提高网络安全。 常见的协同工作策略: 1. 使用代理服务器作为安全网关 访问控制:代理服务器可以作为网络的入口点,实施访问控制策略,如基于IP地址、…...

Java利用itextpdf实现pdf文件生成

前言 最近公司让写一个数据页面生成pdf的功能,找了一些市面代码感觉都太麻烦,就自己综合性整合了一个便捷的工具类,开发只需简单组装数据直接调用即可快速生成pdf文件。望大家一起学习!!! 代码获取方式&am…...

2010年国赛高教杯数学建模C题输油管的布置解题全过程文档及程序

2010年国赛高教杯数学建模 C题 输油管的布置 某油田计划在铁路线一侧建造两家炼油厂,同时在铁路线上增建一个车站,用来运送成品油。由于这种模式具有一定的普遍性,油田设计院希望建立管线建设费用最省的一般数学模型与方法。   1. 针对两炼…...

datawhale大模型bot应用开发--task3:工作流

目录 一、介绍:Coze工作流 1.1工作流应用场景 1.2什么是工作流 1.3思考环节 二、各个工作流详情 2.1情感分类工作流 2.2 随机数工作流 2.3 必应搜索工作流 2.4 天气查询工作流 三、集合上面五个工作流的总工作流 一、介绍:Coze工作流 1.1工作…...

期货配资系统风控逻辑开发/完整源代码

期货配资系统风控逻辑的开发是确保系统安全、稳定、高效运行的关键环节。以下是对期货配资系统风控逻辑开发的详细分析: 一、风险识别与评估 风险来源分析: 市场风险:期货市场价格波动带来的风险。信用风险:投资者或配资方违约的…...

汽车免拆诊断案例 | 2023款零跑C01纯电车后备厢盖无法电动打开和关闭

故障现象  一辆2023款零跑C01纯电车,累计行驶里程约为2万km,车主进厂反映,后备厢盖无法电动打开和关闭。 故障诊断  接车后试车,操作后备厢盖外侧、驾驶人侧及遥控钥匙上的后备厢盖开启按钮,可以听到后备厢盖解锁的…...

分布式存储架构 与分布式一致性协议

分布式存储架构可以分为无中心节点架构和有中心节点架构。它们的设计在系统中的角色分配、数据管理、协调方式等方面有所不同。 1. 无中心节点架构(Decentralized/Peer-to-Peer Architecture) 在无中心节点的分布式存储架构中,所有节点都是…...

Unity Apple Vision Pro 保姆级开发教程 - Simulator 模拟器使用

教程视频 Apple VisionPro Simulator 模拟器使用教程 VsionOS Simulator 简介 visionOS Simulator 是一个用于开发和测试 visionOS 应用程序的工具。它模拟 Apple Vision Pro 的运行环境,帮助开发者在没有硬件设备的情况下创建、调试和优化他们的应用程序。VisionO…...

Vue 之 插件与组件的区别

在 Vue.js 中,插件(Plugin)和组件(Component)都是用来扩展 Vue 功能的重要工具,但它们的应用场景和使用方式有所不同。本文将通过对比的方式,帮助开发者更好地理解两者的区别,并通过…...

了解 ChatGPT 中的公平性问题

了解 ChatGPT 中的公平性问题 最近,OpenAI 又发布了一篇新的博客。他们谈论了一个有趣又重要的话题——用户的身份如何影响 ChatGPT 的回答。 这项研究揭示了一个鲜明的事实,那就是 AI 可能会无意间对人类产生刻板印象。很可能这些刻板印象源自 AI 训练过程中使用的数据,而这…...

【PHP】安装swoole时报错:No package ‘libbrotlienc‘ found

一、环境 Debian 11(bullseye) PHP 8.2.14 Swoole 5.1.4 二、过程 今天在安装Swoole 5.1.4的时候报错,错误信息如下: configure: error: Package requirements (libbrotlienc) were not met:No package libbrotlienc foundConsider adjusting the PK…...

postgresql执行计划解读案例

简介 SQL优化中读懂执行计划尤其重要,以下举例说明在执行计划中常见的参数其所代表的含义。 创建测试数据 -- 创建测试表 drop table if exists customers ; drop table if exists orders ; drop table if exists order_items ; drop table if exists products ;…...

Matlab实现粒子群优化算法优化随机森林算法模型 (PSO-RF)(附源码)

目录 1.内容介绍 2.部分代码 3.实验结果 4.内容获取 1内容介绍 粒子群优化算法(PSO)是一种启发式搜索方法,灵感来源于鸟类群体觅食的行为。在PSO中,每个解都是搜索空间中的一个“粒子”,这些粒子以一定的速度飞行&am…...

使用 EasyExcel 相邻数据相同时行和列的合并,包括动态表头、数据

前言 在处理 Excel 文件时,经常会遇到需要对表格中的某些单元格进行合并的情况,例如合并相同的行或列。Apache POI 是一个强大的工具,但它使用起来相对复杂。相比之下,EasyExcel 是一个基于 Apache POI 的轻量级 Excel 处理库&am…...

985研一学习日记 - 2024.10.16

一个人内耗,说明他活在过去;一个人焦虑,说明他活在未来。只有当一个人平静时,他才活在现在。 日常 1、起床6:00√ 2、健身1个多小时 今天练了二头和背部,明天练胸和三头 3、LeetCode刷了3题 旋转图像&#xff1a…...

安装mysql 5.5.62

1>先检查是否存在其他版本mysql rpm -qa|grep -i mariadb 存在则卸载 yum -y remove maria* 2>下载mysql 5.5.62 wget https://cdn.mysql.com/archives/mysql-5.5/mysql-5.5.62-linux-glibc2.12-x86_64.tar.gz 3>确认系统是否安装libaio库 yum -y install libai…...

AnaTraf | 网络性能监控系统的价值

目录 1. IT运维工程师 2. 网络管理员 3. 安全团队(网络安全工程师) 4. 业务部门(应用开发人员、产品经理) 5. 管理层与决策者(CTO/CIO、IT经理) 6. 最终用户(普通员工) 总结&…...

决策树和集成学习的概念以及部分推导

一、决策树 1、概述 决策树是一种树形结构,树中每个内部节点表示一个特征上的判断,每个分支代表一个判断结果的输出,每个叶子节点代表一种分类结果 决策树的建立过程: 特征选择:选择有较强分类能力的特征决策树生成…...

servlet基础与环境搭建(idea版)

文章目录 环境变量配置安包装环境变量配置JDK 配置 静态网页动态网页(idea)给模块添加 web框架新版本 2023 之后的 idea,使用方法二idea 目录介绍建立前端代码启动配置 环境变量配置 tomcat 环境变量 安包装 环境变量配置 JDK 配置 静态网页…...

【10月最新】植物大战僵尸杂交版新僵尸预告(附最新版本下载链接)

【BOSS僵尸】埃德加二世 【新BOSS僵尸】埃德加二世 “埃德加博士的克隆体。驾驶着最新一代小型化机甲,致力于为戴夫博士扫清障碍。” -体型(模型大小)小于原版僵王的头 -血量120000(原版僵王复仇的2倍),免疫…...

网络编程-UDP以及数据库mysql

UDP通信流程 服务端客户端有一个邮箱socket()有一个邮箱socket()绑定地址bind()发送数据sendto接收数据recvfrom关闭close()关闭colse() //服务端 #include "head.h" // ./server 10001 int main(int argc,char *argv[]) {// 1、创建socket套接字// 参数1&#xff…...

ubuntu 20.04 安装ros1

步骤 1:设置系统 首先,确保系统环境是最新的: sudo apt update sudo apt upgrade 步骤 2:设置源和密钥 添加 ROS 软件源: 首先,确保 curl 和 gnupg 已安装: sudo apt install curl gnupg2…...

ShardingSphere-Proxy 数据库中间件MySql分库分表环境搭建

一. ShardingSphere-Proxy简介 1、简介 Apache ShardingSphere 是一款开源分布式数据库生态项目,旨在碎片化的异构数据库上层构建生态,在最大限度的复用数据库原生存算能力的前提下,进一步提供面向全局的扩展和叠加计算能力。其核心采用可插…...

Pytest+selenium UI自动化测试实战实例

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 今天来说说pytest吧,经过几周的时间学习,有收获也有疑惑,总之最后还是搞个小项目出来证明自己的努力不没有白费 环境准备 1 …...

服务器技术研究分析:存储从HBM到CXL

服务器变革:存储从HBM到CXL 在《从云到端,AI产业的新范式(2024)》中揭示,传统服务器价格低至1万美金,而配备8张H100算力卡的DGX H100AI服务器价值高达40万美金(约300万人民币)。 从供…...

下载并安装 WordPress 中文版

下载并安装 WordPress 中文版 1. 安装 LAMP 环境(Linux, Apache, MySQL, PHP)1. 安装 Apache2. 安装 MySQL3. 安装 PHP1. 下载并安装 WordPress 中文版1. 下载 WordPress2. 配置文件权限3 . 创建 MySQL 数据库4 . 配置 WordPress1. 安装 LAMP 环境(Linux, Apache, MySQL, PH…...