Utility companies are responsible for determining the price of water and managing the day-to-day delivery of clean drinking water. Historically, utility operations are tedious and require extensive measures by field personnel. Leveraging automatic meter reading can help utility companies to identify and repair leaks, resulting in the improved performance of the distribution networks. 

Approach

The goal is to automatically read the meter counter thanks to a camera and send the result through low power cellular connectivity. The camera is placed above the water meter. A first neural network detects the Region of Interest, where the digits are located. A second neural network recognizes the digits in a single pass. The recognized number is sent to a server through cellular connectivity LTE Cat M1 or NBIoT.
The demonstration runs on the B-L462E-CELL1 board with the LBAD0ZZ1SE module from Murata which embeds: 
- an STM32L462RE MCU with 512 KB Flash, 160KB RAM, 80 MHz
- an eSIM ST4SIM-200M 
- LTE CatM/NBIoT modem

Sensor

Vision: an Arducam mini 5MP plus camera board is connected to the STM32 through SPI 

Data

Data format
Water meter images with 8 digits
Grayscale image 

Results

Model: Convolutional Neural Network quantized to detect the Region of Interest
Input size: 240x240
Memory footprint:
148 KB Flash for weights
57 KBRAM for activations
Performance on STM32L462 (Low Power) @ 80 MHz
Inference time: 300 ms


Model: Fully Connected and temporal mapper Neural Network quantized to recognize the digits
Input size: 24x140
Memory footprint:
67 KB Flash for weights
66 KBRAM for activations
Performance on STM32L462 (Low Power) @ 80 MHz
Inference time: 900 ms for 8 digits
Optimized with
STM32Cube.AI
STM32Cube.AI
Compatible with
STM32L4 series
STM32L4 series

Resources

Optimized with STM32Cube.AI

A free STM32Cube expansion package, X-CUBE-AI allows developers to convert pretrained AI algorithms automatically, such as neural network and machine learning models, into optimized C code for STM32.

STM32Cube.AI STM32Cube.AI STM32Cube.AI

Compatible with STM32L4 series

The STM32 family of 32-bit microcontrollers based on the Arm Cortex®-M processor is designed to offer new degrees of freedom to MCU users. It offers products combining very high performance, real-time capabilities, digital signal processing, low-power / low-voltage operation, and connectivity, while maintaining full integration and ease of development.

STM32L4 series STM32L4 series STM32L4 series
You might also be interested by

Tutorial | Demo | MEMS MLC | Gyroscope | Accelerometer | Predictive maintenance | Wearables

Recognize head gestures in wearable devices with ultra low power sensors

Recognize head gestures such as nodding, shaking, and other general head movements through the Machine Learning Core available in MEMS sensors.

Tutorial | Demo | MEMS MLC | Accelerometer | Industrial | Predictive maintenance

How to monitor and classify fan-coil systems with STWIN.box

Monitor and classify the behavior of a fan (e.g. on HVAC units) through the Machine Learning Core available in MEMS sensors.

Partner | Smart city | Transportation | Vision | STM32Cube.AI | STM32 AI MCU | Video

Number-Plate Recognition (ANPR) based on Vision AI by Irida Labs

Vision AI-powered solution for Automatic Number-Plate Recognition (ANPR) for smart city applications, running on STM32 MCUs