This repo is designed to generate custom Stixel training data based on different datasets. And is related to:
Toward Monocular Low-Weight Perception for Object Segmentation and Free Space Detection. IV 2024.
Marcel Vosshans, Omar Ait-Aider, Youcef Mezouar and Markus Enzweiler
University of Esslingen, UCA Sigma Clermont
[Xplore
]
This repo provides the basic toolset to generate a Stixel World from LiDAR. It is used as Ground Truth for
the StixelNExT 2D estimator as well as for the 3D approach: StixelNExT++.
- Clone the repo to your local machine
- Set up a virtual environment with
python -m venv venv
(we tested on Python 3.10) or Anaconda respectivelyconda create -n StixelGEN python=3.10
. Activate withsource venv/bin/activate
/conda activate StixelGEN
- Install requirements with
pip install -r requirements.txt
/conda install --file requirements.txt
- Configure the project: adapt your paths in the
config.yaml
-file and select the dataset with the import in/generate.py
like:
from dataloader import WaymoDataLoader as Dataset # or KittiDataLoader
After that you can test the functionalities with utility/explore.py
or run /generate.py
to generate Stixel Worlds.
The output is a .stx1
file which is a Protobuf for Stixel Worlds. It includes the Stixel as well as the image and is
ready to serve as input data for StixelNExT++. The corresponding library can be installed with pip install pyStixel-lib
and is public available here.
We also provide an already generated dataset, based on the public available KITTI dataset. It can be downloaded here (35.48 GB)
The repo is designed to work with adaptive dataloader, which can be handled by the import commands.
For your own usage its necessary to write a new Dataloader for what the dataloader/BaseLoader
and
dataloader/BaseData
can be used. Needed synchronised data/information are:
- The camera image
- LiDAR data
- Camera calibration data:
- Camera Matrix
- Projection Matrix
- Rectify Matrix
- Transformation Matrix
- Context information (image size, dataset name, ...)
- OPTIONAL: Stereo Images (right camera)
- OPTIONAL: LiDAR Calibration (in case of global T Matrices)
You can heavily increase the results with the parameters from libraries/pcl-config.yaml
.
Documentation for the functions are provided by the code. The los (line of sight) parameter can cause huge holes!
- explore: A simple workspace script to use and inspect the derived data, step by step.