FP-AI-VISION1
Data brief
Artificial Intelligence (AI) and computer vision function pack for STM32Cube
(food recognition, person presence detection,
STM32_AI_Runtime
STM32_AI_Utilities STM32_USB
Middleware level
Drivers
Hardware components
Development boards
Applications
USB webcam)
STM32_Image
FatFSSTM32_Fs
HALBSP
STM32 LCDCamera
STM32H747I-DISCOB-CAMS-OMV
Product status link
FP-AI-VISION1
Features
• Complete firmware to develop a computer vision application on STM32
microcontroller
• Image pre-processing library (STM32_Image)
• Neural Network library optimized for STM32 (STM32_AI_Runtime) generated by
means of the X-CUBE-AI Expansion Package for STM32CubeMX
• Food recognition application based on Convolutional Neural Network
• Person presence detection application based on Convolutional Neural Network
• USB webcam application enabling the STM32H747I-DISCO board to act as a
USB video camera (UVC) device when connected to a host
• Integration examples based on float and quantized models
• Libraries enabling the test, debug and validation of the embedded application
• Support for camera frame capture to enable image dataset collection
• Sample implementations available for the STM32H747I-DISCO Discovery board
connected to the B-CAMS-OMV camera module bundle
• Free and user-friendly license terms
Description
FP-AI-VISION1 is an STM32Cube function pack featuring examples of computer
vision applications based on Convolutional Neural Network (CNN).
FP-AI-VISION1 is composed of software components generated by the X-CUBEAI Expansion Package complemented with application software components
dedicated to the AI-based computer vision application.
The application examples provided in the function pack are food recognition
(recognizing among 18 classes of common food), and person presence detection
(identifying whether a person is present in the image or not).
FP-AI-VISION1 implements advanced computer vision application using
STM32_AI_Runtime Neural Networks libraries. Libraries are based on pre-trained
models and are generated with the X-CUBE-AI Expansion Package for the
STM32CubeMX tool.
The function pack demonstrates the integration of two types of Neural Network
model: 32-bit floating-point model and 8-bit quantized model. It also demonstrates
model integration in different memory configurations (relying only on MCU internal
memory or using also external memories).
The FP-AI-VISION1 function pack features an image library, STM32_Image, that can
be used to develop specific computer vision applications, together with the suggested
combination of hardware boards. It includes various processing functions to process
the content of the frame buffer.
The FP-AI-VISION1 function pack also includes the drivers for the camera as well as
the framework for capturing images into the frame buffer, preprocessing the content
of the frame buffer, and running the Neural Network inference.
The FP-AI-VISION1 function pack features a USB webcam application, which can
be used to create image and video datasets as well as to perform live testing on
the host. The FP-AI-VISION1 runs on the STM32H747I-DISCO Discovery board
connected to the B-CAMS-OMV camera module bundle (advised) or STM32F4DISCAM camera daughterboard (legacy only).
DB3962 - Rev 4 - February 2021
For further information contact your local STMicroelectronics sales office.
www.st.com
1 General information
The FP-AI-VISION1 function pack runs on STM32 microcontrollers based on Arm® cores.
Note: Arm is a registered trademark of Arm Limited (or its subsidiaries) in the US and/or elsewhere.
1.1 Ordering information
FP-AI-VISION1 is available for free download from the www.st.com website.
1.2 What is STM32Cube?
STM32Cube is an STMicroelectronics original initiative to significantly improve designer's productivity by reducing
development effort, time, and cost. STM32Cube covers the whole STM32 portfolio.
STM32Cube includes:
• A set of user-friendly software development tools to cover project development from conception to
realization, among which are:
– STM32CubeMX, a graphical software configuration tool that allows the automatic generation of C
initialization code using graphical wizards
– STM32CubeIDE, an all-in-one development tool with peripheral configuration, code generation, code
compilation, and debug features
– STM32CubeProgrammer (STM32CubeProg), a programming tool available in graphical and command-
line versions
– STM32CubeMonitor (STM32CubeMonitor, STM32CubeMonPwr, STM32CubeMonRF,
STM32CubeMonUCPD) powerful monitoring tools to fine-tune the behavior and performance of STM32
applications in real-time
• STM32Cube MCU and MPU Packages, comprehensive embedded-software platforms specific to each
microcontroller and microprocessor series (such as STM32CubeH7 for the STM32H7 Series), which include:
– STM32Cube hardware abstraction layer (HAL), ensuring maximized portability across the STM32
portfolio
– STM32Cube low-layer APIs, ensuring the best performance and footprints with a high degree of user
control over hardware
– A consistent set of middleware components such as RTOS, USB, TCP/IP, FAT file system, audio, and
graphics
– All embedded software utilities with full sets of peripheral and applicative examples
• STM32Cube Expansion Packages, which contain embedded software components that complement the
functionalities of the STM32Cube MCU and MPU Packages with:
– Middleware extensions and applicative layers
– Examples running on some specific STMicroelectronics development boards
FP-AI-VISION1
General information
DB3962 - Rev 4
page 2/6