杭州图铭水表燃气表软件识别系统
-
面议
第三节 算法优势
一、水表支持类型
三川股份、东海水表、仙游水司、华立水表、大表、宁波埃美柯、宁波水表、安溪水司、山川水表、常德水表、特殊类型、磐安水司、福州中福、连利水表等。
二、燃气支持类型
丹东4位数、丹东5位数、杭州贝特、廊坊新奥、正泰气表、重庆前卫克罗姆气表、重庆山城气表、蓝宝石大字、蓝宝石小字等。
三、图片要求
1、 摄像头安装在水表上面,水表字符都拍得到,实例图片见上;
2、 水表字符整个宽度占图片宽70%以上就可以。
3、 字符不要出界
4、 单个字符小分辨率为25*35.
四、识别库特点:
1、 不需要区分表类型,字体类型,位宽(5位、6位、7位、8位、9位),可以全自动识别
2、 解决半字识别的难题,遇到半字,逻辑都可以全自动支持
3、 识别率达到 99%以上
第四节 产品的可持续发展形态
一、手机拍摄水表字符区域进行识别方案
手机端采集部分:
1、摄像头sensor推荐:采用低照度的芯片。 采用320*240或者640*480分辨率。
2、采集框要求:
水表字符整个宽度占图片宽70%以上
字符区域不要出界
单个字符小像素分辨率为25*35.
服务器端软件系统:
1、采用C、C++开发,运行环境支持 Android、ios、linux、window等,c#、java、c++、python 都可以调用识别库
2、具体流程为:
字符分割检测、字符倾斜处理、先验纠正、单个字符识别、逻辑处理
3、Android系统提供的SDK接口见附件:
4、服务器配置建议:Windows或者centos 4核3.0GHz以上; 8G以上内存
二、中继器:
利用低成本低功耗嵌入式硬件作为无线中继,一个无线中继负责连接50-100块水表,进行识别,将识别结果通过NB-iot或者lora传输到服务器端。
1、安装方式:
(1)摄像头和识别主控芯片以及补光都直接集成在一块核心板上,板子直接扣在水表上,只读取水表字符区域,读取的图片如下图所示图片:
(2)补光方式推荐:
在待识别字符区域两侧并排两组LED补光。
(3)安装要求:
由于水表表盘玻璃会反光,所以安装需要校准,补光在字符区域上下两侧。
2、硬件选项:
(1)君正的方案或者6美元的树莓派ARM Cortex-A53 1.2GHz 64-bit
(2) 摄像头sensor推荐:采用低照度的芯片。 320*240或者640*480分辨率
三、终结者:水表读数图像识别芯片
深度学习需要海量数据并行运算。传统处理器架构(包括x86 和ARM 等)往往需要数百甚至上千条指令才能完成一个神经元的处理,因此无法支撑深度学习的大规模并行计算需求。
为什么传统计算架构无法支撑深度学习的大规模并行计算需求?因为传统计算架构计算资源有限。传统计算架构一般由中央运算器(执行指令计算)、中央控制器(让指令有序执行)、内存 (存储指令)、输入(输入编程指令)和输出(输出结果)五个部分构成,其中中央运算器和中央控制器集成一块芯片上构成了我们今天通常所讲的 CPU。我们从CPU 的内部结构可以看到:实质上仅单的 ALU 模块(逻辑运算单元)是用来完成指令数据计算的,其他各个模块的存在都是为了指令能够一条接一条的有序执行。这种通用性结构对于传统的编程计算模式非常适合,同时可以通过提升CPU主频(提升单位时间执行指令速度)来提升计算速度。但对于并不需要太多的程序指令,却需要海量数据运算的深度学习的计算需求,这种结构就显得非常笨拙。尤其是在目前功耗限制下无法通过提升CPU主频来加快指令执行速度,这种矛盾愈发不可调和。因此,深度学习需要更适应此类算法的新的底层硬件来加速计算过程,也就是说,新的硬件对我们加速深度学习发挥着非常重要的作用。通过将人工智能核心算法芯片化、产品化,则不但提升了原有性能,同时也能的降低功耗和成本,为商业盈利铺平道路。
相比通用人工智能算法,动辄几百万的模型参数,我司针对水表识别进行深度优化,将模型参数优化到只有几千个(16*5*5 +16) + (16*5*5*16 +16) + 5*5*16 ≈ 5000,的缩小了运算,芯片只需要支持卷积,点乘,等运算,并且不需要接入高成本的DDR。