仪表识别—数字仪表识别

1介绍
好久没有写博客了,主要是去学习深度学习去了,用深度学习解决了人脸检测,人脸对齐,人脸识别三种技术,再写相关的博客感觉没什么意思,所以荒废了许久。最近做了关于仪表识别的工作,并根据此工作成果开了一家公司。这里介绍下仪表识别中数码表识别的成果。

仪表识别---数字仪表识别
上图是一张测试结果,蓝色框标注了仪表的位置,绿色文字标注了蓝色框内仪表的标签和数字。

2方法
这里主要用的方法发是机器学习中的检测+传统方法的颜色分割。流程如下:

   1)仪表检测

   2)数字区域分割

   3)数字检测

2.1仪表检测
目前开源的物体检测方法很多,对于上面场景来说,很多方法都可以达到理想的效果,比方说SSD,yolo,haar + adaboost等,传统方法,深度学习方法均可,建议采用多标签输出的方法,这样就可以一张图输入,多张标输出。

2.2数字区域分割
如果直接检测数字,干扰很多,效果很差,最好的方法是特殊场景,特殊对待。如上面这个表,可以检测黑色区域,得到如下的结果:

仪表识别---数字仪表识别
2.3数字检测
数字检测可以按照仪表检测的方法来进行。很多人会用tesseract来实现识别,往往是不得其法的,据说tesseract内部的算法是跟比划相关,led的显示是断的,所以两者是相悖的,所以用检测方法会很好的解决这个问题,检测分类包含数字,字母及小数点,为了效果好,标注的时候要用同样大小的框进行标注,比如小数点的标注框要比其面积大很多。

3结果
结果就看图吧。
仪表识别---数字仪表识别
仪表识别---数字仪表识别
4其他
目前检测方法以深度学习占主流,现在也出现一些网络,模型小,速度快,效果好很多,所以实用是没有问题的。我个人也研发了一些小网络,采用多尺度,级联结构,上面这些张图,i5单核100ms左右,如果仪表占全图一半的面积以上,i5单核实时是肯定没有问题的。

   当然我还做了一些指针表的效果,如下图:

仪表识别---数字仪表识别

    下面我做了一个具体的讲解视频,有兴趣可以看下

https://v.youku.com/v_show/id_XMzc5NjgyNDcyMA==.html?spm=a2h3j.8428770.3416059.1

欢迎联系:
龚先生 email:[email protected];
或者加微信:kevingong1982

相关文章: