【百度Apollo】探索自动驾驶:小白教学如何使用 Dreamview 播放数据包

ops/2024/11/14 3:21:54/

在这里插入图片描述

🎬 鸽芷咕:个人主页

 🔥 个人专栏: 《linux深造日志》《粉丝福利》

⛺️生活的理想,就是为了理想的生活!

文章目录

  • 引入
  • 一、Dreamview 简介
  • 二、使用 Dreamview 具体步骤
    • 步骤一:进入 Apollo Docker 环境
    • 步骤二:安装 DreamView(若已经安装,请忽略)
    • 步骤三:启动 DreamView
    • 步骤四:下载 Apollo 的演示包
    • 步骤五:播放 Apollo 的演示包
    • 步骤六:使用 DreamView 查看数据包
  • 三、结尾

引入

在开发和测试自动驾驶系统时,对于收集的数据进行可视化和分析是至关重要的。Apollo 提供了一个强大的工具,即 Dreamview,它可以帮助用户轻松地查看和分析收集的数据包。本文将介绍如何使用 Dreamview 进行数据包的可视化和分析,以及它的功能和优势。

一、Dreamview 简介

Dreamview 是 Apollo 平台中的一个交互式可视化工具,旨在帮助用户直观地查看自动驾驶系统的感知、规划和控制数据。通过 Dreamview,用户可以以三维场景的形式实时展示车辆的行驶轨迹、感知到的障碍物、规划的路径以及执行的控制命令,从而更加直观地了解系统的运行状态和性能表现。

在这里插入图片描述

二、使用 Dreamview 具体步骤

使用的前提是需要 Apollo EDU-Pre 发行版嗷, 并且 Apollo docker环境已经正常运行,若没有启动 Apollo docker环境,请执行以下命令:

bash scripts/edu_launcher.sh start

步骤一:进入 Apollo Docker 环境

  1. 输入以下命令进入 Apollo
bash scripts/edu_launcher.sh enter
  1. 执行setup脚本,Apollo的运行依赖于某些环境变量,需要手动执行一遍setup脚本
source /opt/apollo/neo/setup.sh

步骤二:安装 DreamView(若已经安装,请忽略)

在同一个终端,输入以下命令,安装 Apollo 的 DreamView 程序。

sudo apt install apollo-neo-dreamview-dev && sudo apt install apollo-neo-monitor-dev

步骤三:启动 DreamView

在同一个终端,输入以下命令,启动 Apollo 的 DreamView 程序。

bash scripts/apollo_neo.sh bootstrap

步骤四:下载 Apollo 的演示包

Record 是 Apollo 记录数据的一种数据格式。

.record 为后缀的文件就是我们说的 record 数据包。

在命令行中,输入下面的命令,下载 record 数据包。

wget https://apollo-system.cdn.bcebos.com/dataset/6.0_edu/demo_3.5.record

步骤五:播放 Apollo 的演示包

cyber_recorder play -f demo_3.5.record --loop

选项 --loop 用于设置循环回放模式。

步骤六:使用 DreamView 查看数据包

在浏览器中输入 http://localhost:8888,访问 Apollo DreamView:

地图选择Sunnyvale

如果一切正常,可以看到一辆汽车在 DreamView 里移动。

现在您看到的车和道路状况,只是 DreamView 将 record 数据包的数据单纯的回放,就像播放录好的视频一样。

三、结尾

Dreamview 是 Apollo 平台中的一个强大的可视化工具,为用户提供了直观、全面的数据可视化和分析功能,帮助用户更好地理解自动驾驶系统的运行状态和性能表现,加速系统开发和优化过程。通过使用 Dreamview,用户可以更加高效地开发、测试和部署自动驾驶系统,推动自动驾驶技术的不断发展和应用。


http://www.ppmy.cn/ops/29635.html

相关文章

【Spring AI】08. 输出解析器

文章目录 Output ParsersAPI 概述OutputParser 可用实现示例用法 Output Parsers OutputParser接口允许您获取结构化输出,例如将输出映射到 Java 类或从 AI 模型的基于字符串的输出中获取值数组。 您可以将其类比为 Spring JDBC 概念中的RowMapper或ResultSetExtra…

【docker】maven 打包docker的插件学习

docker-maven-plugin GitHub地址:https://github.com/spotify/docker-maven-plugin 您可以使用此插件创建一个 Docker 映像,其中包含从 Maven 项目构建的工件。例如,Java 服务的构建过程可以输出运行该服务的 Docker 映像。 该插件是 Spot…

【区块链】共识算法简介

共识算法简介 区块链三要素: 去中心化共识算法智能合约 共识算法作为区块链三大核心技术之一,其重要性不言而喻。今天就来简单介绍共识算法的基本知识。 最简单的解释,共识算法就是要让所有节点达成共识,保证少数服从多数&#x…

PostgreSQL自带的命令行工具02- createdb

PostgreSQL自带的命令行工具02- createdb 基础信息 OS版本:Red Hat Enterprise Linux Server release 7.9 (Maipo) DB版本:16.2 pg软件目录:/home/pg16/soft pg数据目录:/home/pg16/data 端口:5777createdb 是 Postgr…

区块链 | IPFS 工作原理入门

区块链和IPFS(InterPlanetary File System)是两种互补的技术,各自在分布式系统中扮演着重要的角色。虽然它们有不同的设计目标和应用场景,但结合起来使用可以提供更加强大和灵活的分布式解决方案。以下是区块链和IPFS工作原理的入…

【webrtc】MessageHandler 9: 基于线程的消息处理:执行Port销毁自己

Port::Port 构造的时候,就触发了一个异步操作,但是这个操作是要在 thread 里执行的,因此要通过post 消息 MSG_DESTROY_IF_DEAD 到thread跑:port的创建并米有要求在thread中 但是port的析构却在thread里 这是为啥呢?

【java超方便的导入导出工具类】SpringBoot操作Excel导入和导出

Excel导入和导出 一、前期准备 1、首先导入主要的依赖 <dependencies><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.7.0</version></dependency><depende…

网盘——分享文件——逻辑设计

本文主要讲解关于网盘文件操作部分的分享文件的逻辑设计部分&#xff0c;主要步骤如下&#xff1a; 目录 1、实施步骤&#xff1a; 2、代码实现 2.1、添加分享文件协议 2.2、添加取消槽函数 2.3、关联取消选择的槽函数 2.4、添加取消槽函数的定义 2.5、添加全选函数槽函…