Preliminaries

In Week 11, the focus shifted from active data collection,train models to organizing and finalizing previous work. In earlier weeks, I had gathered a variety of datasets from multiple circuits, trained deep learning models for the Follow-Line exercise, and developed supporting Jupyter notebooks for visualization, preprocessing, and training. By this point, the number of datasets, models, and experiments had grown significantly, making it necessary to clean up, organize, and secure all resources. Hugging Face was chosen as the platform for public dataset and model sharing to ensure accessibility and reproducibility. My personal GSoC blog repository was chosen for securely backing up the code and trained models.

Objectives

  • Clean and prepare datasets for sharing with students. .
  • Upload datasets to Hugging Face for public access.
  • Upload trained models to Hugging Face to allow others to directly use or test them.
  • Upload Exercise Scripts, Trained Models, and Jupyter Notebook Files for reference.

Execution

Uploading Datasets to Hugging Face

I went through all the data we would previously collected from the different circuits, reviewing each entry carefully to make sure everything was accurate and consistent. Corrupted, duplicate, or incomplete image corresponding label pairs were removed, and I standardized the folder structure so it would be easy for others to navigate. I also set up a clear file-naming convention and double-checked that all metadata files—like the CSVs linking images to their velocity commands such as linear velocity (v), angular velocity(w), were error-free and properly formatted.

Once everything was cleaned up, I split the data into dedicated training and testing sets to keep evaluations consistent. In the end, I prepared two finalized datasets for public release: one with the Montréal, Montmeló, and Nürburgring tracks for training and testing the Simple Circuit, and another combining all four circuits for training a more unified master model. Both cleaned datasets were uploaded to Hugging Face with clear documentation, making them ready for others to use in deep learning experiments.

Uploaded two cleaned datasets:
  • Dataset 1: Montréal, Montmeló, and Nürburgring circuits for train and Simple circuit for the Simple Circuit in the Follow-Line exercise.
  • Dataset 2: A combined dataset containing all four circuits, providing more variety for robust model training.
Hugging Face Links
  1. JdeRobot / Follow-Line-Combine-Dataset
  2. JdeRobot / Follow-Line-Simple-Circuit-Dataset

Model Upload to Hugging Face

Uploaded two trained models corresponding to the datasets above, so others can directly download and run the follow-line exercise.

Models Links

JdeRobot/Follow-Line-Imitation-DL-Models-V1

Jupyter Notebook Cleanup

I cleaned up the Jupyter notebooks used for visualization, preprocessing, and training, removing any unnecessary code and comments. I also added clear explanations and comments to make it easier for others to understand the code. The cleaned notebooks were then published on my personal gsoc blog repository, providing a reference for anyone interested in the follow-line exercise.

The notebooks cover the following topics:

  • Visualization: How to visualize the datasets and understand the data distribution.
  • Preprocessing: Steps to prepare the data for training, including image processing, resizing, and applying data normalization and augmentation techniques.
  • Training: How to train the deep learning models, including hyperparameter tuning and evaluation metrics.

You can find the cleaned Jupyter notebooks in my personal gsoc blog repository:

🔗 TheRoboticsClub/gsoc2025-Md_Shariar_Kabir/code

Along with that, I uploaded the follow-line exercise code with GPU acceleration support and four models, one model for each circuit, with a unified master model for the four circuits.

You can find the Follow-Line exercise code and models here:

🔗 TheRoboticsClub/gsoc2025-Md_Shariar_Kabir/follow_line_dl_models_codes

References

[1] Follow-Line exercise.

[2] JdeRobot / Follow-Line-Combine-Dataset

[3] JdeRobot / Follow-Line-Simple-Circuit-Dataset

[4] JdeRobot/Follow-Line-Imitation-DL-Models-V1

[5] TheRoboticsClub/gsoc2025-Md_Shariar_Kabir/

[6] TheRoboticsClub/gsoc2025-Md_Shariar_Kabir/follow_line_dl_models_codes