В моей предыдущей статье о Waymo Open Dataset рассказывалось, как настраивать и извлекать изображения с камер и соответствующие метки. Эта статья является продолжением, в котором рассказывается, как извлекать и визуализировать данные LiDAR. Однако, поскольку предыдущая кодовая база претерпела небольшие изменения, я снова переадресую настройку среды перед извлечением данных. Вы можете считать эту статью обновленной документацией для текущей версии кода.

Предварительные требования

Вам необходим доступ к хранилищу Waymo Open Dataset Storage Bucket, размещенному на их облачной платформе Google. Это понадобится вам для загрузки независимых файлов.

  1. Войдите в систему, используя свои учетные данные Google здесь, и вы получите электронное письмо о том, что теперь у вас есть доступ к набору данных, который включает корзину Google Cloud Storage, размещенную здесь.
  2. Теперь давайте настроим среду - приступим к созданию виртуальной среды для вашего проекта с помощью Python. Не забудьте также установить python3-dev, python3-pip и virtualenv.
  3. Установите gsutil и настройте утилиту со своей учетной записью Google. Для идентификатора проекта создайте бесплатный проект в GCP, чтобы связать этот идентификатор.
  4. Клонируйте репозиторий WaymoDataToolkit.
  5. pip install waymo-open-dataset-tf-2–1–0
  6. pip install -r requirements.txt должен установить оставшиеся необходимые библиотеки.

Извлечение данных камеры и LiDAR

Репозиторий включает extract.py, который предоставляет вам абстракцию для извлечения и извлечения данных камеры и дальности.

Первым шагом является инициализация WaymoDataToolkit с URL-адресом, и следующее выполнит свою работу:

dataset = WaymoDataToolkit.WaymoDataToolkit(url)

Инструментарий может получить файл, вызвав следующую функцию для созданного объекта:

dataset.dataRetriever()

Полученный файл теперь необходимо извлечь в изображения и метки, задав с помощью переменных, определенных ранее:

dataset.dataExtractor()

По умолчанию набор инструментов предполагает, что в корне проекта присутствует следующий каталог:

данные / камера / изображения, данные / камера / метки и данные / диапазон

Изображения сохраняются в формате PNG, а соответствующие метки сохраняются в текстовом формате. Данные LiDAR преобразуются в облако точек из необработанных данных с использованием их служебной функции и сохраняются в виде необработанного списка байтов массивов NumPy, состоящего из 5 облаков точек.

Визуализируйте данные камеры и LiDAR

Репозиторий включает visualize.py, который предоставляет вам пример кода, который визуализирует данные камеры и дальности. Инструментарий использует OpenCV для изображений и Open3D для данных облака точек.

Что дальше?

Этот инструментарий призван дать исследователям возможность исследовать данные Waymo в своих экспериментах и ​​быстро загрузить данные Waymo в существующие алгоритмы. Надеюсь, я найду время поработать над созданием алгоритмов машинного обучения на основе этих аннотированных данных.