Preliminaries

During Week 12 of my GSoC journey, my work revolved around developing an end-to-end visual control exercise drive from the Follow-Line exercise, improving user documentation for digit classification and human detection exercises, and addressing technical issues related to GPU support in the development environment and fixing them.

Objectives

  • Develop an End-to-End Visual Control Exercise.
  • Update the user documentation for the human detection and digit classification exercise.
  • Debug and fix issues in dev mode with GPU Nvidia support.
  • Begin preparing user documentation files for the End-to-End Visual Control exercise

Execution

Develop an End-to-End Visual Control Exercise

I developed a new End-to-End Visual Control exercise, adapted from the Follow-Line exercise. This version introduces four distinct circuits, providing diverse environments to test and evaluate models. The exercise framework is built with scalability in mind, ensuring that additional universes can be seamlessly integrated in the future. The current circuits include:

  1. Simple Circuit
  2. Montreal Circuit
  3. Montmelo Circuit
  4. Nürburgring Circuit
week-12-img-1 end-to-end visual control exercise

Update the user documentation for the human detection and digit classification exercise

Following the beta testing of the Digit Classifier and Human Detection exercises, we identified the need to update the user documentation by transitioning from prototype mode to running mode. To implement this improvement, I created GitHub issues and submitted pull requests for both exercises. This update is intended to streamline the onboarding process and reduce potential challenges for new users.

Issues:

Pull Requests:

Debug and fix issues in dev mode GPU support (dev_humble_nvidia.yml)

While enabling NVIDIA GPU support in development mode, I discovered a bug in the dev_humble_nvidia.yml file. The configuration was not compatible and failed to enable GPU acceleration. I raised the issue, identified the root cause, and submitted a pull request with a fix to restore proper GPU functionality for developers.

week-12-img-2

The first step in addressing the issue was to remove runtime: nvidia from the dev_humble_nvidia.yaml file.

This temporary fix allowed the program to run without errors. However, it does not connect to the robotics-database docker image and fails to enable the Nvidia GPU, defaulting to CPU usage instead.

dded GPU support by mounting "/dev/dri:/dev/dri" and linked the system with the robotics-database in the dev_humble_nvidia.yaml file. The solution now runs smoothly with full Nvidia GPU utilization.

The issue:
The pull request:

Begin preparing user documentation files for the End-to-End Visual Control exercise

I started preparing the user documentation files for the newly developed End-to-End Visual Control exercise. This documentation will provide users with comprehensive guidance on how to effectively utilize the exercise and its features.

The documentation will include detailed instructions, examples, and explanations of the exercise's components. It will be structured to ensure that users can easily understand and navigate through the exercise, enabling them to leverage its capabilities for their projects.

The documentation will cover the following aspects:

  • Overview of the End-to-End Visual Control exercise
  • Installation and setup instructions
  • Usage guidelines and examples
  • Video Tutorials for visual

The goal is to create a user-friendly documentation that will help users effectively utilize the End-to-End Visual Control exercise and enhance their experience with the Robotics Academy.

References

[1] Follow-Line

[2] Digit Classifier

[3] Human Detection

[4]user documentation