STMicroelectronics - STM32AI model zoo

Logo

Welcome to the STM32 Model zoo dockerized Dashboard !
This space is dedicated to run STM32 model zoo from the dashboard using Dash Plotly. This zoo is a collection of reference machine learning models that are optimized to run on STM32 microcontrollers. Available on GitHub, this is a valuable resource for anyone looking to add AI capabilities to their STM32-based projects.



Introduction

The application provides a comprehensive dashboard interface for interacting with STM32 models and exploring their capabilities. It is developed using Flask and Dash, and is hosted on Hugging Face Spaces.
This dashboard simplifies the use of the STM32 AI Model Zoo, enabling you to start training these models on Hugging Face with ease.

User Guide

This application provides the necessary code to build a docker container that runs on Hugging Face Docker Space. This space hosts :

  • Dash application script: This application provides a dashboard developed with Dash Plotly to run use cases from the STM32-Model Zoo. You can Train, Evaluate and Benchmark models seamlessly.
  • Dockerfile: Sets up the desired environment and clones the repository from GitHub to ensure alignment with the latest updates. Model zoo is hosted here. You can find the licences information here.
  • Datasets: Downloads the dataset based on the use case. The user must provide the dataset link before building the docker image and launching the application. The table below summarizes the datasets handled by the script:

    Dataset License
    Flower Photos CC BY 2.0
    Plant Village CC0 1.0
    Food-101 -
    WISDM Activity Recognition CC BY 2.0
    Hand Posture SLA008
    ESC-50 -
  • Usage Scenarios

    Before starting please make sure you have created an account in ST Edge AI Developer Cloud
    To start using the features of this application follow these steps:

  • Go to the Start Application section: Duplicate this space to launch it on your Hugging Face space. This will automatically build the image and launch the container on your space.
  • If you'd like to use one of these models, please follow these instructions:
    • Object Detection: Please follow this link to perform dataset preparation.

    • Semantic Segmentation: Please follow this link to get the dataset.

    • Pose Estimation: Please follow this link to get the dataset.
  • Setup and launch your application: To launch one of the other use cases, first check the download_datasets.py script and make sure you have the link corresponding to your dataset to download. We provided links the script for datasets mentioned in the previous table.
    These datasets are downloaded automatically and do not require a data preparation phase as mentioned for Object Detection, Pose Segmentation, and Semantic Segmentation use cases.

  • How to use the dashboard ?
    1. Select the use case from the drop-down list.

    2. A corresponding YAML configuration file will open, and you'll need to configure it to launch a training session.
      If you're using a use case with one of the datasets handled by the download_datasets.py script, go to the Dataset section in the YAML file and configure the path to your data accordingly : ../datasets/your_use_case/name_of_dataset

      For example, if you selected Image classification use case with flowers dataset the path should be this way: ../datasets/image_classification/flowers_photo

      For the other use cases that need data preparation, we recommend you place your dataset in the datasets folder and set your path accordingly: datasets/name_of_your_dataset

    3. Submit your modifications and insert your ST Edge AI Developer cloud to benefit from the whole experience.
      Your training session will start, allowing you to visualize output logs and metrics plots. Finally, you can download your experiment outputs.

    If you need to explore, evaluate, and benchmark pre-trained models, you can use stm32ai-modelzoo


    Note:
  • Deployment on edge is not supported.
  • If you need to reproduce the same experience provided in the model zoo, please refer to stm32ai-modelzoo
  • If you want to discover different services offered by the model zoo, please refer to stm32ai-modelzoo-services
  • If you need to use your own model, please add it to the models folder, rebuild the Docker image, and then update the model path in the user configuration YAML file.
  • Start Application

    Once the space has been duplicated from the home page, you need to update the script donwnlod_datasets.py script that will allow you to download and unarchive the dataset corresponding to your use case.

    Duplicate this Space

    > To start using this application, duplicate this space to your own Hugging Face account.

    Duplicate this Space