DOI: 10.5281/zenodo.18614817
title: A smart container for real-time load occupancy estimation using embedded neural inference (dataset)

description: General Overview

This repository contains the dataset collected for the research article "A smart container for real-time load occupancy estimation using embedded neural inference". The project aims to improve urban logistics by enabling real-time volume estimation in cargo bikes and smart containers using low-cost Time-of-Flight (ToF) sensors and Artificial Neural Networks (ANN).

The dataset consists of distance matrices captured by two 8x8 multizone ToF sensors (VL53L7CX) placed on the top lid of a cargo container prototype. These sensors generate a depth map of the load inside the container, which is used to train and validate machine learning models capable of estimating the occupied volume with high accuracy.

Data Structure

The repository is organized into one main dataset of real-world recordings and two complementary synthetic datasets.

1. Main Dataset (VolumeDataset.csv) Contains 151,200 samples of real sensor data. Each line of the CSV file includes:





a00 - a77: Distance measurements (8x8 matrix) from Sensor A (Left). Values represent the distance in millimeters.




b00 - b77: Distance measurements (8x8 matrix) from Sensor B (Right). Values represent the distance in millimeters.




case: Identifier for the specific load configuration (integer).




vol1 - vol6: Partial volume measurements for specific sections (ground truth).




volTotal: Total volume occupied by the load in liters (dm³).




FreeSpace: Percentage of empty space remaining (normalized 0.0 to 1.0).



2. Synthetic Datasets Two additional CSV files are provided to assess the initial behavior of models trained with synthetic data before deployment on real irregular data:





Synthetic_Volume_Data_Cubic_Boxes.csv: Simulated data using cubic cargo.




Synthetic_Volume_Data_Complete_Irregular_Cargo.csv: Simulated data including irregular cargo shapes.



Experimental Setup and Data Collection

The data was collected using a custom-built smart container prototype designed to simulate a logistics delivery box.





Container Dimensions: 970 mm (length) x 405 mm (width) x 464 mm (height).




Sensors: Two STMicroelectronics VL53L7CX Time-of-Flight sensors positioned on the container's ceiling to minimize occlusions.




Sensor Resolution: Each sensor provides an 8x8 resolution depth map (64 zones), resulting in a total of 128 distance features per sample.




Load Objects: The dataset includes various loading scenarios using standard cubic boxes and irregular shapes to simulate real-world delivery conditions.



File Information and Sampling Details





File Name: VolumeDataset.csv




Format: Comma-Separated Values (CSV).




Size: 151,200 rows.




Date of Collection: 2024-2025.




Sampling Methodology: The dataset covers a comprehensive range of loading scenarios involving 6 distinct cargo boxes. These were arranged in 63 different load combinations and placed across 60 different and random spatial positions within the container. For each unique configuration, 40 consecutive samples were recorded to ensure data robustness and capture sensor noise variations (Total: 63 combinations x 60 positions x 40 samples = 151,200 rows).



Usage Notes for Synthetic Data

Important: If using the synthetic datasets (Synthetic_*.csv) in conjunction with the real VolumeDataset.csv, a geometric transformation must be applied to the sensor columns (a00-a77 and b00-b77) to align the coordinate systems.

Due to the orientation of the virtual sensors in the simulation environment, the 8x8 matrices in the synthetic files are rotated relative to the physical prototype. To match the real data format, the synthetic matrices require a sequence of transposition and vertical flipping operations (remapping indices such that the rows and columns align with the physical sensor mounting). Without this alignment, the spatial features will not correspond to the real-world ground truth.

Example:





To get the value for a00 (row 0, col 0) in the target format, read a70 (row 7, col 0) from the synthetic file.




To get the value for a07 (row 0, col 7), read a00 from the synthetic file.



Usage

This dataset is suitable for:





Training regression models (e.g., ANNs, Random Forests) to estimate load volume based on sparse depth data.




Developing algorithms for sensor fusion (combining Sensor A and Sensor B).




Benchmarking lightweight neural networks for embedded devices (Edge AI).