当前位置:首页|资讯

DeepOCR项目效果测试-机器视觉之USB接口底部字符检测

作者:石鑫华视觉发布时间:2024-09-27

在文章“

”中介绍了LabVIEW环境通过Halcon来实现深度学习的深度OCR功能。接下来我们就用深度OCR功能,来验证一些以前介绍的机器视觉方案中的字符识别项目的实际实现效果。

本文验证“机器视觉之USB接口底部字符检测”的深度OCR效果。本方案是手机充电器USB接口底部的字符识别。

图像1

图像1整个图像进行自动模型检测识别时,字符都能正确的识别。图像只有130万像素,自动模型识别首次识别的时间比较长。达到了6秒多钟。

图像2

图像2的自动模型识别时间则只有500多毫秒,这个则是正常的处理时间。这是因为LabVIEW调用Halcon时,首次需要加载算子到内存中,耗时相对要久很多。不仅是深度OCR有这种情况,其他算子都有这样的情况。首次运行后,则耗时则会相对要短很多。不过就算是这样,自动模型的耗时也是比较长的,半秒多钟了,这种OCR识别,如果使用ROI则要快很多。

图像3ROI识别模型


图像4ROI识别模型
图像5ROI识别模型
图像6ROI识别模型
图像7ROI识别模型

图像8ROI识别模型
图像9ROI识别模型

上面的几幅图像是同一个产品的字符,验证了不同亮度、不同角度下的字符识别。都可以准确的识别OCR。这样对比度相对比较明显,分辨率也足够的图像,使用深度学习的字符识别,要比使用传统的OCR字符识别要简单很多,项目非常容易落地。机器视觉硬件的要求也简单很多,机器视觉光源要求不高,只要能得到对比度高的图像即可,条形光源,环形光源都可以使用得上。工业相机千元级别的130万像素左右的工业相机即可满足要求。配置个长焦距的工业镜头,加上接圈,得到比较小的视野,即可得到恰当的字符区域。

下面的图像是另一组图像,相机仍然是130万像素的,但是镜头的倍率要小一些,所以视野要大一些,字符在图像中所占比例则要更小一些:

图像10效果


图像11效果
图像12效果
图像13效果
图像14效果

上面这些图像使用了更小分辨率的ROI区域进行图像分析,各种亮度、位置下,也都可以正常识别。

产品表面字符1


产品表面字符2

上面两幅图像,则是产品表面的字符。这里有多行字符,所以是需要使用自动模型,先检测定位,然后再分析识别的。可以看到,使用自动模型时,深度OCR容易将字符单词之间的空白识别成不同的字符。如Emerson这个商标名称被识别成了Emersont,workPower后面多了个?,For这个单词被识别成了forn, Imationtechnologye、requipmentr、Serill、INo:这些都是因为单词之间的空白间距被分割错误造成的。这里应该是可以设置一下参数:

图像8修改检测参数


图像7修改检测参数

修改检测参数detection_min_character_score、detection_min_link_score后,有些字符识别的效果有所改善,但是也没有完全符合要求。使用自动模型时,区域位置不确定时,分割效果好像并不是太理想,深度OCR中并没有指定字符间距的参数。所以这种全图自动检测识别的模型,很多时候效果并不是很理想,特别是有很多干扰,而且字符又比较密集时,字符之间有空格时,很容易识别错误。对于这种,还是要先定位,然后再使用ROI进行分区域的识别才是比较可靠的。

ROI进行深度OCR识别


ROI识别模型中的-符号未识别
ROI识别模型中空格被识别为-

而当ROI识别模型中是一串字符,且中间有空格时,空格通常都会被判断为符号进行识别,如-之类的。因为深度学习模型并不能指定字符的黑白极性,白色的空格,非常容易被认为是白色的-符号之类的。对于这种情况,则建议将ROI设置的更小一些,尽量不要包含空格。

ROI识别模型分辨率不够识别错误

而使用ROI识别模型时,如果分辨率不够,那么也是比较容易识别错误的。如ri这样的两个字符,容易当成一个n进行识别。

深度学习的字符识别,比传统的字符识别,在图像处理的兼容性上要强不少,但是也不是说使用了深度学习后,对硬件就完全没有要求了。还是需要提供比较恰当的机器视觉光源进行照明,以得到对比度高的图像。同时相机的分辨率也是有要求的,单个字符的分辨率不能太低了。如果太低,则很容易识别错误。当然了,对于上面看到的多行字符的识别,要解决起来也相对比较容易,除了上面提到的分ROI进行识别外。提供一点点图像的分辨率后,可以对当前的项目进行重新训练字符集,得到项目专用的字符集模型,分割就变得简单准确了,这样就更容易识别了,基本上就不会出现识别错误的问题。

要学习LabVIEW调用Halcon的深度OCR功能,请支持一下石鑫华的《LabVIEW HALCON图像处理入门教程(24.09)》,详细介绍如何在LabVIEW中调用Halcon的算子来实现基于深度学习的Deep OCR功能。

《LabVIEW HALCON图像处理入门教程(24.09)》

《LabVIEW HALCON图像处理入门教程(24.09)》含深度学习,LabVIEW使用NI VISION+Halcon混合编程机器视觉与图像处理入门学习资料



Copyright © 2024 aigcdaily.cn  北京智识时代科技有限公司  版权所有  京ICP备2023006237号-1