В моей предыдущей статье о Waymo Open Dataset рассказывалось, как настраивать и извлекать изображения с камер и соответствующие метки. Эта статья является продолжением, в котором рассказывается, как извлекать и визуализировать данные LiDAR. Однако, поскольку предыдущая кодовая база претерпела небольшие изменения, я снова переадресую настройку среды перед извлечением данных. Вы можете считать эту статью обновленной документацией для текущей версии кода.
Предварительные требования
Вам необходим доступ к хранилищу Waymo Open Dataset Storage Bucket, размещенному на их облачной платформе Google. Это понадобится вам для загрузки независимых файлов.
- Войдите в систему, используя свои учетные данные Google здесь, и вы получите электронное письмо о том, что теперь у вас есть доступ к набору данных, который включает корзину Google Cloud Storage, размещенную здесь.
- Теперь давайте настроим среду - приступим к созданию виртуальной среды для вашего проекта с помощью Python. Не забудьте также установить python3-dev, python3-pip и virtualenv.
- Установите gsutil и настройте утилиту со своей учетной записью Google. Для идентификатора проекта создайте бесплатный проект в GCP, чтобы связать этот идентификатор.
- Клонируйте репозиторий WaymoDataToolkit.
- pip install waymo-open-dataset-tf-2–1–0
- 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 в существующие алгоритмы. Надеюсь, я найду время поработать над созданием алгоритмов машинного обучения на основе этих аннотированных данных.