目录
1. nuplan介绍:
1.1 nuplan数据集的意义:
2. 安装
2.1 下载开发包devkit
2.2 安装指定版本的python
2.3 安装虚拟环境
miniconda安装(已安装miniconda请跳过此步骤)
创建conda环境
在创建好的conda环境中安装依赖项:
3. 数据集下载与环境变量设置
3.1 数据集下载
3.2 环境变量配置
软件包环境变量配置
数据库环境变量配置
4. 小结
5. 参考资料
1. nuplan介绍:
是世界第一个针对自动驾驶规划方法测试的开源数据集(发布于2021年),收集了波士顿、匹兹堡、拉斯维加斯和新加坡这 4 个城市收集了大约 1300 小时的驾驶数据。
虽然基于 ML 的运动规划器越来越多,但缺乏既定的数据集、模拟框架和评价指标,这也限制了该领域的进展。现有数据集(Argoverse、Lyft、Waymo) 主要侧重与对其他代理的短期运动预测,而不是自我车辆的长期规划。这导致之前的方法大多使用基于 L2 指标的开环评估,不适用于合理评估长期规划。为了解决上述问题,nuplan除了提供大规模实车数据集,还提供了基于学习的训练框架来开发基于机器学习的规划器、轻量级闭环模拟器、运动规划评价指标和可视化工具。下图为其训练框架。
2. 安装
2.1 下载开发包devkit
首先,cd到希望的安装目录,然后在终端中运行以下代码:
git clone https://github.com/motional/nuplan-devkit.git
cd nuplan-devkit
2.2 安装指定版本的python
官方使用devkit 在 Ubuntu 上针对 Python 3.9 进行了测试,为了使用不出现bug,推荐安装python3.9,使用以下命令即可实现安装:
sudo apt install python-pip
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python3.9
sudo apt-get install python3.9-dev
2.3 安装虚拟环境
miniconda安装(已安装miniconda请跳过此步骤)
在终端中输入以下命令下载miniconda安装包:
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
运行安装包:
bash Miniconda3-latest-Linux-x86_64.sh
安装过程中按照指示一直选择yes即可,安装好conda后可以进行换源以提升速度,可参照canda在ubuntu环境换源
创建conda环境
首先保证终端处于已经下载好的文件夹nuplan-devkit中,然后运行以下代码:
conda create --name nuplan python=3.9
## 激活conda环境
conda activate nuplan
## 安装指定版本pip
python -m pip install pip==21.2.4 -i https://pypi.tuna.tsinghua.edu.cn/simple
在创建好的conda环境中安装依赖项:
保证terminal在nuplan-devkit目录下且nuplan的conda环境处于激活状态,依次运行以下代码:
pip install -r requirements_torch.txt
pip install -r requirements.txt
上述利用文件夹目录下的两个txt列表进行依赖包的安装,依赖包数量巨大,安装耗时长,可能出现中断现象。因此,在出现中断问题后应多次重复运行以上两行代码,保证所有包安装成功。
注意:官方nuplan-devkit提供的依赖包grpcio与SQLAlchemy版本存在缺失,应当分别安装SQLAlchemy-1.43.0版本与SQLAlchemy-1.4.27版本安装包,因此还需运行以下两行代码以确保版本正确,否则后续运行nuplan会出现bug。
pip install grpcio==1.43.0
pip install SQLAlchemy==1.4.27
3. 数据集下载与环境变量设置
3.1 数据集下载
在nuplan官网注册后即可下载数据集,注册后能进入如下下载界面,至少下载如图红框的两个数据集:
数据下载完成后,应分别解压到相应的文件夹,方便后续下载更大的训练数据集的数据集添加,官方建议的文件存储层次结构如下:
~/nuplan ├── exp │ └── ${USER} │ ├── cache │ │ └── <cached_tokens> │ └── exp │ └── my_nuplan_experiment └── dataset ├── maps │ ├── nuplan-maps-v1.0.json │ ├── sg-one-north │ │ └── 9.17.1964 │ │ └── map.gpkg │ ├── us-ma-boston │ │ └── 9.12.1817 │ │ └── map.gpkg │ ├── us-nv-las-vegas-strip │ │ └── 9.15.1915 │ │ └── map.gpkg │ └── us-pa-pittsburgh-hazelwood │ └── 9.17.1937 │ └── map.gpkg └── nuplan-v1.1 ├── mini │ ├── 2021.05.12.22.00.38_veh-35_01008_01518.db │ ├── 2021.06.09.17.23.18_veh-38_00773_01140.db │ ├── ... │ └── 2021.10.11.08.31.07_veh-50_01750_01948.db └── trainval ├── 2021.05.12.22.00.38_veh-35_01008_01518.db ├── 2021.06.09.17.23.18_veh-38_00773_01140.db ├── ... └── 2021.10.11.08.31.07_veh-50_01750_01948.db
如果仅仅进行试用或者学习,我们不必下载trainval数据集,只需要下载maps和mini数据集。因此,在官方推荐文件层次结构的基础上可以进行相应简化,按如下格式存放下载好的maps和mini数据集即可:
~/nuplan ├── dataset ├── maps │ ├── nuplan-maps-v1.0.json │ ├── sg-one-north │ │ └── 9.17.1964 │ │ └── map.gpkg │ ├── us-ma-boston │ │ └── 9.12.1817 │ │ └── map.gpkg │ ├── us-nv-las-vegas-strip │ │ └── 9.15.1915 │ │ └── map.gpkg │ └── us-pa-pittsburgh-hazelwood │ └── 9.17.1937 │ └── map.gpkg └── nuplan-v1.1 ├── mini ├── 2021.05.12.22.00.38_veh-35_01008_01518.db ├── 2021.06.09.17.23.18_veh-38_00773_01140.db ├── ... └── 2021.10.11.08.31.07_veh-50_01750_01948.db
3.2 环境变量配置
软件包环境变量配置
为了运行nuplan-devkit源码,首先需要添加该环境变量,在~/.bashrc文件中根据nuplan-devkit的实际路径写入如下内容:
# 打开并编辑.bashrc
sudo gedit ~/.bashrc
# 根据个人安装的路径将以下内容写入./bashrc中
export PYTHONPATH="${PYTHONPATH}:$HOME/nuplan-devkit"
数据库环境变量配置
数据库环境变量配置的目的是方便通过代码快速找到数据文件夹的位置,同样需在~/.bashrc中添加如下内容:
# 以下路径根据数据集文件夹以及地图文件夹的位置进行设置
export NUPLAN_DATA_ROOT="$HOME/nuplan/dataset/mini"
export NUPLAN_MAPS_ROOT="$HOME/nuplan/dataset/maps"
4. 小结
以上内容均为个人根据nuplan官方安装文档的说明进行实际操作的总结,期间遇到并解决了一些官方安装文档的bug。
以上内容如果存在问题,欢迎提出讨论。
5. 参考资料
nuPlan (nuscenes.org)
motional/nuplan-devkit: The devkit of the nuPlan dataset. (github.com)文章来源:https://www.toymoban.com/news/detail-543912.html
nuPlan — nuplan-devkit v0.1 documentation文章来源地址https://www.toymoban.com/news/detail-543912.html
到了这里,关于nuplan(面向自动驾驶规划的开源数据集)——ubuntu中的安装与配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!