A new AI firmware function pack and camera-module hardware bundle from STMicroelectronics enable embedded developers to build affordable and powerful computer-vision applications running locally, at the Edge, on STM32 microcontrollers (MCUs).
The STM32Cube function pack, FP-AI-VISION1, contains several code examples demonstrating complete computer-vision applications running a convolutional neural network (CNN) on STM32H747 and easily portable on all STM32 MCUs. The firmware proposes several application examples but lets developers retrain the neural networks with their own choice of data sets, giving freedom and flexibility to address a wide variety of use cases.
New features include support for USB VC camera (webcam mode), which allows simple image acquisition, and code examples for food classification and human-presence detection to create a convenient visual “wakeword” for reactivating a system from power-save mode. An article is available in the STM32 wiki that shows how to use the Teachable Machine online tool with STM32Cube.AI and the FP-AI-VISION1 function pack to create an image classification application.
The B-CAMS-OMV camera bundle is optimized for use with FP-AI-VISION1 and provides the hardware required for training and deployment. The bundle contains ST’s MB1379 5-Mpixel OV5640 color camera module fitted to an adapter card compatible with all STM32 Discovery and Evaluation boards with a ZIF connector. The adapter card can also be used with the ST VG5661 automotive grayscale global-shutter camera. In addition, Waveshare and OpenMV connectors let users attach various third-party infrared and visible-spectrum cameras to address a wider range of computer-vision applications An STM32 wiki article is available that shows how to integrate code generated using STM32Cube.AI in the OpenMV ecosystem.
Included in FP-AI-VISION1 are various frame-buffer processing functions, camera drivers, and software for image capture, pre-processing, and neural-network inference. Several neural-network models are available, including a floating-point based model and a quantized model generated by X-CUBE-AI, ST’s optimized C-code generator for artificial neural networks. Support for flexible memory configurations allows fine-tuning the model for the intended application.