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