mindspore/docs/api/api_python/dataset/mindspore.dataset.Argoverse...

73 lines
4.2 KiB
ReStructuredText
Raw Normal View History

2022-07-16 10:58:06 +08:00
mindspore.dataset.ArgoverseDataset
2022-08-30 16:34:32 +08:00
====================================
2022-07-16 10:58:06 +08:00
.. py:class:: mindspore.dataset.ArgoverseDataset(data_dir, column_names="graph", num_parallel_workers=1, shuffle=None, python_multiprocessing=True, perf_mode=True)
2022-07-16 10:58:06 +08:00
加载argoverse数据集并进行图Graph初始化。
Argoverse数据集是自动驾驶领域的公共数据集当前实现的 `ArgoverseDataset` 主要用于加载argoverse数据集中运动预测Motion Forecasting场景的数据集具体信息可访问官网了解
2022-09-14 15:17:50 +08:00
https://www.argoverse.org/av1.html#download-link。
2022-07-16 10:58:06 +08:00
参数:
- **data_dir** (str) - 加载数据集的目录,这里包含原始格式的数据,并将在 `process` 方法中被加载。
2022-11-02 11:17:18 +08:00
- **column_names** (Union[str, list[str]],可选) - dataset包含的单个列名或多个列名组成的列表。默认值'Graph'。当实现类似 `__getitem__` 等方法时,列名的数量应该等于该方法中返回数据的条数,如下述示例,建议初始化时明确它的取值如:`column_names=["edge_index", "x", "y", "cluster", "valid_len", "time_step_len"]`
- **num_parallel_workers** (int, 可选) - 指定读取数据的工作进程数/线程数(由参数 `python_multiprocessing` 决定当前为多进程模式或多线程模式。默认值1。
2022-07-16 10:58:06 +08:00
- **shuffle** (bool可选) - 是否混洗数据集。当实现的Dataset带有可随机访问属性 `__getitem__` 才可以指定该参数。默认值None。
2022-11-02 11:17:18 +08:00
- **python_multiprocessing** (bool可选) - 启用Python多进程模式加速运算。默认值True。当传入 `source` 的Python对象的计算量很大时开启此选项可能会有较好效果。
2022-07-16 10:58:06 +08:00
- **perf_mode** (bool可选) - 遍历创建的dataset对象时获得更高性能的模式在此过程中将调用 `__getitem__` 方法。默认值True将Graph的所有数据如边的索引、节点特征和图的特征都作为图特征进行存储。
异常:
- **TypeError** - 如果 `data_dir` 不是str类型。
- **TypeError** - 如果 `num_parallel_workers` 不是int类型。
- **TypeError** - 如果 `shuffle` 不是bool类型。
- **TypeError** - 如果 `python_multiprocessing` 不是bool类型。
- **TypeError** - 如果 `perf_mode` 不是bool类型。
- **RuntimeError** - 如果 `data_dir` 无效或不存在。
- **ValueError** - `num_parallel_workers` 参数超过系统最大线程数。
**关于Argoverse数据集**
Argoverse是第一个包含高精地图的数据集它包含了290KM的带有几何形状和语义信息的高精度地图数据。
可以将数据集文件解压缩到以下结构中并通过MindSpore的API读取
.. code-block::
.
└── argoversedataset_dir
├── train
│ ├──...
├── val
│ └──...
├── test
│ └──...
**引用:**
.. code-block::
@inproceedings{Argoverse,
author = {Ming-Fang Chang and John W Lambert and Patsorn Sangkloy and Jagjeet Singh
and Slawomir Bak and Andrew Hartnett and De Wang and Peter Carr
and Simon Lucey and Deva Ramanan and James Hays},
title = {Argoverse: 3D Tracking and Forecasting with Rich Maps},
booktitle = {Conference on Computer Vision and Pattern Recognition (CVPR)},
year = {2019}
}
2022-07-16 10:58:06 +08:00
2022-07-21 10:55:35 +08:00
.. py:method:: load()
从给定处理好的路径加载数据也可以在自己实现的Dataset类中实现这个方法。
.. py:method:: process()
针对argoverse数据集的处理方法基于加载上来的原始数据集创建很多子图。
数据预处理方法主要参考https://github.com/xk-huang/yet-another-vectornet/blob/master/dataset.py。
.. py:method:: save()
将经过 `process` 函数处理后的数据以 numpy.npz 格式保存到磁盘中也可以在自己实现的Dataset类中自己实现这个方法。
2022-09-15 20:28:21 +08:00
.. include:: mindspore.dataset.api_list_vision.rst