法律状态公告日
法律状态信息
法律状态
2019-07-23
专利权的转移 IPC(主分类):G06K9/20 登记生效日:20190704 变更前: 变更后: 申请日:20130913
专利申请权、专利权的转移
2016-10-26
授权
授权
2014-06-11
实质审查的生效 IPC(主分类):G06K9/20 申请日:20130913
实质审查的生效
2014-01-01
公开
公开
技术领域
本发明属于名片识别技术领域,具体涉及一种名片OCR数据修正方法和系统。
背景技术
随着图像扫描、计算机图像处理、图像识别等技术的发展,OCR(optical character recognition,光学字符识别)技术已经渐趋成熟并为人们工作效率的提高、生活质量的改善做出了贡献。近年来,随着智能手机技术、嵌入式等新兴技术的飞速发展,应用于智能手机平台的各种嵌入式技术也开始涌现,其中名片识别技术正是其中的一支,用户只需用手机自带的摄像头拍摄下名片的照片并储存,并用相应的OCR软件对照片进行OCR识别,然后将识别出的文本信息进行储存,这样就免去了人们随身携带名片盒的不方便或是手工在笔记本上记录名片信息的繁琐过程。
但是,目前的OCR技术本身受到许多不利环境因素的影响,如光线不足、图像噪声、低像素摄像头、视角偏差等,从而导致最终的识别率偏低。而OCR纠错基本上是从图像本身出发,目的是设法减弱或消除不利环境的影响,这种仅依赖图像信息的方法纠错效果是有限的。
发明内容
本发明的目的在于提供一种能够对识别结果进行修正,从而提升识别率的名片OCR数据修正方法和系统。
本发明提供的名片OCR数据修正系统,由五大模块组成:图像输入模块、预处理模块、OCR模块、数据修正模块、结果输出模块,其中:
图像输入模块,利用数码相机或手机摄像头将名片照片采集进计算机或手机并储存;
预处理模块,利用图像处理技术对照片进行处理,这种处理包括:图像倾斜校正、名片区域剪切、名片尺寸标准化等,并提取出各子字块(字块中包含的字符需满足间距近似相等、字体相同、纵坐标值相近等要求),为后续的OCR模块提供干净的输入,以减少识别中可能产生的乱码;
OCR模块,将图像信息转化为文本信息;
数据修正模块,对OCR识别结果中的错误进行修正,以进一步提高识别准确率。
结果输出模块,将修正后的结果进行输出,提交给用户。
预处理模块包含以下五个子模块:
(1)倾斜校正子模块,该子模块依次进行如下工作:
(a)图像灰度化;
(b)边缘检测(各种边缘检测方法均可如CANNY、SOBEL、PREWITT、ROBERT、LAPLACIAN等,优选地,采用CANNY算法);
(c)基于Hough变换进行直线检测;
(d)进行Radon变换并计算每个方向的投影区域,寻找投影区域宽度最小时的角度即为倾斜方向,然后按此角度进行旋转校正。
(2)图像剪切子模块,该子模块依次进行如下工作:
(a)对倾斜校正后的灰度图像进行二值化处理,其中,阈值确定方法可以是经验法、最大熵法、OTSU法等各种阈值确定方法,优选地,采用OTSU法;
(b)基于水平投影、垂直投影确定名片的区域,其中,阈值确定采用经验法,并按确定的区域将名片部分从背景中剪切出来。
(3)图像缩放子模块,该子模块依次进行如下工作:
对剪切出的名片区域,按初始设定尺寸进行比例缩放,在缩放时可采用各种插值方法如近邻法、双线性法、双三次插值法等,优选地,采用双线性法。
(4)形态学处理子模块,该子模块依次进行如下工作:
对经上步操作后的二值化结果图,进行包括图像膨胀、图像腐蚀、开运算、闭运算、连通区分析、噪声去除、异常区域去除等在内的一系列数学形态学操作,以保留真正的字符区域。
(5)字块提取模块,该子模块依次进行如下工作:
对保留下真正字符后的二值化结果图,进行连通区分析,并对每个连通区进行水平膨胀处理,然后再次进行连通区域分析,进而求出新连通区的外接矩形,最后根据外接矩形将字块区域作为子图像提取出来。
数据修正模块包括以下两个子模块:
(1)信息结构化模块,该子模块依次进行如下工作:
(a)对OCR结果,首先从每条信息中寻找属性名称,具体是寻找分隔符号前面的字符串;
(b)如果找到了,则进行属性名修正,与预先枚举定义的属性名称进行相似度比较,这里的相似度可采用多种相似度如Jaccard系数、编辑距离等,优选地,采用Jaccard系数,并从枚举库中取出相似度最高的进行替换;
(c)如果没有找到,则进行自动属性标注,具体是根据OCR文本中的特殊字符进行自动属性标注,如电子邮件中的“”,网址中的“http://”等。
(2)信息修正模块,该子模块依次进行如下工作:
(a)地址修正,按如下步骤进行:
(a1)从信息结构化后的结果中取出地址信息,按省、市、县等进行行政区域级别分割,并对知识库中的地址记录进行同样的行政区域级别分割处理(一次性操作);
(a2)对分割处理后的OCR结果和知识库结果进行比对,具体比对方法可采用各种动态规划方法,优选地,采用DTW(Dynamic Time Warping)方法,在相似度计算方法上,可采用多种相似度如Jaccard系数、编辑距离等,优选地,采用Jaccard系数;
(a3)文本+图像的两级级联修正:
(a31)对相似度从高到低进行排序,并保留相似度最高的作为匹配结果来对OCR地址进行修正;
(a32)当匹配结果多于一个时,再进行基于图像匹配的相似度比较,并取相似度最高的作为最终匹配结果来进行修正,在这里,各种图像比对方法均可使用,优选地,可首先采用Radon变换,然后对变换后的结果进行相似度计算,各种相似度计算方法均可使用,优选地,采用Cosine相似度。
(b) 单位机构名称修正,按如下步骤进行:
(b1)根据修正的地址,从知识库中查询出对应的候选单位机构名称,并且取出OCR结果中的单位机构名称;
(b2)对知识库中查询出的单位机构名称、OCR结果中的单位机构名称分别进行中文分词处理;
(b3)对分词后的各部分,分别赋以相应的权值,权值可来自于各大中文知识库的统计结果,如中文维基百科、百度百科、互动百科等知识库,优选地,采用中文维基百科知识库,具体是基于整个库中每篇文章的中文分词结果统计出的IDF值作为权值的来源;
(b4)对分词处理后的OCR单位机构名称和知识库中候选单位机构名称进行比对,具体比对方法可采用各种动态规划方法,优选地,采用本专利提出的加权DTW(Dynamic Time Warping)方法,以适应名称中各部分对最终相似度的不同贡献,在相似度计算方法上,可采用多种相似度测度如Jaccard系数、编辑距离等,优选地,采用Jaccard系数,DTW路径上的权值公式如下:
公式中,idf(Inverse Document Frequency)是逆向文档频率,某一特定词语的idf,可由总文档数目除以包含该词语之文档的数目,再将得到的商取对数得到,x和y是DTW路径上的待比较分段文本,i和j是x和y的特例,N是路径上节点数目。
(b5)在单位机构名称修正上,有两种方式可供选择:
(b51)在知识库足够充分的前提下,采取方式1,保留相似度最高的作为匹配结果并进行单位修正;
(b52)在知识库不够充分时,采取方式2,按如下步骤进行:
(b521)当相似度为1时,说明OCR结果正确,无需修正;
(b522)当相似度小于1但大于阈值时,无需修正,但可用知识库候选结果中相似度最高的对OCR结果进行信息的自动补充,这里阈值的确定可采用经验法;
(b523)当相似度小于阈值时,不作自动修正,但可人工介入修正。
(c)纯数字信息的修正
对于信息结构化后的电话、邮编、传真、手机等信息,如果发现非数字信息,则进行数字化修正,具体是将字符的点阵结构转化为二值图像,然后使用基于图像比对的方法进行匹配,最后用相似度最高的数字进行修正替换;这里,各种图像比对方法均可使用,优选地,可首先采用Radon变换,然后对变换后的结果进行相似度计算,各种相似度计算方法均可使用,优选地,采用Cosine相似度。
基于上述的系统,本发明基于知识库的名片OCR数据修正方法,具体步骤如下:
(1)对输入名片图像进行包括倾斜校正、剪切、缩放在内的一系列图像处理,然后使用多种数字形态学处理技术、连通区分析技术从中提取出独立的字符串块作为子图像,再分别进行OCR识别,目的是为OCR提供“干净”的输入;
(2)对OCR识别结果进行信息结构化处理;
(3)利用知识库,使用文本+图像的两级级联修正方法对地址信息进行修正;
(4)利用知识库,使用基于知识库IDF值加权的改进DTW(Dynamic Time Warping)方法,实现了对单位机构名称的信息修正。
本发明中,步骤(2)中所述对OCR识别结果进行信息结构化处理的具体步骤如下:
(a)对每个字符串子图像的OCR结果,从中通过截取分隔符号前子字符串的方式寻找信息的属性名;
(b)如果属性名存在,则通过与预先枚举定义的属性名称进行相似度比较、再从枚举库中取出相似度最高的枚举名进行替换的方法进行针对属性名的自动修正;
(c)如果属性名不存在,则根据OCR文本中的特殊字符进行自动属性标注。
本发明中,步骤(3)中所述对地址信息进行修正的具体步骤如下:
(a)从信息结构化后的结果中取出地址信息后按行政区域级别进行分割,并对知识库中的地址记录进行同样的处理(仅需预先进行一次性处理);
(b)采用DTW方法,对分割处理后的OCR结果和知识库结果进行比对;
(c)将相似度结果按从高到低进行排序,然后保留相似度最高的作为匹配结果实现对OCR地址的修正;
(d)当匹配结果多于一个时,再进一步地进行基于图像匹配的相似度比较,并取相似度最高的作为最终匹配结果来进行修正。
本发明中,步骤(4)中所述对单位机构名称的信息修正的具体步骤如下:
(a)根据修正的地址从知识库中查询出对应的候选单位机构名称,同时也取出OCR结果中的单位机构名称;
(b)对知识库中查询出的单位机构名称、OCR结果中的单位机构名称分别进行中文分词处理;
(c)对分词后的各部分分别赋以相应的权值,权值可来自于各大中文知识库的统计结果,具体是以基于整个知识库中每篇文章的中文分词结果统计出的IDF值作为权值的来源;
(d)对分词处理后的OCR单位机构名称和知识库中候选单位机构名称进行比对,具体是采用加权DTW(Dynamic Time Warping)方法,以适应名称里各部分对最终相似度的不同贡献,DTW路径上的权值公式如下:
公式中,idf(Inverse Document Frequency)是逆向文档频率,某一特定词语的idf,可由总文档数目除以包含该词语之文档的数目,再将得到的商取对数得到,x和y是DTW路径上的待比较分段文本,i和j是x和y的特例,N是路径上节点数目。
本发明的有益效果
本发明与通常的OCR修正技术不同,本发明利用除图像本身以外的信息进行信息修正,尤其是基于中文知识库的海量信息进行修正。本发明在OCR识别的基础上,可进一步提高识别准确率。
附图说明
图1:系统模块图。
图2:原始输入图像。
图3:倾斜校正模块输出结果。
图4:图像剪切模块及图像缩放模块输出结果。
图5:形态学处理模块输出结果。
图6:字块提取模块输出结果。
图7:OCR结果。
图8:信息结构化结果。
图9:信息修正结果。
具体实施方式
以一张名片为例,进一步描述本发明。依次使用系统各模块进行处理,具体如下:
(1)图像输入模块
输入采集的名片图像,有一定的倾斜,见图2。
(2)倾斜校正子模块:
在对图像进行了灰度化处理、CANNY边缘检测后,基于Hough变换进行直线检测,再对直线检测结果进行Radon变换,并计算每个方向的投影区域,寻找投影区域宽度最小时的角度即为倾斜方向,然后按此角度对原始输入名片进行旋转校正。
倾斜校正结果见图3。从本例中可见,输入的倾斜名片被校正为水平。
(3)图像剪切子模块:
对倾斜校正后的灰度图像进行二值化处理,其中,阈值确定方法采用OTSU法;再基于水平投影、垂直投影确定名片的区域,其中,阈值确定采用经验法,然后将名片区域剪切出来。
(4)图像缩放子模块:
对剪切出的名片区域,按初始设定尺寸进行比例缩放,在缩放时采用双线性法作为插值方法。
图像剪切、图像缩放处理后的结果见图4。从本例中可见,真正的名片区域被保留下来。
(5)形态学处理子模块:
对二值化结果图,进行数学形态学处理,以保留真正的字符区域;所述数学形态学处理包括图像膨胀、图像腐蚀、开运算、闭运算、连通区分析、噪声去除、异常区域去除。
形态学处理子模块处理后的结果见图5。从本例中可见,在保留了真正字符的同时,也去除了图案、长线条等非字符“噪声”。
(6)字块提取子模块:
对保留下真正字符后的二值化结果图,进行连通区分析,并对每个连通区进行水平膨胀处理,然后再次进行连通区域分析,进而求出新连通区的外接矩形,最后根据外接矩形将字块区域作为子图像提取出来。
字块提取子模块处理后的结果见图6。
(7)OCR模块:
通过该模块的识别处理,从经此前步骤预处理后的图像中识别出文本信息。
OCR模块处理后的结果见图7。
(8)信息结构化模块:
对OCR结果,首先从每条信息中寻找属性名称,具体是寻找分隔符号前面的字符串;如果找到了,则进行属性名修正,与预先枚举定义的属性名称进行相似度比较;如果没有找到,则进行自动属性标注,具体是根据OCR文本中的特殊字符进行自动属性标注。
信息结构化模块处理后的结果见图8。从本例中可见,原先OCR结果中的错误的“E-maí l”已经被正确修正为“e-mail”。
(9)信息修正模块,该子模块依次进行如下工作:
(a)地址修正:
(a1)从信息结构化后的结果中取出地址信息,按省、市、县等进行行政区域级别分割,并对知识库中的地址记录进行同样的行政区域级别分割处理(一次性操作);
(a2)采用DTW(Dynamic Time Warping)方法对分割处理后的OCR结果和知识库结果进行比对,在相似度计算方法上,采用Jaccard系数;
(a3)文本+图像的两级级联修正:
对相似度从高到低进行排序,并保留相似度最高的作为匹配结果来对OCR地址进行修正;当匹配结果多于一个时,再进行基于图像匹配的相似度比较,并取相似度最高的作为最终匹配结果来进行修正,具体地,首先采用Radon变换,然后对变换后的结果进行相似度计算,这里采用Cosine相似度。
(b) 单位机构名称修正,按如下步骤进行:
(b1)根据修正的地址,从知识库中查询出对应的候选单位机构名称,并且取出OCR结果中的单位机构名称;
(b2)对知识库中查询出的单位机构名称、OCR结果中的单位机构名称分别进行中文分词处理;
(b3)对分词后的各部分,分别赋以相应的权值,这里采用中文维基百科知识库来计算权值,具体是基于整个库中每篇文章的中文分词结果统计出的IDF值作为权值的来源;
(b4)对分词处理后的OCR单位机构名称和知识库中候选单位机构名称进行比对,具体采用本专利提出的加权DTW(Dynamic Time Warping)方法,以适应名称中各部分对最终相似度的不同贡献,在相似度计算方法上采用Jaccard系数。
(b5)在单位机构名称修正上,采取方式2,用知识库候选结果中相似度最高的对OCR结果进行信息补充。
(c)纯数字信息的修正
对于信息结构化后的电话、邮编、传真、手机等信息,如果发现非数字信息,则进行数字化修正,具体是将字符的点阵结构转化为二值图像,然后使用基于图像比对的方法进行匹配,最后用相似度最高的数字进行修正替换。具体地,首先采用Radon变换,然后对变换后的结果进行相似度计算,这里采用Cosine相似度。
信息修正模块处理后的结果见图9。从本例中可见:
对于地址信息的修正:原先OCR结果中的地址“上海市张衡路825号…”也借助于知识库被进一步修正为更加详细、更加标准的“上海市,浦东新区,张衡路,825号…”;
对于单位机构名称修正:在原先的OCR结果中的单位信息里增加了正确的知识库信息——“复旦大学张江校区”,从而进一步补充、丰富了原始单位机构信息;
对于纯数字信息的修正:原先OCR结果中的邮编中的错误识别字符“2o12o3”已经被正确修正成了数字“201203”。
机译: 使用知识库的多层安全数据库管理系统,该知识库具有基于版本和其他安全约束的查询,响应和更新修改
机译: 基于计算机的用于处理地下矿井中的多次潜水的方法,存在的介质,基于计算机的用于基于矿井中的矿物处理井底数据的方法的方法一个基于计算机的地下信息系统。根据地下矿井中的矿物来处理数据,并基于计算机对地下矿井中的数据进行处理的方法,仓储腿目前的计算机系统是基于计算机的,用于处理基于地下的一种形式的多次潜水。计算机根据地下矿井中的矿物质来处理数据u00e7o地下,以及基于计算机的数据处理方法
机译: 记录了一种基于数据库的数据关联方法和一种基于数据库的数据关联系统以及基于数据库的数据关联方法,并且计算机可读记录介质包括计算机可读记录介质。