文本拼接方法及装置制造方法

文档序号:6626657阅读:230来源:国知局
文本拼接方法及装置制造方法
【专利摘要】本发明公开了一种文本拼接方法及装置,其中,该方法包括:获取待拼接文本;对待拼接文本中的每两个相邻的第一文本和第二文本执行以下操作,其中,第一文本和第二文本的拼接顺序为第一文本拼接在第二文本之前:查找第一文本与第二文本中相同的至少一行文本字符串,其中,至少一行文本字符串包括第一文本的最后一行文本字符串和第二文本的第一行文本字符串;若查找到相同的至少一行文本字符串,则从第一文本或第二文本中删除至少一行文本字符串,并按照拼接顺序对执行完删除之后的第一文本和第二文本进行拼接。本发明解决了采用现有的文本拼接方法所导致的拼接后的文本之间连续性较低的技术问题。
【专利说明】文本拼接方法及装置

【技术领域】
[0001]本发明涉及计算机领域,具体而言,涉及一种文本拼接方法及装置。

【背景技术】
[0002]目前,利用光学字符识别(OCR, Optical Character Recognit1n)对纸质文件上的文本进行识别时,通常采用的方式是利用摄像头从上述纸质文件采集文本信息,再利用图像配准和图像融合技术将从纸质上采集到的多个文本图像进行拼接,以得到一幅完整的文本图像,再对上述完整的文本图像进行OCR识别,从而得到与上述纸质文件上的文本相对应的计算机可识别的全部文本信息,其中,上述多个文本图像中各个文本图像之间可能包含重复的部分。其中,图像配准技术指的是,将不同时刻、不同传感器(成像设备)、不同条件(位置。角度、光照)获取的多幅图像进行匹配、叠加的过程。图像融合技术指的是将多源信道所采集到的关于同一目标的图像数据经过图像处理等,最大限度的提取各自信道中的有利信息,最后综合成高质量的图像。
[0003]然而,利用现有的OCR识别方法来进行文本识别时,由于采用机器学习的方式进行识别,因而识别得出的结果可能会受到外界环境的影响,例如,采集文本信息时的光照、角度不同,机器识别出的文本信息与纸质文件上的原始文本信息相比也可能会不同,从而导致利用OCR识别文本的准确率大大下降。此外,对于一些在边界缺损文本信息的文本图像,在现有的文本识别方案中也并没有得到良好的处理,从而使得最终识别出的文本信息无法保证识别的准确性,以及文本之间拼接的连续性。
[0004]针对上述的问题,目前尚未提出有效的解决方案。


【发明内容】

[0005]本发明实施例提供了一种文本拼接方法及装置,以至少解决采用现有的文本拼接方法所导致的拼接后的文本之间连续性较低的技术问题。
[0006]根据本发明实施例的一个方面,提供了一种文本拼接方法,包括:获取待拼接文本;对上述待拼接文本中的每两个相邻的第一文本和第二文本执行以下操作,其中,上述第一文本和第二文本的拼接顺序为上述第一文本拼接在上述第二文本之前:查找上述第一文本与上述第二文本中相同的至少一行文本字符串,其中,上述至少一行文本字符串包括上述第一文本的最后一行文本字符串和上述第二文本的第一行文本字符串;若查找到上述相同的至少一行文本字符串,则从上述第一文本或上述第二文本中删除上述至少一行文本字符串,并按照上述拼接顺序对执行完上述删除之后的上述第一文本和上述第二文本进行拼接。
[0007]根据本发明实施例的另一方面,还提供了一种文本拼接装置,包括:获取单元,用于获取待拼接文本;拼接单元,用于通过以下模块实现对上述待拼接文本中的每两个相邻的第一文本和第二文本所执行的操作,其中,上述第一文本和第二文本的拼接顺序为上述第一文本拼接在上述第二文本之前:查找模块,用于查找上述第一文本与上述第二文本中相同的至少一行文本字符串,其中,上述至少一行文本字符串包括上述第一文本的最后一行文本字符串和上述第二文本的第一行文本字符串;第一拼接模块,用于在查找到上述相同的至少一行文本字符串时,从上述第一文本或上述第二文本中删除上述至少一行文本字符串,并按照上述拼接顺序对执行完上述删除之后的上述第一文本和上述第二文本进行拼接。
[0008]在本发明实施例中,通过对获取到的待拼接文本中的每两个相邻的第一文本和第二文本查找是否存在相同的至少一行文本字符串,得到第一文本与第二文本中相同的至少一行文本字符串,将其从第一文本或第二文本中删除,再对删除后的文本进行拼接。由于现有技术中采用文本图像直接进行拼接,则OCR识别出的文本字符串可能存在重复的文本字符串,从而导致整个文本不连续的问题,而且,由于存在重复的文本字符串,也使得识别出的文本字符串在拼接时无法保证准确性。而通过本发明实施例,使得待拼接文本中不再包含重复的文本字符串,进而达到提高文本拼接的连续性的效果。
[0009]此外,在本发明实施例中,在对文本识别时,还会对文本中的残缺文本字符串予以过滤删除,从而进一步保证了在文本拼接时,不会有残缺文本字符串的干扰,提高了文本拼接的准确性。

【专利附图】

【附图说明】
[0010]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0011]图1是根据本发明实施例的一种可选的文本拼接方法的流程示意图;
[0012]图2是根据本发明实施例的一种可选的文本拼接的示意图;
[0013]图3是根据本发明实施例的另一种可选的文本拼接的示意图;
[0014]图4是根据本发明实施例的又一种可选的文本拼接的示意图;
[0015]图5是根据本发明实施例的又一种可选的文本拼接的示意图;
[0016]图6是根据本发明实施例的又一种可选的文本拼接的示意图;
[0017]图7是根据本发明实施例的又一种可选的文本拼接的示意图;
[0018]图8是根据本发明实施例的又一种可选的文本拼接的示意图;以及
[0019]图9是根据本发明实施例的一种可选的文本拼接装置的示意图。

【具体实施方式】
[0020]为了使本【技术领域】的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0021]需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0022]实施例1
[0023]根据本发明实施例,提供了一种文本拼接方法,如图1所示,该方法包括:
[0024]S102,获取待拼接文本;
[0025]S104,对待拼接文本中的每两个相邻的第一文本和第二文本执行以下操作,其中,第一文本和第二文本的拼接顺序为第一文本拼接在第二文本之前:
[0026]S1042,查找第一文本与第二文本中相同的至少一行文本字符串,其中,至少一行文本字符串包括第一文本的最后一行文本字符串和第二文本的第一行文本字符串;
[0027]S1044,若查找到相同的至少一行文本字符串,则从第一文本或第二文本中删除至少一行文本字符串,并按照拼接顺序对执行完删除之后的第一文本和第二文本进行拼接。
[0028]可选地,在本实施例中,上述文本拼接方法可以但不限于在终端上实现文本拼接,其中,上述终端可以包括但不限于以下至少之一:手机、笔记本电脑、平板电脑、PC机。进一步,上述文本拼接方法可以但不限于应用于光学字符识别(OCR, Optical CharacterRecognit1n)之后的文本拼接过程中。例如,通过OCR识别将由摄像头采集的待拼接文本的图像识别成待拼接文本,其中,上述待拼接文本可以包括但不限于一个或多个文本。例如,如图2所示,上述待拼接文本T可以包括第一文本Text_l、第二文本Text_2、第三文本Text_3,其中,上述待拼接文本的拼接顺序为第一文本Text_l位于第二文本Text_2之前,第二文本Text_2位于第三文本Text_3之前,且第一文本Text_l与第二文本Text_2之间存在3行相同的文本字符串,则通过本实施例中提供的文本拼接方法,可以实现将相同的文本字符串删除,对删除相同的文本字符串之后的待拼接文本进行拼接得到拼接后的文本T’,从而实现提高文本拼接的连续性。上述举例只是一种示例,本实施例对此不做任何限定。
[0029]可选地,在本实施例中,上述查找第一文本与第二文本中相同的至少一行文本字符串的方式可以包括但不限于:对第一文本中包括最后一行在内的至少一行文本字符串与第二文本中包括第一行在内的至少一行文本字符串进行逐行匹配,将逐行匹配得到的最大行数匹配结果作为第一文本与第二文本中相同的至少一行文本字符串。可选地,在本实施例中,上述至少一行文本字符串可以包括但不限于:一行或两行或连续多行文本字符串。例如,当只有一行文本字符串相同时,则可以直接删除上述相同的一行文本字符串,以实现待拼接文本的无缝拼接。又例如,当连续多行文本字符串相同时,则需要多次查找两个文本之间相同的文本字符串的行数最大的多行文本字符串,从而实现可以完整获取所有相同的文本字符串,进而将上述相同的文本字符串删除,而不会因有所遗漏,导致拼接后的文本不连续的问题。
[0030]可选地,在本实施例中,上述匹配判断可以包括但不限于分别从第一文本的最后一行文本字符串以及第二文本的第一行文本字符串开始,以逐次递增一行的方式分别对上述两个文本中的文本字符串进行字符串匹配。例如,依次对第一文本的最后一行文本字符串与第二文本的第一行文本字符串进行匹配判断,再对第一文本的最后两行文本字符串与第二文本的前两行文本字符串进行匹配判断,然后对第一文本的最后三行文本字符串与第二文本的前三行文本字符串进行匹配判断,直到遍历一次上述第一文本和第二文本中总行数较小的一个文本。
[0031]可选地,在本实施例中,上述匹配方式可以包括但不限于:单行匹配、多行匹配。
[0032]可选地,在本实施例中,上述单行匹配的方式可以包括但不限于:通过比较两个文本中两行文本字符串的编辑距离,判断上述单行匹配是否成功。其中,上述编辑距离可以包括但不限于:有一个文本字符串转成另一个文本字符串所需的最少编辑操作次数,其中,上述编辑操作可以包括但不限于一个字符替换成另一个字符、插入一个字符、删除一个字符。其中,上述单行匹配是否成功匹配的判断方式可以包括但不限于:当两行文本字符串的编辑距离小于等于预定阈值时,则判断出上述单行匹配成功。例如,第一文本的最后一行文本字符串为:android:name = “.gu1.CodeActivity”,第二文本的第一行文本字符串为:android:name = “.guu.CodeActivityl2”,则上述两个文本的两行文本字符串的编辑距离为3,其中,“gui”中的一个字符“i”替换为“U”,末尾增加“12”两个字符,因而上述单行匹配得到的编辑距离为3,假设预先设定的阈值为5,则可判断出上述两行文本字符串的编辑距离3小于预定阈值5时,则判断出上述单行匹配成功。
[0033]可选地,在本实施例中,上述多行匹配的方式可以包括但不限于:将匹配行数最多的文本字符串作为最终的匹配字符串,也就是两个文本之间的相同的文本字符串。可选地,在本实施例中,上述多行匹配是否成功匹配的判断方式可以包括但不限于:计算上述多行匹配的文本字符串中单行匹配成功的行数占总行数的比例,当上述比例大于预定阈值时,则可判断出上述多行匹配已匹配成功。
[0034]可选地,在本实施例中,若查找到相同的至少一行文本字符串,则从第一文本或第二文本中删除至少一行文本字符串,并按照拼接顺序对执行完删除之后的第一文本和第二文本进行拼接包括但不限于以下至少之一:
[0035]I)从第一文本删除至少一行文本字符串,并将删除了至少一行文本字符串的第一文本和第二文本进行拼接,其中,删除了至少一行文本字符串的第一文本的最后一行拼接在第二文本的第一行之前;或者
[0036]2)从第二文本删除至少一行文本字符串,并将第一文本和删除了至少一行文本字符串的第二文本进行拼接,其中,第一文本的最后一行拼接在删除了至少一行文本字符串的第二文本的第一行之前。
[0037]具体结合以下示例进行描述,假设在第一文本与第二文本中查找到相同的文本字符串:“XXXXXX,Yyyyyyyyy, zzz”,则可以选择删除第一文本中上述相同的文本字符串,将第一文本中删除了上述相同的文本字符串的最后一行拼接到第二文本的第一行之前,如图3所示。也可以选择删除第二文本中上述相同的文本字符串,将第一文本的最后一行拼接到第二文本删除了上述相同的文本字符串的第一行之前,如图4所示。
[0038]可选地,在本实施例中,在查找第一文本与第二文本中是否存在相同的至少一行文本字符串之后,还包括:若不存在相同的至少一行文本字符串,则按照拼接顺序对第一文本和第二文本进行拼接,其中,第一文本的最后一行拼接在第二文本的第一行之前。
[0039]具体结合以下示例进行描述,假设在第一文本与第二文本中未查找到相同的文本字符串,则按照拼接顺序直接对第一文本和第二文本进行拼接,其中,第一文本的最后一行(例如,“zzz”)拼接在第二文本的第一行(例如,“456789”)之前,如图5所示。
[0040]通过本申请提供的实施例,通过对获取到的待拼接文本中的每两个相邻的第一文本和第二文本查找判断是否存在相同的至少一行文本字符串,得到第一文本与第二文本中相同的至少一行文本字符串,将其从第一文本或第二文本中删除,再对删除后的文本进行拼接,从而实现在对文本拼接时,不再包含重复的文本字符串,提高了拼接后的文本的连续性,改善了用户体验。
[0041]作为一种可选的方案,上述查找第一文本与第二文本中相同的至少一行文本字符串包括:
[0042]SI,重复执行以下步骤,直到N大于第一文本和第二文本中总行数较小的一个的总行数,N的初始值为1:
[0043]S12,获取第一文本中包括第一文本的最后一行在内的连续N行的第一文本字符串与第二文本中包括第二文本的第一行在内的连续N行的第二文本字符串之间文本字符串相同的行数P;
[0044]S14,存储P和对应的N,并令N = N+1 ;
[0045]S2,从存储的P中获取取值最大的并从存储的N中获取与对应的N目P并将第一文本中包括第一文本的最后一行在内的连续N@s行的第一文本字符串与第二文本中包括第二文本的第一行在内的连续Ngig行作为查找到的第一文本与第二文本中相同的至少一行文本字符串。
[0046]具体结合以下示例进行描述,如图6所示,假设第一文本包括6行文本字符串,第二文本包括7行文本字符串,其中,上述两个文本中包括连续4行相同的字符串,在查找第一文本与第二文本中相同的至少一行文本字符串时包括以下步骤:
[0047]SI,分别对第一文本的最后一行与第二文本的第一行进行匹配,判断是否匹配成功,若匹配成功,则存储相同的文本字符串的行数P = 1,参与匹配的行数为N= I ;
[0048]S2,分别对第一文本的最后两行与第二文本的前两行进行匹配,判断是否匹配成功,若匹配成功,则存储相同的文本字符串的行数P = 0,参与匹配的行数为N = 2 ;
[0049]S3,分别对第一文本的最后三行与第二文本的前三行进行匹配,判断是否匹配成功,若匹配成功,则存储相同的文本字符串的行数P = 0,参与匹配的行数为N = 3 ;
[0050]S4,分别对第一文本的最后四行与第二文本的前四行进行匹配,判断是否匹配成功,若匹配成功,则存储相同的文本字符串的行数P = 4,参与匹配的行数为N = 4。
[0051]以此类推,由于第一文本的总行数小于第二文本的总行数,因而,上述匹配判断将重复执行直至遍历完上述总行数为6的第一文本。
[0052]通过上述匹配判断得出,存储的P中最大值为Pi±{t= 4,对应的Ngig= 4,则上述N = 4所对应的文本字符串“6,4,5,6”将作为查找到的第一文本与第二文本中相同的文本字符串。
[0053]通过本申请提供的实施例,通过上述方式对第一文本与第二文本中的文本字符串进行判断,以得出上述两个文本中相同的文本字符串,实现了对相同的文本字符串的准确识别,进而提高了文本拼接的准确性。
[0054]作为一种可选的方案,上述存储P和对应的N包括:
[0055]SI,判断比例值P/N是否大于预定比例阈值;
[0056]S2,若比例值P/N大于预定比例阈值,则存储P和对应的N。
[0057]可选地,在本实施例中,上述多行匹配是否成功匹配的判断方式可以包括但不限于:计算上述多行匹配的文本字符串中单行匹配成功的行数占总行数的比例,当上述比例大于预定阈值时,则可判断出上述多行匹配已匹配成功。
[0058]结合以上示例进行描述,如图6所示,假设第一文本包括6行文本字符串,第二文本包括7行文本字符串,从多行匹配的角度进行说明,在第一文本的最后一行与第二文本的第一行进行匹配时,得到上述比例值P/N= 1,假设预定阈值为0.8,则可以判断出上述比例值P/N大于预定比例阈值,则匹配成功;进一步,在第一文本的最后两行与第二文本的前两行进行匹配时,得到上述比例值P/N = 0,则可以判断出上述比例值P/N小于预定比例阈值,则上述匹配失败;再者,在第一文本的最后三行与第二文本的前三行进行匹配时,得到上述比例值P/N = 0,则可以判断出上述比例值P/N小于预定比例阈值,则上述匹配失败;进一步,在第一文本的最后四行与第二文本的前四行进行匹配时,得到上述比例值P/N =1,则可以判断出上述比例值P/N大于预定比例阈值,则匹配成功;再继续匹配直至遍历完成。在所有匹配中只有上述两次匹配成功的情况,由于第四次匹配的行数最多,则将上述匹配行数最多的四行文本字符串作为最终的匹配字符串,也就是作为第一文本与第二文本之间相同的文本字符串。
[0059]通过本申请提供的实施例,通过利用比例值来判断上述多行匹配是否成功,进一步保证了文本匹配的准确性,从而可以准确删除相同的文本字符串,达到提高文本拼接的准确性的效果。
[0060]作为一种可选的方案,获取待拼接文本包括:
[0061 ] SI,获取一个或多个待识别文本图像,其中,每个待识别文本图像对应待拼接文本中的一个文本;
[0062]S2,对每个待识别文本图像执行以下识别操作,得到待拼接文本中对应的一个文本可以但不限于包括以下三种方式:
[0063]作为一种可选的实施方式,对待识别文本图像中的第一行进行识别:
[0064]SI,判断待识别文本图像中的第一行与待识别文本图像的上边界之间的第一距离是否小于等于第一距离阈值;
[0065]S2,若第一距离小于等于第一距离阈值,则将待识别文本图像中的第一行进行标记;
[0066]S3,将待识别文本图像识别成当前文本,从当前文本中删除进行了标记的行,得到待拼接文本中对应的一个文本。
[0067]作为另一种可选的实施方式,对待识别文本图像中的最后一行进行识别:
[0068]SI,判断待识别文本图像中的最后一行与待识别文本图像的下边界之间的第二距离是否小于等于第二距离阈值;
[0069]S2,若第二距离小于等于第二距离阈值,则将待识别文本图像中的最后一行进行标记;
[0070]S3,将待识别文本图像识别成当前文本,从当前文本中删除进行了标记的行,得到待拼接文本中对应的一个文本。
[0071]作为又一种可选的实施方式,同时对待识别文本图像中的第一行以及最后一行进行识别:
[0072]SI,判断待识别文本图像中的第一行与待识别文本图像的上边界之间的第一距离是否小于等于第一距离阈值,并判断待识别文本图像中的最后一行与待识别文本图像的下边界之间的第二距离是否小于等于第二距离阈值;
[0073]S2,若第一距离小于等于第一距离阈值,则将待识别文本图像中的第一行进行标记;若第二距离小于等于第二距离阈值,则将待识别文本图像中的最后一行进行标记;
[0074]S3,将待识别文本图像识别成当前文本,从当前文本中删除进行了标记的行,得到待拼接文本中对应的一个文本。
[0075]可选地,将待识别文本图像识别成当前文本包括:采用OCR将待识别文本图像识别成当前文本。
[0076]可选地,在本实施例中,通过摄像头获取待识别文本图像,再利用OCR识别,将上述获取到的文本图像识别成当前待拼接文本。
[0077]然而,上述获取到的待识别文本图像可能存在文本残缺,如图7所示,则在对文本图像进行识别时,还需要过滤上述残缺文本,以得到待拼接文本。
[0078]可选地,在本实施例中,需要删除的残缺文本字符串可以包括但不限于以下至少之一:待识别文本图像中的第一行与待识别文本图像的上边界之间的第一距离小于等于第一距离阈值的文本字符串、待识别文本图像中的最后一行与待识别文本图像的下边界之间的第二距离小于等于第二距离阈值的文本字符串。其中,上述第一距离阈值可以包括但不限于:上述待识别文本图像中的第一行与待识别文本图像的上边界之间空白区域的宽度、上述待识别文本图像中的最后一行与待识别文本图像的下边界之间空白区域的宽度。例如,如图8所示,上述待识别文本图像中的最后一行与待识别文本图像的下边界之间空白区域的宽度h将作为第二距离阈值。
[0079]可选地,在本实施例中,上述第一距离阈值与第二距离阈值可以但不限于根据不同的应用场景取值相同或取值不同。例如,上述阈值可以但不限于为上述空白区域的十分之一,从而保证在删除残缺文本字符串时,可以使得其他文本字符串不受影响,从而保证了文本拼接的准确性。
[0080]通过本申请提供的实施例,通过上述方式得到文本中的残缺文本字符串,从而实现将上述文本中的残缺文本字符串准确删除,进而达到提高文本识别以及文本拼接的准确性。
[0081]需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
[0082]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如R0M/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
[0083]实施例2
[0084]根据本发明实施例,还提供了一种文本拼接装置,如图9所示,该装置包括:
[0085]I)获取单元902,用于获取待拼接文本;
[0086]2)拼接单元904,用于通过以下模块实现对待拼接文本中的每两个相邻的第一文本和第二文本所执行的操作,其中,第一文本和第二文本的拼接顺序为第一文本拼接在第二文本之前:
[0087](I)查找模块9042,用于查找第一文本与第二文本中相同的至少一行文本字符串,其中,至少一行文本字符串包括第一文本的最后一行文本字符串和第二文本的第一行文本字符串;
[0088](2)第一拼接模块9044,用于在查找到相同的至少一行文本字符串时,从第一文本或第二文本中删除至少一行文本字符串,并按照拼接顺序对执行完删除之后的第一文本和第二文本进行拼接。
[0089]可选地,在本实施例中,上述文本拼接方法可以但不限于在终端上实现文本拼接,其中,上述终端可以包括但不限于以下至少之一:手机、笔记本电脑、平板电脑、PC机。进一步,上述文本拼接方法可以但不限于应用于光学字符识别(OCR, Optical CharacterRecognit1n)之后的文本拼接过程中。例如,通过OCR识别将由摄像头采集的待拼接文本的图像识别成待拼接文本,其中,上述待拼接文本可以包括但不限于一个或多个文本。例如,如图2所示,上述待拼接文本T可以包括第一文本Text_l、第二文本Text_2、第三文本Text_3,其中,上述待拼接文本的拼接顺序为第一文本Text_l位于第二文本Text_2之前,第二文本Text_2位于第三文本Text_3之前,且第一文本Text_l与第二文本Text_2之间存在3行相同的文本字符串,则通过本实施例中提供的文本拼接方法,可以实现将相同的文本字符串删除,对删除相同的文本字符串之后的待拼接文本进行拼接得到拼接后的文本T’,从而实现提高文本拼接的连续性。上述举例只是一种示例,本实施例对此不做任何限定。
[0090]可选地,在本实施例中,上述查找第一文本与第二文本中相同的至少一行文本字符串的方式可以包括但不限于:对第一文本中包括最后一行在内的至少一行文本字符串与第二文本中包括第一行在内的至少一行文本字符串进行逐行匹配,将逐行匹配得到的最大行数匹配结果作为第一文本与第二文本中相同的至少一行文本字符串。可选地,在本实施例中,上述至少一行文本字符串可以包括但不限于:一行或连续多行文本字符串。例如,当只有一行文本字符串相同时,则可以直接删除上述相同的一行文本字符串,以实现待拼接文本的无缝拼接。又例如,当连续多行文本字符串相同时,则需要多次查找两个文本之间相同的文本字符串的行数最大的多行文本字符串,从而实现可以完整获取所有相同的文本字符串,进而将上述相同的文本字符串删除,而不会因有所遗漏,导致拼接后的文本不连续的问题。
[0091]可选地,在本实施例中,上述匹配判断可以包括但不限于分别从第一文本的最后一行文本字符串以及第二文本的第一行文本字符串开始,以逐次递增一行的方式分别对上述两个文本中的文本字符串进行字符串匹配。例如,依次对第一文本的最后一行文本字符串与第二文本的第一行文本字符串进行匹配判断,再对第一文本的最后两行文本字符串与第二文本的前两行文本字符串进行匹配判断,然后对第一文本的最后三行文本字符串与第二文本的前三行文本字符串进行匹配判断,直到遍历一遍上述第一文本和第二文本中总行数较小的一个文本。
[0092]可选地,在本实施例中,上述匹配方式可以包括但不限于:单行匹配、多行匹配。
[0093]可选地,在本实施例中,上述单行匹配的方式可以包括但不限于:通过比较两个文本中两行文本字符串的编辑距离,判断上述单行匹配是否成功。其中,上述编辑距离可以包括但不限于:有一个文本字符串转成另一个文本字符串所需的最少编辑操作次数,其中,上述编辑操作可以包括但不限于一个字符替换成另一个字符、插入一个字符、删除一个字符。其中,上述单行匹配是否成功匹配的判断方式可以包括但不限于:当两行文本字符串的编辑距离小于等于预定阈值时,则判断出上述单行匹配成功。例如,第一文本的最后一行文本字符串为:android:name = “.gu1.CodeActivity”,第二文本的第一行文本字符串为:android:name = “.guu.CodeActivityl2”,则上述两个文本的两行文本字符串的编辑距离为3,其中,“gui”中的一个字符“i”替换为“U”,末尾增加“12”两个字符,因而上述单行匹配得到的编辑距离为3,假设预先设定的阈值为5,则可判断出上述两行文本字符串的编辑距离3小于预定阈值5时,则判断出上述单行匹配成功。
[0094]可选地,在本实施例中,上述多行匹配的方式可以包括但不限于:将匹配行数最多的文本字符串作为最终的匹配字符串,也就是两个文本之间的相同的文本字符串。可选地,在本实施例中,上述多行匹配是否成功匹配的判断方式可以包括但不限于:计算上述多行匹配的文本字符串中单行匹配成功的行数占总行数的比例,当上述比例大于预定阈值时,则可判断出上述多行匹配已匹配成功。
[0095]通过本申请提供的实施例,通过对获取到的待拼接文本中的每两个相邻的第一文本和第二文本查找判断是否存在相同的至少一行文本字符串,得到第一文本与第二文本中相同的至少一行文本字符串,将其从第一文本或第二文本中删除,再对删除后的文本进行拼接,从而实现在对文本拼接时,不再包含重复的文本字符串,提高了拼接后的文本的连续性,改善了用户体验。
[0096]作为一种可选的方案,查找模块包括:
[0097]I)处理子模块,用于重复执行以下步骤,直到N大于第一文本和第二文本中总行数较小的一个的总行数,N的初始值为1:
[0098](I)获取第一文本中包括第一文本的最后一行在内的连续N行的第一文本字符串与第二文本中包括第二文本的第一行在内的连续N行的第二文本字符串之间文本字符串相同的行数P;
[0099](2)存储P和对应的N,并令N = N+1 ;
[0100]2)确定子模块,用于从存储的P中获取取值最大的Pi±1l,并从存储的N中获取与对应的N 并将第一文本中包括第一文本的最后一行在内的连续N目#行的第一文本字符串与第二文本中包括第二文本的第一行在内的连续N@#行作为查找到的第一文本与第二文本中相同的至少一行文本字符串。
[0101]具体结合以下示例进行描述,如图6所示,假设第一文本包括6行文本字符串,第二文本包括7行文本字符串,其中,上述两个文本中包括连续4行相同的字符串,在查找第一文本与第二文本中相同的至少一行文本字符串时包括以下步骤:
[0102]SI,分别对第一文本的最后一行与第二文本的第一行进行匹配,判断是否匹配成功,若匹配成功,则存储相同的文本字符串的行数P= 1,参与匹配的行数为N= I ;
[0103]S2,分别对第一文本的最后两行与第二文本的前两行进行匹配,判断是否匹配成功,若匹配成功,则存储相同的文本字符串的行数P = 0,参与匹配的行数为N = 2 ;
[0104]S3,分别对第一文本的最后三行与第二文本的前三行进行匹配,判断是否匹配成功,若匹配成功,则存储相同的文本字符串的行数P = 0,参与匹配的行数为N = 3 ;
[0105]S4,分别对第一文本的最后四行与第二文本的前四行进行匹配,判断是否匹配成功,若匹配成功,则存储相同的文本字符串的行数P = 4,参与匹配的行数为N = 4。
[0106]以此类推,由于第一文本的总行数小于第二文本的总行数,因而,上述匹配判断将重复执行直至遍历完上述总行数为6的第一文本。
[0107]通过上述匹配判断得出,存储的P中最大值为Pi±{t= 4,对应的Ngig= 4,则上述N = 4所对应的文本字符串“6,4,5,6”将作为查找到的第一文本与第二文本中相同的文本字符串。
[0108]通过本申请提供的实施例,通过上述方式对第一文本与第二文本中的文本字符串进行判断,以得出上述两个文本中相同的文本字符串,实现了对相同的文本字符串的准确识别,进而提高了文本拼接的准确性。
[0109]作为一种可选的方案,处理子模块通过以下步骤实现存储P和对应的N包括:
[0110]SI,判断比例值P/N是否大于预定比例阈值;
[0111]S2,若比例值P/N大于预定比例阈值,则存储P和对应的N。
[0112]可选地,在本实施例中,上述多行匹配是否成功匹配的判断方式可以包括但不限于:计算上述多行匹配的文本字符串中单行匹配成功的行数占总行数的比例,当上述比例大于预定阈值时,则可判断出上述多行匹配已匹配成功。
[0113]结合以上示例进行描述,如图6所示,假设第一文本包括6行文本字符串,第二文本包括7行文本字符串,从多行匹配的角度进行说明,在第一文本的最后一行与第二文本的第一行进行匹配时,得到上述比例值P/N= 1,假设预定阈值为0.8,则可以判断出上述比例值P/N大于预定比例阈值,则匹配成功;进一步,在第一文本的最后两行与第二文本的前两行进行匹配时,得到上述比例值P/N = 0,则可以判断出上述比例值P/N小于预定比例阈值,则上述匹配失败;再者,在第一文本的最后三行与第二文本的前三行进行匹配时,得到上述比例值P/N = 0,则可以判断出上述比例值P/N小于预定比例阈值,则上述匹配失败;进一步,在第一文本的最后四行与第二文本的前四行进行匹配时,得到上述比例值P/N =1,则可以判断出上述比例值P/N大于预定比例阈值,则匹配成功;再继续匹配直至遍历完成。在所有匹配中只有上述两次匹配成功的情况,由于第四次匹配的行数最多,则将上述匹配行数最多的四行文本字符串作为最终的匹配字符串,也就是作为第一文本与第二文本之间相同的文本字符串。
[0114]通过本申请提供的实施例,通过利用比例值来判断上述多行匹配是否成功,进一步保证了文本匹配的准确性,从而可以准确删除相同的文本字符串,达到提高文本拼接的准确性的效果。
[0115]作为一种可选的方案,第一拼接模块包括:
[0116]I)第一删除子模块,用于从第一文本删除至少一行文本字符串,并将删除了至少一行文本字符串的第一文本和第二文本进行拼接,其中,删除了至少一行文本字符串的第一文本的最后一行拼接在第二文本的第一行之前;或者
[0117]2)第二删除子模块,用于从第二文本删除至少一行文本字符串,并将第一文本和删除了至少一行文本字符串的第二文本进行拼接,其中,第一文本的最后一行拼接在删除了至少一行文本字符串的第二文本的第一行之前。
[0118]具体结合以下示例进行描述,假设在第一文本与第二文本中查找到相同的文本字符串:“XXXXXX,Yyyyyyyyy, zzz”,则可以选择删除第一文本中上述相同的文本字符串,将第一文本中删除了上述相同的文本字符串的最后一行拼接到第二文本的第一行之前,如图3所示。也可以选择删除第二文本中上述相同的文本字符串,将第一文本的最后一行拼接到第二文本删除了上述相同的文本字符串的第一行之前,如图4所示。
[0119]通过本申请提供的实施例,通过查找到的相同的至少一行文本字符串从第一文本或第二文本中删除,再对删除后的文本进行拼接,从而实现在对文本拼接时,不再包含重复的文本字符串,提高了拼接后的文本的连续性。
[0120]作为一种可选的方案,上述装置还包括:
[0121]I)第二拼接模块,用于在查找所述第一文本与所述第二文本中是否存在相同的至少一行文本字符串之后,在不存在所述相同的至少一行文本字符串时,按照所述拼接顺序对所述第一文本和所述第二文本进行拼接,其中,所述第一文本的最后一行拼接在所述第二文本的第一行之前。
[0122]具体结合以下示例进行描述,假设在第一文本与第二文本中未查找到相同的文本字符串,则按照拼接顺序直接对第一文本和第二文本进行拼接,其中,第一文本的最后一行(例如,“zzz”)拼接在第二文本的第一行(例如,“456789”)之前,如图5所示。
[0123]通过本申请提供的实施例,通过对未查找到相同的至少一行文本字符串的文本直接进行拼接,从而实现在对文本拼接时,可以提高文本拼接的连续性。
[0124]作为一种可选的方案,上述获取单元902包括:
[0125]I)第一获取模块,用于获取一个或多个待识别文本图像,其中,每个待识别文本图像对应待拼接文本中的一个文本;
[0126]2)第一识别模块,用于通过以下模块实现对每个待识别文本图像执行的识别操作,得到待拼接文本中对应的一个文本:
[0127](I)第一判断子模块,用于判断待识别文本图像中的第一行与待识别文本图像的上边界之间的第一距离是否小于等于第一距离阈值;
[0128](2)第一标记子模块,用于在第一距离小于等于第一距离阈值时,将待识别文本图像中的第一行进行标记;
[0129](3)第一识别子模块,用于将待识别文本图像识别成当前文本,从当前文本中删除进行了标记的行,得到待拼接文本中对应的一个文本。
[0130]作为一种可选的方案,上述获取单元902包括:
[0131]I)第二获取模块,用于获取一个或多个待识别文本图像,其中,每个待识别文本图像对应待拼接文本中的一个文本;
[0132]2)第二识别模块,用于通过以下模块实现对每个待识别文本图像执行的识别操作,得到待拼接文本中对应的一个文本:
[0133](I)第二判断子模块,用于判断待识别文本图像中的最后一行与待识别文本图像的下边界之间的第二距离是否小于等于第二距离阈值;
[0134](2)第二标记子模块,用于在第二距离小于等于第二距离阈值时,将待识别文本图像中的最后一行进行标记;
[0135](3)第二识别子模块,用于将待识别文本图像识别成当前文本,从当前文本中删除进行了标记的行,得到待拼接文本中对应的一个文本。
[0136]可选地,在本实施例中,识别子模块通过以下步骤实现将待识别文本图像识别成当前文本:采用OCR将待识别文本图像识别成当前文本。
[0137]可选地,在本实施例中,通过摄像头获取待识别文本图像,再利用OCR识别,将上述获取到的文本图像识别成当前待拼接文本。
[0138]然而,上述获取到的待识别文本图像可能存在文本残缺,如图7所示,则在对文本图像进行识别时,还需要过滤上述残缺文本,以得到待拼接文本。
[0139]可选地,在本实施例中,需要删除的残缺文本字符串可以包括但不限于以下至少之一:待识别文本图像中的第一行与待识别文本图像的上边界之间的第一距离小于等于第一距离阈值的文本字符串、待识别文本图像中的最后一行与待识别文本图像的下边界之间的第二距离小于等于第二距离阈值的文本字符串。其中,上述第一距离阈值可以包括但不限于:上述待识别文本图像中的第一行与待识别文本图像的上边界之间空白区域的宽度、上述待识别文本图像中的最后一行与待识别文本图像的下边界之间空白区域的宽度。例如,如图8所示,上述待识别文本图像中的最后一行与待识别文本图像的下边界之间空白区域的宽度h将作为第二距离阈值。
[0140]可选地,在本实施例中,上述第一距离阈值与第二距离阈值可以但不限于根据不同的应用场景取值相同或取值不同。例如,上述阈值可以但不限于为上述空白区域的十分之一,从而保证在删除残缺文本字符串时,可以使得其他文本字符串不受影响,从而保证了文本拼接的准确性。
[0141]通过本申请提供的实施例,通过上述方式得到文本中的残缺文本字符串,从而实现将上述文本中的残缺文本字符串准确删除,进而达到提高文本识别以及文本拼接的准确性。
[0142]上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0143]实施例3
[0144]根据本发明实施例,还提供了一种用于实施上述文本拼接方法的终端,该终端包括:
[0145]I)存储器,被设置为存储获取到的待拼接文本,以及从待拼接文本中删除相同的至少一行文本字符串后按照拼接顺序拼接完成的最终目标文本;
[0146]2)处理器,被设置为对待拼接文本中的每两个相邻的第一文本和第二文本执行以下操作,其中,第一文本和第二文本的拼接顺序为第一文本拼接在第二文本之前:
[0147]SI,查找第一文本与第二文本中相同的至少一行文本字符串,其中,至少一行文本字符串包括第一文本的最后一行文本字符串和第二文本的第一行文本字符串;
[0148]S2,若查找到相同的至少一行文本字符串,则从第一文本或第二文本中删除至少一行文本字符串,并按照拼接顺序对执行完删除之后的第一文本和第二文本进行拼接。
[0149]可选地,在本实施例中,上述存储器还可以用于存储上述实施例1中的文本拼接方法过程中所存储的其他数据。
[0150]可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
[0151]实施例4
[0152]本发明的实施例还提供了一种用于实施文本拼接方法的存储介质。可选地,在本实施例中,上述存储介质可以但不限于应用于光学字符识别(OCR, Optical CharacterRecognit1n)之后的文本拼接过程中的一个终端上,其中,上述终端可以包括但不限于以下至少之一:手机、笔记本电脑、平板电脑、PC机。上述举例只是一种示例,本实施例对此不做任何限定。
[0153]可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
[0154]SI,获取待拼接文本;
[0155]S2,对待拼接文本中的每两个相邻的第一文本和第二文本执行以下操作,其中,第一文本和第二文本的拼接顺序为第一文本拼接在第二文本之前:
[0156]S22,查找第一文本与第二文本中相同的至少一行文本字符串,其中,至少一行文本字符串包括第一文本的最后一行文本字符串和第二文本的第一行文本字符串;
[0157]S24,若查找到相同的至少一行文本字符串,则从第一文本或第二文本中删除至少一行文本字符串,并按照拼接顺序对执行完删除之后的第一文本和第二文本进行拼接。
[0158]可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(R0M,Read-Only Memory)、随机存取存储器(RAM, Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0159]可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
[0160]上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0161]上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
[0162]在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0163]在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
[0164]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0165]另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0166]以上所述仅是本发明的优选实施方式,应当指出,对于本【技术领域】的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
【权利要求】
1.一种文本拼接方法,其特征在于,包括: 获取待拼接文本; 对所述待拼接文本中的每两个相邻的第一文本和第二文本执行以下操作,其中,所述第一文本和第二文本的拼接顺序为所述第一文本拼接在所述第二文本之前: 查找所述第一文本与所述第二文本中相同的至少一行文本字符串,其中,所述至少一行文本字符串包括所述第一文本的最后一行文本字符串和所述第二文本的第一行文本字符串; 若查找到所述相同的至少一行文本字符串,则从所述第一文本或所述第二文本中删除所述至少一行文本字符串,并按照所述拼接顺序对执行完所述删除之后的所述第一文本和所述第二文本进行拼接。
2.根据权利要求1所述的方法,其特征在于,通过以下步骤实现所述查找所述第一文本与所述第二文本中相同的至少一行文本字符串包括: 对所述第一文本中包括所述最后一行在内的至少一行文本字符串与所述第二文本中包括所述第一行在内的至少一行文本字符串进行逐行匹配; 将所述逐行匹配得到的最大行数匹配结果作为所述第一文本与所述第二文本中相同的所述至少一行文本字符串。
3.根据权利要求2所述的方法,其特征在于,所述将所述逐行匹配得到的最大行数匹配结果作为所述第一文本与所述第二文本中相同的所述至少一行文本字符串包括: 重复执行以下步骤,直到N大于所述第一文本和所述第二文本中总行数较小的一个的总行数,N的初始值为1: 获取所述第一文本中包括所述第一文本的最后一行在内的连续N行的第一文本字符串与所述第二文本中包括所述第二文本的第一行在内的连续所述N行的第二文本字符串之间文本字符串相同的行数P ; 存储所述P和对应的所述N,并令N = N+1 ; 从存储的所述P中获取取值最大的P最大值,并从存储的所述N中获取与所述对应的N 并将所述第一文本中包括所述第一文本的最后一行在内的连续所述N @#行的第一文本字符串与所述第二文本中包括所述第二文本的第一行在内的连续所述N 行作为查找到的所述第一文本与所述第二文本中相同的所述至少一行文本字符串。
4.根据权利要求3所述的方法,其特征在于,所述存储所述P和对应的所述N包括: 判断比例值P/N是否大于预定比例阈值; 若所述比例值P/N大于所述预定比例阈值,则存储所述P和对应的所述N。
5.根据权利要求1所述的方法,其特征在于,从所述第一文本或所述第二文本中删除所述至少一行文本字符串,并按照所述拼接顺序对执行完所述删除之后的所述第一文本和所述第二文本进行拼接包括: 从所述第一文本删除所述至少一行文本字符串,并将删除了所述至少一行文本字符串的所述第一文本和所述第二文本进行拼接,其中,删除了所述至少一行文本字符串的所述第一文本的最后一行拼接在所述第二文本的第一行之前;或者 从所述第二文本删除所述至少一行文本字符串,并将所述第一文本和删除了所述至少一行文本字符串的所述第二文本进行拼接,其中,所述第一文本的最后一行拼接在删除了所述至少一行文本字符串的所述第二文本的第一行之前。
6.根据权利要求1所述的方法,其特征在于,在查找所述第一文本与所述第二文本中是否存在相同的至少一行文本字符串之后,还包括: 若不存在所述相同的至少一行文本字符串,则按照所述拼接顺序对所述第一文本和所述第二文本进行拼接,其中,所述第一文本的最后一行拼接在所述第二文本的第一行之前。
7.根据权利要求1所述的方法,其特征在于,所述获取待拼接文本包括: 获取一个或多个待识别文本图像,其中,每个所述待识别文本图像对应所述待拼接文本中的一个文本; 对每个所述待识别文本图像执行以下识别操作,得到所述待拼接文本中对应的一个文本: 判断所述待识别文本图像中的第一行与所述待识别文本图像的上边界之间的第一距离是否小于等于第一距离阈值; 若所述第一距离小于等于所述第一距离阈值,则将所述待识别文本图像中的所述第一行进行标记; 将所述待识别文本图像识别成当前文本,从所述当前文本中删除进行了所述标记的行,得到所述待拼接文本中对应的所述一个文本。
8.根据权利要求1所述的方法,其特征在于,所述获取待拼接文本包括: 获取一个或多个待识别文本图像,其中,每个所述待识别文本图像对应所述待拼接文本中的一个文本; 对每个所述待识别文本图像执行以下识别操作,得到所述待拼接文本中对应的一个文本: 判断所述待识别文本图像中的最后一行与所述待识别文本图像的下边界之间的第二距离是否小于等于第二距离阈值; 若所述第二距离小于等于所述第二距离阈值,则将所述待识别文本图像中的所述最后一行进行标记; 将所述待识别文本图像识别成当前文本,从所述当前文本中删除进行了所述标记的行,得到所述待拼接文本中对应的所述一个文本。
9.一种文本拼接装置,其特征在于,包括: 获取单元,用于获取待拼接文本; 拼接单元,用于通过以下模块实现对所述待拼接文本中的每两个相邻的第一文本和第二文本所执行的操作,其中,所述第一文本和第二文本的拼接顺序为所述第一文本拼接在所述第二文本之前: 查找模块,用于查找所述第一文本与所述第二文本中相同的至少一行文本字符串,其中,所述至少一行文本字符串包括所述第一文本的最后一行文本字符串和所述第二文本的第一行文本字符串; 第一拼接模块,用于在查找到所述相同的至少一行文本字符串时,从所述第一文本或所述第二文本中删除所述至少一行文本字符串,并按照所述拼接顺序对执行完所述删除之后的所述第一文本和所述第二文本进行拼接。
10.根据权利要求9所述的装置,其特征在于,所述查找模块通过以下步骤实现所述查找所述第一文本与所述第二文本中相同的至少一行文本字符串包括: 对所述第一文本中包括所述最后一行在内的至少一行文本字符串与所述第二文本中包括所述第一行在内的至少一行文本字符串进行逐行匹配; 将所述逐行匹配得到的最大行数匹配结果作为所述第一文本与所述第二文本中相同的所述至少一行文本字符串。
11.根据权利要求10所述的装置,其特征在于,所述查找模块通过以下模块实现将所述逐行匹配得到的最大行数匹配结果作为所述第一文本与所述第二文本中相同的所述至少一行文本字符串: 处理子模块,用于重复执行以下步骤,直到N大于所述第一文本和所述第二文本中总行数较小的一个的总行数,N的初始值为1: 获取所述第一文本中包括所述第一文本的最后一行在内的连续N行的第一文本字符串与所述第二文本中包括所述第二文本的第一行在内的连续所述N行的第二文本字符串之间文本字符串相同的行数P ; 存储所述P和对应的所述N,并令N = N+1 ; 确定子模块,用于从存储的所述P中获取取值最大的并从存储的所述N中获取与所述对应的N @#,并将所述第一文本中包括所述第一文本的最后一行在内的连续所述N 行的第一文本字符串与所述第二文本中包括所述第二文本的第一行在内的连续所述N@#行作为查找到的所述第一文本与所述第二文本中相同的所述至少一行文本字符串O
12.根据权利要求11所述的装置,其特征在于,所述处理子模块通过以下步骤实现所述存储所述P和对应的所述N包括: 判断比例值P/N是否大于预定比例阈值; 若所述比例值P/N大于所述预定比例阈值,则存储所述P和对应的所述N。
13.根据权利要求9所述的装置,其特征在于,所述第一拼接模块包括: 第一删除子模块,用于从所述第一文本删除所述至少一行文本字符串,并将删除了所述至少一行文本字符串的所述第一文本和所述第二文本进行拼接,其中,删除了所述至少一行文本字符串的所述第一文本的最后一行拼接在所述第二文本的第一行之前;或者 第二删除子模块,用于从所述第二文本删除所述至少一行文本字符串,并将所述第一文本和删除了所述至少一行文本字符串的所述第二文本进行拼接,其中,所述第一文本的最后一行拼接在删除了所述至少一行文本字符串的所述第二文本的第一行之前。
14.根据权利要求9所述的装置,其特征在于,还包括: 第二拼接模块,用于在查找所述第一文本与所述第二文本中是否存在相同的至少一行文本字符串之后,在不存在所述相同的至少一行文本字符串时,按照所述拼接顺序对所述第一文本和所述第二文本进行拼接,其中,所述第一文本的最后一行拼接在所述第二文本的第一行之前。
15.根据权利要求9所述的装置,其特征在于,所述获取单元包括: 第一获取模块,用于获取一个或多个待识别文本图像,其中,每个所述待识别文本图像对应所述待拼接文本中的一个文本; 第二识别模块,用于通过以下模块实现对每个所述待识别文本图像执行的识别操作,得到所述待拼接文本中对应的一个文本: 第一判断子模块,用于判断所述待识别文本图像中的第一行与所述待识别文本图像的上边界之间的第一距离是否小于等于第一距离阈值; 第一标记子模块,用于在所述第一距离小于等于所述第一距离阈值时,将所述待识别文本图像中的所述第一行进行标记; 第一识别子模块,用于将所述待识别文本图像识别成当前文本,从所述当前文本中删除进行了所述标记的行,得到所述待拼接文本中对应的所述一个文本。
16.根据权利要求9所述的装置,其特征在于,所述获取单元包括: 第二获取模块,用于获取一个或多个待识别文本图像,其中,每个所述待识别文本图像对应所述待拼接文本中的一个文本; 第二识别模块,用于对每个所述待识别文本图像执行以下识别操作,得到所述待拼接文本中对应的一个文本: 第二判断子模块,用于判断所述待识别文本图像中的最后一行与所述待识别文本图像的下边界之间的第二距离是否小于等于第二距离阈值; 第二标记子模块,用于在所述第二距离小于等于所述第二距离阈值时,将所述待识别文本图像中的所述最后一行进行标记; 第二识别子模块,用于将所述待识别文本图像识别成当前文本,从所述当前文本中删除进行了所述标记的行,得到所述待拼接文本中对应的所述一个文本。
【文档编号】G06K9/20GK104199805SQ201410461259
【公开日】2014年12月10日 申请日期:2014年9月11日 优先权日:2014年9月11日
【发明者】李德斌, 王巨宏, 许勇, 全琦, 黄志斌, 杨大威, 谭志鹏, 吴现, 杨言 申请人:清华大学, 腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1