The purpose of this project is to generate synthetic LiDAR depth image for machine learning training with sycl for the purpose of compibility and performence which doesn't require specified vendor hardware
This project depends on:
- tinyobjloader - for processing
.obj
mesh files (included as a submodule) - SYCL OneAPI Environment - Required for compilation and execution
The tinyobjloader is automatically configured in the following script
# make the script excutable
chomd +x setUp.sh
# runing the script
./setUp.sh
# Clone the repository
git clone --recursive <repository_url>
# If you already cloned but forgot to initialize submodules, run:
git submodule update --init --recursive
Follow the official installation guide for SYCL OneAPI on NVIDIA GPUs provided by Codeplay: Get Started Guide - Codeplay
Alternatively, follow these steps:
# Download and install Codeplay’s OneAPI package
wget https://developer.codeplay.com/download/oneapi/nvidia/2025.0.0/linux/codeplay-oneapi-2025.0.0.tar.gz
# Extract the package
tar -xvzf codeplay-oneapi-2025.0.0.tar.gz
# Move to installation directory (optional)
sudo mv codeplay-oneapi-2025.0.0 /opt/oneapi
# Source the environment setup script
source /opt/oneapi/setvars.sh
Navigate to the syclImplementation
directory:
# Change to the directory containing the executable build scripts
cd syclImplementation
Execute the configure.sh
script to set up the environment:
# Ensure the script is executable
chmod +x configure.sh
# Run the environment setup script
./configure.sh
Run the build.sh
script to compile the simulation executable:
# Ensure the build script is executable
chmod +x build.sh
# Execute the build script to compile the project
./build.sh
Navigate back to the root directory of the project:
cd ..
Create a Python virtual environment using requirements.txt
or Conda:
# Using virtualenv
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
# Alternatively, using Conda
conda create --name myenv --file requirements.txt
conda activate myenv
Run the script to generate the dataset:
chmod +x TestGenerator.sh # Ensure the script is executable
./TestGenerator.sh # Execute the script
In TestGenerator.sh
, users can adjust:
- The number of depth images to generate
- The folder name and file name of the generated dataset
The generated dataset is located in the folder specified in TestGenerator.sh
. The dataset consists of three subfolders:
- Incoming Photo Information
- Histogram Information for Depth Image
- Depth Image Itself
- Ensure your GPU supports SYCL OneAPI
- Check the installation paths if the environment setup script is not found
- If compilation fails, verify that all dependencies are correctly installed