供水公司负责确定水价及管理清洁饮用水的日常供应。 一直以来,供水业务单调乏味,需要工作人员到现场测量大量数据。 自动读取水表读数可以帮助供水公司确定漏点并进行维修,从而提高供水网络的效率。
方法
项目的目标是通过摄像头自动读取水表读数,并通过低功耗蜂窝连接将结果发送到服务器。 摄像头安装在水表上方。 第一个神经网络用于检测感兴趣区域,即水表上的数字所处的区域。 第二个神经网络用于一次性识别水表上显示的数字。 识别出来的数字通过蜂窝连接LTE Cat M1或NBIoT发送到服务器。
演示在B-L462E-CELL1板上运行,其中包含Murata的LBAD0ZZ1SE模块,并嵌入了:
– 一个STM32L462RE MCU,具备512 KB Flash存储器、160 KB RAM、运行频率80 MHz
– 一个eSIM ST4SIM-200M
– LTE Cat M/NBIoT调制解调器
传感器
视觉:Arducam mini 5MP plus摄像头板通过SPI连接至STM32
数据
数据格式:
包含8位数字的水表图像
灰度图像
结果
模型:量化卷积神经网络,用于检测感兴趣区域
输入大小:240×240
存储器占用:
148 KB的Flash存储器用于加权
57 KB RAM用于激活
80 MHz时STM32L462(低功耗)的性能
推理时间:300 ms
模型:完全连接并且量化的时域卷积神经网络,用于识别数字
输入大小:24×140
存储器占用:
67 KB的Flash存储器用于加权
66 KB RAM用于激活
80 MHz时STM32L462(低功耗)的性能
推理时间:8位数字900 ms