Android下的机械式电表数字识别技术研究.docVIP

Android下的机械式电表数字识别技术研究.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Android下的机械式电表数字识别技术研究.doc

Android下的机械式电表数字识别技术研究   摘 要:针对Android系统下机械式电表数字识别应用,提出一种电表读数图像ROI提取方法。为消除光照不均及反光的影响,结合Canny边缘检测、局部自适应阈值二值化与全局阈值二值化实现电表读数图像二值化。使用Opencv的人工神经网络多层感知器模型完成电表数字识别,测试结果显示,该技术对机械式电表读数具有较高的识别率。   关键词:Android系统;Opencv;ROI提取;图像二值化;神经网络   DOIDOI:10.11907/rjdk.162503   中图分类号:TP317.4   文献标识码:A 文章编号文章编号2016)011019603   0 引言   随着社会的进步和电子技术的发展,传统的机械式电表正逐步被电子式电表和智能电表取代。尽管如此,在一些旧城区,尤其是广大边远农村地区,机械式电表用户仍然大量存在。机械式电表用户用电数据主要依靠电力抄表员人工读取记录,受人为因素影响较大。近年来,随着Android智能手机的普及和机器视觉技术的发展,利用具有摄像头的Android智能手机APP采集和识别机械式电表读数成为代替人工读数的有效途径。   OpenCV(Open Source Computer Vision Library) 是一个由一系列C函数和少量C++类构成的开源跨平台计算机视觉库,Qt是芬兰Digia公司所有的一个跨平台的C++图形用户界面应用程序框架。Android平台最初仅支持使用Java开发应用,Qt on Android和Qt Quick框架的推出为开发者使用C/C++开发Android应用提供了有力工具,也为Android中使用OpenCV快速开发图像处理应用提供了强大支持[1]。本文在PC机上建立了Qt for Android+Opencv的开发环境,可完成PC机应用程序及Android 手机应用的开发。Qt的版本为qt-opensource-windows-x86-android-5.3.0,Qt Creator的版本为3.1.1,NDK的版本为android-ndk-r9d,Opencv选择2.4.9版本,用于Android应用的是OpenCV-2.4.9-android。   1 图像获取与ROI提取   电表图像通过手机摄像头拍摄获取,为rgb模式的彩色图像。考虑到手持拍摄的可操作性,图像获取视窗应尽量宽大,表盘读数位于其中即可。这里设定图像获取视窗为长宽比2:1的区域,获取的较具有代表性的电表图像如图1所示。   图1(a)所示的电表图像背景较为单一,图1(b)所示的电表图像背景较为杂乱。电表读数区域为六位黑底白字的整数(红底白字的小数位一般无需读取),需进行提取。首先对图像进行均值低通滤波以降低噪声,接着消除彩色像素对ROI提取可能产生的影响(本文规定r、g、b值中最大与最小值之比大于1.5即为彩色像素),即以灰度直方图中峰值对应的灰度值替代彩色像素的r、g、b值;消除彩色像素后,将图像灰度化并使用OTSU算子对图像进行二值化,反转黑白后利用OpenCV中的morphologyEx函数进行闭运算以填充和连通表盘背景,最后定位表盘读数区域外轮廓,旋转校正并进行提取。提取过程如图2所示。   2 图像二值化与字符提取   图像二值化是字符识别过程的关键步骤,其效果直接关系到字符提取和字符识别的成败。电表读数极易受反光及光照不均影响,其二值化与字符提取难度远高于车牌识别系统。图3(a)所示的电表读数图像较为明显地受到了反光和暗角的影响,经典的全局OTSU算子[2]对其二值化的效果如图3(b)所示,效果较差。对于复杂条件下的图像二值化,目前的方法主要有根据背景光照分布对图像进行分割处理、背景光照均匀化、经典的局部阈值算法、结合Canny算子和局部阈值的方法等[35],其对同时受反光和光照不均影响的电表读数图像二值化效果均不理想。   基于Opencv的图像处理接口,本文提出了结合Canny边缘检测、局部自适应阈值二值化与全局阈值二值化的电表读数图像二值化方法,具体方法为:   Step1:对如图3(a)所示的电表读数图像,将其高度统一为100像素,灰度化并高斯平滑滤波。   Step2:对电表读数图像进行双阈值Canny检测,得到图4(a)所示的边缘图像。   Step3:采用Opencv的局部自适应阈值二值化函数对电表图像进行二值化,像素阈值T(x,y)的选取采用以像素点为中心的局部邻域块的高斯加权和(与高斯窗口的互相关),邻域块的大小为blocksize×blocksize,blocksize为奇数,将其设置为电表读数图像高度的三分之一,二值化结果如图4(b)所示。

您可能关注的文档

文档评论(0)

yingzhiguo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5243141323000000

1亿VIP精品文档

相关文档