法律状态公告日
法律状态信息
法律状态
2013-08-21
未缴年费专利权终止 IPC(主分类):G06K9/62 授权公告日:20090715 终止日期:20120629 申请日:20070629
专利权的终止
2009-07-15
授权
授权
2008-01-23
实质审查的生效
实质审查的生效
2007-11-28
公开
公开
(一)技术领域
本发明属于计算机视觉传感器技术、图像识别技术、计算机控制技术在自动化检测的应用,尤其是一种机械数显数字煤气表自动检测装置。
(二)背景技术
现有的煤气表的用量,往往由抄表人员上门读取,目前市场上并不存在煤气表数字的自动检测装置。
目前市场上其他的字符识别系统基本采用了“摄像头-采集卡-计算机”结构,实际是识别软件和通用图象设备的结合。这种系统结构复杂,成本高昂,安装不便,维护困难;软件的运行需要操作系统的支持,降低了系统的稳定性。
(三)发明内容
为了克服已有的煤气表数字字符的识别装置的识别准确率低、识别速度慢、收敛性差、实时性差的不足,本发明提供一种识别准确率高、识别速度快、收敛性好、实时性好的以信号处理芯片(DSP)为平台的多通道机械数显数字煤气表自动检测装置。
本发明解决其技术问题所采用的技术方案是:
一种基于DSP的多通道机械数显数字煤气表自动检测装置,包括用于获取煤气表的图像的摄像头、对摄像头图像进行数字识别的DSP处理器,所述摄像头连接DSP处理器,所述的DSP处理器包括:图像采集模块,用于采集摄像头的数据,数显仪表的图像格式为彩色模拟视频信号;所述的DSP处理器还包括:仪表表头数字区定位模块,用于将获取的原始模拟视频信号经过解码后,取出图像中的色调V分量,利用阈值分割图象,确定仪表表头数字区;数字字符去噪模块,用于将得到的仪表表头数字区去噪;数字字符分割模块,用于将仪表表头数字区转化成像素直方图,并分割成数字字符;小数点定位模块,用于将分割后字符的右下角包含小数点区域的白色像素进行累加,累加的和除以小数点区域内的像素总数,如比例大于50%,判断存在小数点;字符特征量抽取模块,用于将分割出来的噪声区域去掉,字符的宽度为WIDTH,高度为HEIGHT,如分割后字符图像的WIDTH/HEIGHT<1.2,删除该字符,并对分割后的各个字符图像进行编码,编码的规则为:用2*1的网格将数字目标区域进行相交,用得到的交点进行数字判断,提取各个数字图像的特征编码;数字字符识别模块,用于将提取的特征编码送到BP神经网络训练或识别,得到对应该特征编码的数字。
进一步,在所述的字符特征量抽取模块中,如WIDTH/HEIGHT>3,且将白色像素进行横向累加,把累加后的白色像素的比例大于0.3,判断为数字1;设图像的高度为H,宽度为W,令区间(0,H/4)为h1,区间(H/4,3H/4)为h2,区间(3H/4,H)为h3,区间(0,W/2)为w1,区间(W/2,W)为w2,编码如下:
(W/2,h1)(W/2,h2)(W/2,h3)(w1,H/4)(w2,H/4)(w1,3H/4)(w2,3H/4)
0: 1 0 1 1 1 1 1
2: 1 1 1 0 1 1 0
3: 1 1 1 0 0 1 1
4: 0 1 0 1 0 1 1
5: 1 1 1 1 0 0 1
6: 1 1 1 1 1 0 1
7: 1 0 0 0 0 1 1
8: 1 1 1 1 1 1 1
9: 1 1 1 1 0 1 1。
再进一步,所述的仪表表头数字区定位模块包括:粗定位单元,用于得到二值化图像后,将象素按行和列累加并将结果存在行数组和列数组中,然后对行数组进行上下包夹,得到行目标矩形;然后对列数组进行左右包夹,得到列目标矩形;
精确定位单元,用于将象素行累加,计算出目标数目n,并将坐标存入坐标数组:
(1)判断n是否为0,如果是,转到步骤(2.2.3),如果否,判断每个横向目标区域是否存在其他数字目标,假如有,设为mi,mi表示第i个横向区域内的数字目标数,将坐标存在坐标数组;
(2)、计算总数目N=m1+m2+...+mi+...+mn,得到目标数组,分割为相应矩形区域分别为表头的坐标;
(3)、输入为表头区域图像,使用双线性插值法放大图像。
更进一步,所述的仪表表头数字区定位模块还包括:颜色选取单元,用于如果表头字符为红色,使用RED分量图进行颜色选取,如果表头字符为蓝色,使用BLUE分量进行颜色选取。
在所述的仪表表头数字区定位模块中,从RGB向量空间到YUV向量空间的转换参见公式(1):Y=(R+16)*0.257+(G+128)*0.504+(B+128)*0.098U=(R+16)*(-0.148)+(G+128)*(-0.291)+(B+128)*0.439V=(R+16)*0.439+(G+128)*-0.368+(B+128)*-0.071(1);
其中V分量(val_V)代表色调,用阈值VAL将图像二值化,即:
pic_V=“1”when val_V>VAL
else pic_V“0”,
其中pic_V是得到的二值化结果图像;V分量的最大值和最小值分别是Vmax和Vmin,阈值VAL=(Vmax+Vmin)/2,得到二值化图像。
所述的DSP处理器还包括:图像实时显示模块,用于将采集的数据进行显示;图像数据文件存储模块,用于将采集的数据进行存储;数字字符实时显示模块,用于将识别后的数字进行显示。
本发明的有益效果主要表现在:1、识别准确率高;2、识别速度快;3、收敛性好;4、具有嵌入性;5、能对多台数显仪表动态变化的数字字符和小数点的位置进行实时与并行识别和定位,且仪表的位置可变化;6、小数点的定位准确。
(四)附图说明
图1是基于DSP的数显仪表动态显示字符识别装置的原理框图。
图2是基于DSP的数显仪表动态显示字符识别装置的识别流程图。
图3是识别后的图像示意图。
(五)具体实施方式
下面结合附图对本发明作进一步描述。
参照图1-图3,一种基于DSP的多通道机械数显数字煤气表自动检测装置,包括用于获取煤气表的图像的摄像头1、对摄像头图像进行数字识别的DSP处理器2,摄像头采用CCD,所述摄像头1连接DSP处理器2,所述的DSP处理器2包括:图像采集模块3,用于采集摄像头的数据,数显仪表的图像格式为彩色模拟视频信号;所述的DSP处理器还包括:仪表表头数字区定位模块4,用于将获取的原始模拟视频信号经过解码后,取出图像中的色调V分量,利用阈值分割图象,确定仪表表头数字区;数字字符去噪模块5,用于将得到的仪表表头数字区去噪;数字字符分割模块6,用于将仪表表头数字区转化成像素直方图,并分割成数字字符;小数点定位模块7,用于将分割后字符的右下角包含小数点区域的白色像素进行累加,累加的和除以小数点区域内的像素总数,如比例大于50%,判断存在小数点;字符特征量抽取模块8,用于将分割出来的噪声区域去掉,字符的宽度为WIDTH,高度为HEIGHT,如分割后字符图像的WIDTH/HEIGHT<1.2,删除该字符,并对分割后的各个字符图像进行编码,编码的规则为:用2*1的网格将数字目标区域进行相交,用得到的交点进行数字判断,提取各个数字图像的特征编码;数字字符识别模块9,用于将提取的特征编码送到BP神经网络训练或识别,得到对应该特征编码的数字。
所述的DSP处理器还包括:图像实时显示模块10,用于将采集的数据进行显示;图像数据文件存储模块11,用于将采集的数据进行存储;数字字符实时显示模块12,用于将识别后的数字进行显示。所述图像实时显示模块10和数字字符实时显示模块12连接显示器。
在DSP处理器中,PRD_Ticks是系统内部时钟模块使用的标准时钟,每格为1ms,tskLoopback就是识别函数,从图中可以看出,整个识别过程大概需要4ms,再加上前面计算所得的传输时间,整个DSP程序的耗时为5.7ms,这远远满足实时要求。表1就是系统各个模块的处理时间:
表1
本实施例的字符识别方法包括以下步骤:
(1)、通过摄像头获取煤气表的图像,格式为彩色模拟视频信号;
(2)、仪表表头数字区定位:
粗定位输入的是原始图像,经过解码后获得YUV向量空间,定位到目标区域。
其中V分量(val_V)代表色调,用阈值VAL将图像二值化,即
pic_V=“1”when val_V>VAL
else pic_V“0”,
其中pic_V是得到的二值化结果图像。
其中V分量的最大值和最小值分别是Vmax和Vmin,阈值VAL=(Vmax+Vmin)/2;
(2.1)、粗定位的算法:
将象素按行和列累加并将结果存在VVHeightD和VVWidthD这两个数组里面,然后对VVHeightD进行上下包夹,得到目标矩形rect.top和rect.bottom,然后对VVWidthD进行左右包夹,得到rect.left和rect.right.原始图象粗定位结果为:rect.left,rect.right,rect.top,rect.bottom。
(2.2)、精确定位的算法:
输入为pic_V中粗定位的目标区域,将象素行累加,计算出目标数目n,并将坐标存入坐标数组pic_rt[n]
(2.2.1)、判断n是否为0,如果是转到步骤(2.2.3),如果否,判断每个横向目标区域是否存在其他数字目标,假如有,设为mi,mi表示第i个横向区域内的数字目标数,并将坐标存在坐标数组pic_rt[n][m]里,n=n-1,转到步骤2).
(2.2.2)、计算总数目N=m1+m2+...+mi+...+mn,并且得到目标数组pic_rt[n][m],分割为相应矩形区域,分别为表头的坐标。
(2.2.3)、表头区域放大:输入为表头区域图像,图像放大使用双线性插值法;每两个象素之间插了3个值,即相应放大9倍,因为在原始图像中,一个字符的宽和高只有10个象素左右,影响小数点的判别,而且双线性插值法又称一阶插值法,不会产生锯齿现象。
(2.3)、颜色选取:表头字符一般为红色,后续处理中使用RED分量图进行处理,相应的如果字符区域是蓝色的,将使用BLUE分量进行处理。
(3)、去噪过程:
由于系统受光线和背景的影响比较严重,因此利用目标数字区域上方的一个4*4像素区域内红色分量的均值为阈值,消除外界的干扰。
去噪算法:选定目标点,判断周围8个象素中的白色象素的数目,如果白色象素的数目超过4个,则目标点为白色,即是”1”.。
(4)、数字字符分割过程:
首先将图8进行列累加,把结果存在数组DDWidth里;
(5)、小数点定位过程:
将分割后的字符的右下角包含小数点区域(图中红色区域)的白色象素进行累加,除以区域内的象素总数,如果比例大于50%,判断为存在小数点。
(6)、字符特征量抽取过程:
首先把分割出来的一些噪声区域去掉,归为以下两类,分割后图像的WIDTH/HEIGHT>1.2,由于数字一般HEIGHT比WIDTH大,所以我把这种情况去掉.
(7)、对分割后的各个字符图像进行编码,编码的规则为:用2*1的网格将数字目标区域进行相交,用得到的交点进行数字判断,提取各个数字图像的特征编码;
如HEIGHT/WIDTH>3,这种情况只有在出现数字是1的情况,但是也会出现噪声,比如上面图片中介于第5的数字4和第6个数字0之间的那个白点,所以我将白色象素进行横向累加,把累加后白色象素的比例<0.3的当成噪声点,如果比例>0.3则判断是1;
提取特征算法为:用2*1的网格将数字目标区域进行相交,用得到的交点进行数字判断:
设图像高为H,宽为W;令区间(0,H/4)为h1,区间(H/4,3H/4)为h2,区间(3H/4,H)为h3,区间(0,W/2)为w1,区间(W/2,W)为w2;则编码如下:
(W/2,h1)(W/2,h2)(W/2,h3)(w1,H/4)(w2,H/4)(w1,3H/4)(w2,3H/4)
0:1 0 1 1 1 1 1
2:1 1 1 0 1 1 0
3:1 1 1 0 0 1 1
4:0 1 0 1 0 1 1
5:1 1 1 1 0 0 1
6:1 1 1 1 1 0 1
7:1 0 0 0 0 1 1
8:1 1 1 1 1 1 1
9:1 1 1 1 0 1 1
(8)、将提取的特征编码送到BP神经网络训练或识别,得到对应该特征编码的数字。
机译: 多通道DSP(数字信号处理器)算法的调度方法,VoP(分组语音)系统和记录介质
机译: 多通道DSP(数字信号处理器)算法的调度方法,VoP(分组语音)系统和记录介质
机译: 数字信号处理器(DSP)中的多通道(CH)同步电路