Skip to content

Commit f501e52

Browse files
vinceabYHASTM
authored andcommitted
First release AI-ModelZoo-1.0.0
Signed-off-by: yhaddou <[email protected]>
1 parent d1c9be9 commit f501e52

File tree

1,749 files changed

+1198483
-2
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,749 files changed

+1198483
-2
lines changed

CODE_OF_CONDUCT.md

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
# Contributor Covenant Code of Conduct
2+
3+
## Our Pledge
4+
5+
In the interest of fostering an open and welcoming environment, we as
6+
contributors and maintainers pledge to making participation in our project and
7+
our community a harassment-free experience for everyone, regardless of age, body
8+
size, disability, ethnicity, sex characteristics, gender identity and expression,
9+
level of experience, education, socio-economic status, nationality, personal
10+
appearance, race, religion, or sexual identity and orientation.
11+
12+
## Our Standards
13+
14+
Examples of behavior that contributes to creating a positive environment
15+
include:
16+
17+
* Using welcoming and inclusive language
18+
* Being respectful of differing viewpoints and experiences
19+
* Gracefully accepting constructive criticism
20+
* Focusing on what is best for the community
21+
* Showing empathy towards other community members
22+
23+
Examples of unacceptable behavior by participants include:
24+
25+
* The use of sexualized language or imagery and unwelcome sexual attention or
26+
advances
27+
* Trolling, insulting/derogatory comments, and personal or political attacks
28+
* Public or private harassment
29+
* Publishing others' private information, such as a physical or electronic
30+
address, without explicit permission
31+
* Other conduct which could reasonably be considered inappropriate in a
32+
professional setting
33+
34+
## Our Responsibilities
35+
36+
Project maintainers are responsible for clarifying the standards of acceptable
37+
behavior and are expected to take appropriate and fair corrective action in
38+
response to any instances of unacceptable behavior.
39+
40+
Project maintainers have the right and responsibility to remove, edit, or
41+
reject comments, commits, code, wiki edits, issues, and other contributions
42+
that are not aligned to this Code of Conduct, or to ban temporarily or
43+
permanently any contributor for other behaviors that they deem inappropriate,
44+
threatening, offensive, or harmful.
45+
46+
## Scope
47+
48+
This Code of Conduct applies both within project spaces and in public spaces
49+
when an individual is representing the project or its community. Examples of
50+
representing a project or community include using an official project e-mail
51+
address, posting via an official social media account, or acting as an appointed
52+
representative at an online or offline event. Representation of a project may be
53+
further defined and clarified by project maintainers.
54+
55+
## Enforcement
56+
57+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
58+
reported by contacting the project team via this [link](https://www.st.com/content/st_com/en/contact-us.html).
59+
All complaints will be reviewed and investigated and will result in a response that
60+
is deemed necessary and appropriate to the circumstances. The project team is
61+
obligated to maintain confidentiality with regard to the reporter of an incident.
62+
Further details of specific enforcement policies may be posted separately.
63+
64+
Project maintainers who do not follow or enforce the Code of Conduct in good
65+
faith may face temporary or permanent repercussions as determined by other
66+
members of the project's leadership.
67+
68+
## Attribution
69+
70+
This Code of Conduct is adapted from the [Contributor Covenant](https://www.contributor-covenant.org), version 1.4,
71+
available [here](https://www.contributor-covenant.org/version/1/4/code-of-conduct.html).
72+
73+
For answers to common questions about this code of conduct, refer to the FAQ section [here](https://www.contributor-covenant.org/faq).

CONTRIBUTING.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# Contributing guide
2+
3+
This document serves as a checklist before contributing to this repository.
4+
It includes links to read up on if topics are unclear to you.
5+
6+
This guide mainly focuses on the proper use of Git.
7+
8+
## 1. Issues
9+
10+
__Before opening an issue__
11+
12+
Please check the following boxes before posting an issue:
13+
- [ ] `Make sure you are using the latest commit (major releases are tagged, but corrections are available as new commits).`
14+
- [ ] `Make sure your issue is a question/feedback/suggestions **related to** the software provided in this repository.`
15+
- [ ] `Make sure your issue is not already reported/fixed on GitHub or discussed on a previous issue.` Do not forget to browse into the **closed** issues.
16+
17+
__Posting the issue__
18+
19+
When you have checked the previous boxes, create a new issue from the **Issues** tab of this repository.
20+
21+
## 2. Pull Requests
22+
23+
The pull-requests are not supported to submit problems or suggestions related to the software delivered in this repository.
24+
25+
For any question related to the product, the hardware performance or characteristics, the tools, the environment, you can submit it to the ST Community on the STM32 MCUs related page.

LICENSE.md

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# License
2+
3+
Concerning audio_event_detection:
4+
| Component | License | Copyright |
5+
|:--------- |:------- |:----------|
6+
| scripts | [SLA0044](./audio_event_detection/LICENSE.md) | STMicroelectronics |
7+
| yamnet model | [Apache-2.0](./audio_event_detection/scripts/utils/models/yamnet/LICENSE) | Google LLC |
8+
9+
10+
Concerning common:
11+
| Component | License | Copyright |
12+
|:--------- |:------- |:----------|
13+
| common | [SLA0044](./common/LICENSE.md) | STMicroelectronics |
14+
15+
16+
Concerning human_activity_recognition:
17+
| Component | License | Copyright |
18+
|:--------- |:------- |:----------|
19+
| scripts | [SLA0044](./human_activity_recognition/LICENSE.md) | STMicroelectronics |
20+
21+
Concerning human_activity_recognition getting started:
22+
| Component | License | Copyright |
23+
|:--------- |:------- |:-------------|
24+
| FreeRTOS | [MIT](./human_activity_recognition/getting_started/Middlewares/Third_Party/FreeRTOS/Source/LICENSE) | Amazon.com, Inc. or its affiliates |
25+
| Cortex-M CMSIS | [Apache-2.0](./human_activity_recognition/getting_started/Drivers/CMSIS/LICENSE.txt) | ARM Limited |
26+
| STM32L4xxxx CMSIS | [Apache-2.0](./human_activity_recognition/getting_started/Drivers/CMSIS/Device/ST/STM32L4xx/LICENSE.md) | ARM Limited - STMicroelectronics |
27+
| STM32L4xx HAL | [BSD-3-Clause](./human_activity_recognition/getting_started/Drivers/STM32L4xx_HAL_Driver/LICENSE.md) | STMicroelectronics |
28+
| BSP iis3dwb | [BSD-3-Clause](./human_activity_recognition/getting_started/Drivers/BSP/Components/iis3dwb/LICENSE.md) | STMicroelectronics |
29+
| BSP ism330dhcx | [BSD-3-Clause](./human_activity_recognition/getting_started/Drivers/BSP/Components/ism330dhcx/LICENSE.md) | STMicroelectronics |
30+
| eLooM application framework | [SLA0044](./human_activity_recognition/getting_started/Middlewares/ST/eLooM/LICENSE.md) | STMicroelectronics |
31+
| Application example | [SLA0044](./human_activity_recognition/getting_started/Projects/STM32L4R9ZI-STWIN/Applications/GetStart/LICENSE.md) | STMicroelectronics |
32+
| Sensor Manager | [SLA0044](./human_activity_recognition/getting_started/Projects/STM32L4R9ZI-STWIN/Applications/GetStart/LICENSE.md) | STMicroelectronics |
33+
| Signal processing library | [SLA0044](./human_activity_recognition/getting_started/Projects/STM32L4R9ZI-STWIN/Applications/GetStart/signal_processing_lib/LICENSE.md) | STMicroelectronics |
34+
| Digital processing unit (DPU) | [SLA0044](./human_activity_recognition/getting_started/Projects/STM32L4R9ZI-STWIN/Applications/GetStart/DPU/LICENSE.md) | STMicroelectronics |
35+
36+
Concerning object_detection:
37+
| Component | License | Copyright |
38+
|:--------- |:------- |:----------|
39+
| scripts | [SLA0044](./object_detection/LICENSE.md) | STMicroelectronics |
40+
| scripts utils object_det_metrics | [MIT](./object_detection/scripts/utils/object_det_metrics/LICENSE) | Copyright (c) 2018 Rafael Padilla |
41+
42+
43+
Concerning image_classification:
44+
| Component | License | Copyright |
45+
|:--------- |:------- |:----------|
46+
| scripts | [SLA0044](./image_classification/LICENSE.md) | STMicroelectronics |
47+
| models mobinenetv1 public_pretrainedmodel_public_dataset imagenet | [Apache License 2.0](./image_classification/models/mobilenetv1/Public_pretrainedmodel_public_dataset/ImageNet/License.md) | Copyright 2022 Google LLC. All rights reserved. |
48+
| models mobinenetv1 public_pretrainedmodel_public_dataset VisualWakeWord | [Apache License 2.0](./image_classification/models/mobilenetv1/Public_pretrainedmodel_public_dataset/VisualWakeWord/License.md) | Copyright 2022 Google LLC. All rights reserved. |
49+
| models mobinenetv2 public_pretrainedmodel_public_dataset imagenet | [Apache License 2.0](./image_classification/models/mobilenetv2/Public_pretrainedmodel_public_dataset/ImageNet/License.md) | MLCOMMONS ASSOCIATION |
50+
51+
Concerning image_classification getting started:
52+
| Component | License | Copyright |
53+
|:--------- |:------- |:----------|
54+
| CMSIS | [Apache License 2.0](./image_classification/getting_started/Drivers/CMSIS/LICENSE.md) | STMicroelectronics - Copyright (c) 2009-2017 ARM Limited. All rights reserved. |
55+
| STM32H7xx_HAL_Driver | [BSD-3-Clause](./image_classification/getting_started/Drivers/STM32H7xx_HAL_Driver/License.md) | STMicroelectronics |
56+
| BSP STM32H747I-Discovery | [BSD-3-Clause](./image_classification/getting_started/Drivers/BSP/STM32H747I-Discovery/License.md) | STMicroelectronics |
57+
| BSP Components | [BSD-3-Clause](./image_classification/getting_started/Drivers/BSP/Components/License.md) | STMicroelectronics |
58+
| STM32_AI_Runtime | [SLA0044](./image_classification/getting_started/Middlewares/ST/STM32_AI_Runtime/LICENSE.md) | STMicroelectronics |
59+
| STM32_ImageProcessing_Library | [SLA0044](./image_classification/getting_started/Middlewares/ST/STM32_ImageProcessing_Library/LICENSE.md) | STMicroelectronics |
60+
| Application | [SLA0044](./image_classification/getting_started/Application/LICENSE.md) | STMicroelectronics |
61+
| Utilities | [BSD-3-Clause](./image_classification/getting_started/Utilities/License.md) | STMicroelectronics |
62+

README.md

Lines changed: 53 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,53 @@
1-
# stm32ai-modelzoo
2-
AI Model Zoo for STM32 devices
1+
# STMicroelectronics – STM32 Model Zoo
2+
3+
Welcome to STM32 Model Zoo!
4+
5+
This project provides a collection of pre-trained models that you can easily pass through STM32Cube.AI and deploy on your STM32 board.
6+
7+
These models can be useful for quick deployment if you are interested in the categories that they were trained. We also provide training scripts to do transfer learning or to train your own model from scratch on your custom dataset.
8+
9+
This project is organized by application, for each application you will have a step by step guide that will indicate how to train and deploy the models.
10+
11+
## Available Use-Cases
12+
13+
* [Image Classification](image_classification/README.md)
14+
* [Object Detection](object_detection/README.md)
15+
* [Human Activity Recognition (HAR)](human_activity_recognition/README.md)
16+
* [Audio Event Detection (AED)](audio_event_detection/README.md)
17+
18+
19+
## Before You Start
20+
21+
- Create an account on [ST Developer Cloud](https://stm32ai-cs.st.com/home) to be able to use the provided Developer Cloud Services of `STM32Cube.AI`.
22+
- Or, Download latest version of [STM32Cube.AI](https://www.st.com/en/embedded-software/x-cube-ai.html) for your OS, extract the package and get the path to `stm32ai` executable.
23+
- If you don't have python already installed, you can download the latest version and install it from [here](https://www.python.org/downloads/) (For Windows systems make sure to check the **Add python.exe to PATH** option during the installation process).
24+
- Clone this repository using the following command:
25+
```
26+
git clone https://github.com/STMicroelectronics/stm32ai-modelzoo.git
27+
```
28+
- Create a virtual environment for the project, you should have a **Python Version <= 3.10** to be able to use TensorFlow:
29+
```
30+
cd stm32ai-modelzoo
31+
python -m venv st_zoo
32+
```
33+
- Activate your virtual environment, on Windows run:
34+
```
35+
st_zoo\Scripts\activate.bat
36+
```
37+
On Unix or MacOS, run:
38+
```
39+
source st_zoo/bin/activate
40+
```
41+
- Install all the necessary python packages, the [requirement file](requirements.txt) contains it all.
42+
```
43+
pip install -r requirements.txt
44+
```
45+
46+
## Jump Start with Colab
47+
48+
In [utilities/notebooks](utilities/notebooks/README.md) you will find a Jupyter Notebook that can be easily deployed on Colab to exercise ST Model Zoo training scripts.
49+
50+
51+
**PS**: In this project, we are using **TensorFLow version 2.8.3** following unresolved issues with newest versions of TensorFlow, see [more](https://github.com/tensorflow/tensorflow/issues/56242).
52+
53+
**Warning** : In this project we are using the mlflow library to log the results of different runs. Depending on which version of Windows OS are you using or where you place the project the output log files might have a very long path which might result in an error at the time of logging the results. As by default, Windows uses a path length limitation (MAX_PATH) of 256 characters: Naming Files, Paths, and Namespaces. To avoid this potential error, create (or edit) a variable named `LongPathsEnabled` in **Registry Editor** under `Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem\` and assign it a value of `1`. This will change the maximum length allowed for the file length on Windows machines and will avoid any errors resulting due to this. For more details have a look at this [link](https://knowledge.autodesk.com/support/autocad/learn-explore/caas/sfdcarticles/sfdcarticles/The-Windows-10-default-path-length-limitation-MAX-PATH-is-256-characters.html).

SECURITY.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# Report potential product security vulnerabilities
2+
3+
ST places a high priority on security, and our Product Security Incident Response Team (PSIRT) is committed to rapidly addressing potential security vulnerabilities affecting our products. PSIRT's long history and vast experience in security allows ST to perform clear analyses and provide appropriate guidance on mitigations and solutions when applicable.
4+
5+
If you wish to report potential security vulnerabilities regarding our products, **please do not report them through public GitHub issues.** Instead, we encourage you to report them to our ST PSIRT following the process described at: **https://www.st.com/content/st_com/en/security/report-vulnerabilities.html**
6+
7+
8+
9+
### IMPORTANT - READ CAREFULLY:
10+
11+
STMicroelectronics International N.V., on behalf of itself, its affiliates and subsidiaries, (collectively “ST”) takes all potential security vulnerability reports or other related communications (“Report(s)”) seriously. In order to review Your Report (the terms “You” and “Yours” include your employer, and all affiliates, subsidiaries and related persons or entities) and take actions as deemed appropriate, ST requires that we have the rights and Your permission to do so.
12+
13+
As such, by submitting Your Report to ST, You agree that You have the right to do so, and You grant to ST the rights to use the Report for purposes related to security vulnerability analysis, testing, correction, patching, reporting and any other related purpose or function.
14+
15+
By submitting Your Report, You agree that ST’s [Privacy Policy](https://www.st.com/content/st_com/en/common/privacy-portal.html) applies to all related communications.

0 commit comments

Comments
 (0)