一种文字识别方法及装置的制造方法_3

文档序号:9226006阅读:来源:国知局
“、”以外的部分的待合并区块;
[0102]“I”的待合并区块;
[0103]“日”的待合并区块。
[0104]步骤S403中对上述10个待合并区块的处理过程如下:
[0105]先对上下位置关系和内部关系的待合并区块进行合并。
[0106]具体的,针对“乡”上半部分(类似于“么”的部分)的待合并区块和“乡”下半部分(即为一个“提”笔画)的待合并区块,可确定这两个待合并区块为上下位置关系,因此直接合并,得到“乡”的待合并区块。针对“寸”中的“、”的待合并区块和“寸”中除了“、”以外的部分的待合并区块,确定“、”的待合并区块位于“寸”中除了 “、”以外的部分的待合并区块的内部,二者为内部关系区块,因此将二者合并为“寸”的待合并区块。
[0107]再对左右关系的待合并区块进行合并。
[0108]具体的,针对“乡”的待合并区块,确定“乡”的待合并区块与“录”的待合并区块的重叠区域较大,且合并后宽高比也落入预设的文字区块的宽高比范围,因此再将“乡”的待合并区块与“录”的待合并区块进行合并,得到“绿”的待合并区块。针对“绿”的待合并区块和“ 口 ”的待合并区块,确定这两个待合并区块没有重叠区域,因此不再合并,从而,得到一个待识别区块,即“绿”的待识别区块。继续针对“口”的待合并区块继续合并。
[0109]针对“口”的待合并区块,确定其与后续的“十”的待合并区块没有重叠区域,因此不进行合并,从而得到“ 口 ”的待识别区块。继续针对“十”的待合并区块进行合并。
[0110]针对“十”的待合并区块,确定其与后续的“木”的待合并区块没有重叠区域,因此不进行合并,从而得到“十”的待识别区块。继续针对“木”的待合并区块进行合并。
[0111]针对“木”的待合并区块,确定其与后续的“寸”的待合并区块重叠区域较大,且合并后得到的区块的宽高比落入预设的文字区块的宽高比范围内,因此将这两个区块合并为一个区块,即“村”的待合并区块。继续针对“村”的待合并区块,确定其与后续的“I”的待合并区块没有重叠区域,因此不进行合并,从而得到“村”的待识别区块,继续针对“I”的待合并区块进行合并。
[0112]针对“I”的待合并区块,确定其与后续的“日”的待合并区块没有重叠区域,因此不进行合并,得到“ I ”的待识别区域,继续针对“日”的待合并区块进行合并。
[0113]针对“日”的待合并区块,确定其后已经没有待合并区块,从而得到“日”的待识别区块。
[0114]至此,步骤S403合并结束,共得到6个待识别区块,分别为:
[0115]“绿”的待识别区块;
[0116]“口”的待识别区块;
[0117]“十”的待识别区块;
[0118]“村”的待识别区块;
[0119]“I”的待识别区域;
[0120]“日”的待识别区块。
[0121]步骤S404中,按照从前到后的顺序,先选择“绿”的待识别区块作为起点区块,先将该“绿”的待识别区块(起点区块)作为待定文字区块,进行识别,确定置信度。再将“绿”的待识别区块和其后的“口”的待识别区块合并为一个待定文字区块进行识别,确定置信度。再将“绿”的待识别区块、“ 口 ”的待识别区块、“十”的待识别区块合并为一个待定文字区块进行识别,确定置信度。以此类推,直至将从“绿”的待识别区块到“日”的待识别区块中所有的区块合并为一个待定文字区块并识别,确定置信度为止。显然,识别的置信度最高的就是将“绿”的待识别区块自身作为待定文字区块的情况,因此,识别出“绿”字。
[0122]由于置信度最高时是“绿”的待识别区块本身,也就是说“绿”的待识别区块本身就是置信度最高时待定文字区块中位于最后的待识别区块,因此,下一个待识别区块为“口”的待识别区块,将“ 口 ”的待识别区块作为起点区块。
[0123]类似的,将“口”的待识别区块本身作为待定文字区块进行识别,确定置信度,再将“ 口 ”的待识别区块和“十”的待识别区块合并为一个待定文字区块进行识别,确定置信度,再将“口”的待识别区块、“十”的待识别区块、“村”的待识别区块合并为一个待定文字区块进行识别,直至将“口”的待识别区块到“日”的待识别区块中所有的待识别区块合并为一个待定文字区块进行识别,并确定置信度为止。由于单纯的一个“ 口 ”字与“叶”字中的“ 口 ”字或多或少都会有所差别,因此,将“ 口 ”的待识别区块本身作为待定文字区块进行识别的置信度在很大概率上会低于将“口”和“十”合并为一个待定文字区块进行识别的置信度,从而,本申请实施例提供的方法很大概率会将“ 口 ”的待识别区块和“十”的待识别区块识别为“叶”字。也就是说,当前的起点区块“ 口 ”所在的实际文字区块为“叶”字的文字区块。
[0124]而由于置信度最高时待定文字区块中位于最后的待识别区块为“十”,因此下一个待识别区块为“村”的待识别区块,从而,接下来以“村”为起点区块进行识别。
[0125]以“村”为起点区块进行识别与上述以“绿”为起点区块进行识别的情况类似,会识别出“村”字,这里就不再一一赘述。接下来以“I”的待识别区块为起点区块进行识别。
[0126]先将“ I ”的待识别区块本身作为待定文字区块进行识别,确定置信度,再将“ I ”与其后的“日”合并为一个待定文字区块进行识别,确定置信度。而由于数字“I”与“旧”字左半部的“丨”也略有不同,因此,将“I”的待识别区块本身作为待定文字区块进行识别的置信度在很大概率上会高于将“ I ”和“日”合并为一个待定文字区块进行识别的置信度,从而,本申请实施例提供的方法很大概率会将“ I ”的待识别区块识别为数字“ I ”,而不会将“ I ”和“日”合并识别为“旧”字。后续则可识别出“日”字,这里就不再一一赘述。
[0127]由上例可以看出,本申请实施例提供的文字识别方法,对于左右结构的“绿”字和“村”字,通过先切分再合并的方式,可有效避免将这些字的某些偏旁部首识别成单独的一个字,同样的,对于左中右结构的汉字本方法也同样适用,对于“叶”字,由于单独的一个“ 口 ”字和“叶”字中的“口 ”字或多或少会有差别,这个差别会通过识别的置信度而体现出来,因此,根据最高置信度的识别原则,可准确的识别出“叶”字,对于“ I ”字和“日”字,也由于数字“I”与“旧”字中的“丨”略有差别而体现在置信度上,因此根据最高置信度的识别原则,也可准确的识别出“ I”和“日”,不会将二者合并识别为“旧”,因此,本申请实施例提供的文字识别方法可在左右、左中右结构汉字的应用场景以及汉字与数字、字母混排的应用场景中有效保证识别的准确性,有效的提升了文字识别的精度。
[0128]进一步的,在步骤S401之前对文字行进行二值化处理时,考虑到实际应用场景中,由于采集单据等图像时,图像会受到光照不均、阴影等影响,因此,为了更加准确的区分从该图像中提取出的文字行中的笔画与其他部分,本申请实施例在对文字行进行二值化处理时,对于未受阴影影响的部分,可进行全局二值化,而对于受阴影影响的部分可进行局部二值化。
[0129]具体的,本申请实施例中的二值化处理方法可以为:针对文字行中的每个待处理像素点,确定该待处理像素点的像素值减预设的全局阈值的差值;当该差值的绝对值大于预设的第一阈值、且该差值小于O时,将该待处理像素点的像素值设置为预设的前景像素值;当该差值的绝对值大于预设的第一阈值、且该差值大于O时,将该待处理像素点的像素值设置为预设的背景像素值;当该差值的绝对值不大于预设的第一阈值时,确定该待处理像素点周围指定范围内所有像素点的像素值,在确定的所有像素点的像素值中确定最大像素值和最小像素值,并确定最大像素值和所述最小像素值的平均值,当该待处理像素点的像素值减该平均值的差值小于O时,将该待处理像素点的像素值设置为预设的前景像素值,当该待处理像素点的像素值减该平均值的差值大于O时,将该待处理像素点的像素值设置为预设的背景像素值。其中,全局阈值可通过OSTU算法进行设定。如图6A、图6B、图6C所示。
[0130]图6A为本申请实施例提供的局部二值化的应用场景示意图,在图6A中,从图像中提取的文字行中包含的文字为“绿叶村I日”,而该文字行中左半部分被阴影所遮挡,右半部分未被遮挡,导致文字行中“绿”和“叶”字位于阴影中。
[0131]由于在实际应用场景中,文字的笔画一般是颜色较深的,也就是说笔画中像素点的像素值较小,而文字的背景(如白纸)一般颜色较浅,也就是说背景中像素点的像素值较大,因此,对文字行二值化的原理一般是将每个像素点的像素值与某个阈值作比较,如果像素值大于该阈值,则将其作为背景像素点,将像素值置为背景像素值,如O。反之,如果像素值小于该阈值,则将其作为前景像素点,即笔画中的像素点,将像素值置为前景像素值,如255。
[0132]而在有阴影遮挡的场景中,如果仅通过OSTU算法设定一个全局阈值,则会由于阴影部分的所有像素点的像素值都偏小,导致全局阈值变小,这样,阴影遮挡下的笔画中的像素点的像素值很有可能会大于全局阈值而被当做背景像素点处理,由此得到的二值化后的文字行在最差的情况下就会如图6B所示。
[0133]图6B为仅对图6A所示的文字行采用全局二值化的示意图,显然,仅对图6A中处于阴影遮挡下的“绿”和“叶”进行全局二值化时,这两个字的笔画所在的像素点均大于全局阈值,因此都被作为背景像素点而将像素值置为O (纯黑色),从而得到了如图6B所示的二值化后的文字行,对比图6A和图6B,直观上看,“绿”和“叶”在图6B所示的二值化后的文字行中消失了。
[0134]为了避免图6B发生的情况,本申请实施例中结合全局二值化和局部二值化,在对图6A所示的文字行进行二值化时,同样先通过OSTU算法设定一个全局阈值。
[0135]对于未处于阴影遮挡下的待处理像素点来说,如果该待处理像素点是笔画上的像素点,则其像素值会小于全局阈值,而且该像素值减全局阈值的差值的绝对值一般会很大(即,大于第一阈值),如果该待处理像素点是背景像素点,则其像素值会大于全局阈值,而且该像素值减全局阈值的差值的绝对值一般也会很大(即,大于第一阈值),因此,在这种像素值减全局阈值的差值的绝对值大于第一阈值的情况下,可直接根据像素值与全局阈值的大小关系对该待处理像素点进行二值化。
[0136]对于处于阴影遮挡下的待处理像素点来说,其像素值减全局阈值的差值的绝对值会较小(即,不大于第一阈值),因此,在这种情况下,可确定待处理像素点周围指定范围内(如半径为3?5个像素点的范围内)的所有像素点的像素值,并从中确定最大像素值和最小像素值,再确定该最大像素值和最小像素值的平均值,作为局部阈值,再根据该待处理像素点的像素值与局部阈值的大小关系,对该待处理像素点进行二值化,如图6C所示。
[0137]图6C为本申请实施例提供的结合全局二值化和局部二值化对图6A所示的文字行进行处理后的示意图,对比图6C和图6A可见,图6A中处于阴影遮挡下的“绿”和“叶”在图6C所示的文字
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1