CN116821395A - 基于全文检索的贸易数据疑似命中检索方法及*** - Google Patents
基于全文检索的贸易数据疑似命中检索方法及*** Download PDFInfo
- Publication number
- CN116821395A CN116821395A CN202311110241.7A CN202311110241A CN116821395A CN 116821395 A CN116821395 A CN 116821395A CN 202311110241 A CN202311110241 A CN 202311110241A CN 116821395 A CN116821395 A CN 116821395A
- Authority
- CN
- China
- Prior art keywords
- character
- keyword
- key
- original text
- characters
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 230000000977 initiatory effect Effects 0.000 claims description 3
- 238000012015 optical character recognition Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012550 audit Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/53—Querying
- G06F16/535—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
- G06F16/5846—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using extracted text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/42—Document-oriented image-based pattern recognition based on the type of document
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Library & Information Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种基于全文检索的贸易数据疑似命中检索方法及***,全文检索方法包括:获取原始文本影像件,原始文本影像件为原始文本的影像文件;对原始文本影像件进行OCR识别,获取原始文本中每个文字对应的多个候选字;根据预设的关键字,对获取到的原始文本中每个文字对应的多个候选字进行全文检索,在全文检索时,通过字符串算法机制,遍历原始文本中的所有子字符串,并针对每个字符进行循环对比,确定与关键字最匹配的候选字。本发明通过减少在原文字符匹配时关键字与原文字符对比次数,能够有效提高全文检索效率,本发明替代人工对比候选字,每个字符的OCR候选值均参与对比,提高了原始文本影像件检索关键字的准确度。
Description
技术领域
本发明涉及全文检索技术领域,更具体地,涉及一种基于全文检索的贸易数据疑似命中检索方法及***。
背景技术
在金融领域中,金单业务和供票业务的运营和风险岗位人员需要审核贸易背景资料。为了提高审核效率,通常使用基于OCR(光学字符识别)的工具来快速识别各种票据信息。然而,OCR工具在实际使用中存在一些问题。
首先,影像件样本格式多种多样,可能是不同的文件类型(如PDF、图片等),这给识别过程带来了挑战。此外,影像清晰度参差不齐,有些影像件可能模糊不清或者有噪点,这导致OCR工具无法准确地提取关键信息。
由于上述问题,OCR工具对于关键信息的识别准确率无法保证百分之百。当OCR无法正确识别影像件中的关键信息时,就需要专业审批人员进行人工审核和逐一对比。他们需要利用OCR识别得到的候选关键字与影像件文本进行对照,这需要消耗大量的人力资源,而且人工对比的遗漏和错误率较高。
此外,这种人工审核过程是耗时的,无法快速有效地进行业务请求的决策判断。业务流程也会受到阻塞,无法满足实时业务的需求。因此需要寻求解决方案来克服OCR识别准确性的限制,提高审核效率并实现快速、准确的业务决策。
全文检索是一种通过扫描整个文本内容来查找包含指定关键字的文档或记录的技术。但现有的全文检索需要关键字与原文所有的字符进行一一比对,检索速度相对较慢。
发明内容
本发明的首要目的是提供一种全文检索方法,解决现有全文检索中需要关键字与原文所有的字符进行一一比对,检索速度相对较慢的问题。
本发明的进一步目的是提供一种全文检索***。
本发明的第三个目的是提供一种贸易数据疑似命中检索方法,解决现有人工审核过程时耗时长,无法快速有效地进行业务请求的决策判断的问题。
本发明的第四个目的是提供一种贸易数据疑似命中检索***。
为解决上述技术问题,本发明的技术方案如下:
一种全文检索方法,包括以下步骤:
获取原始文本影像件,所述原始文本影像件为原始文本的影像文件;
对所述原始文本影像件进行OCR识别,获取所述原始文本中每个文字对应的多个候选字;
根据预设的关键字,对获取到的所述原始文本中每个文字对应的多个候选字进行全文检索,在所述全文检索时,通过字符串算法机制,遍历所述原始文本中的所有子字符串,并针对每个字符进行循环对比,确定与所述关键字最匹配的候选字。
优选地,所述根据预设的关键字,对获取到的所述原始文本中的每个文字对应的多个候选字进行全文检索,具体为:
1)初始化前缀匹配数数组next;
2)分别逐个字符遍历原始文本和关键字进行对比,关键字的每个字符与原始文本字符对比时需逐一与所有的候选字进行对比,任意匹配一个候选字皆为匹配;
3)若单个字符匹配成功,则返回步骤2)中,令关键字与原始文本进行下一个字符匹配,若关键字所有的字符均匹配成功则代表命中,流程结束,若关键字有字符匹配不成功,则进入步骤4);
4)若关键字第一个字符匹配不成功,则将对比位置从原始文本当前字符向后移动一位,返回步骤2)中进行匹配;
若关键字第一个字符匹配成功但其它字符匹配不成功,则根据所述前缀匹配数数组next,定位关键字下一轮比较的开始字符,返回步骤2)中进行匹配。
优选地,所述前缀匹配数数组next的计算方法具体为:
所述前缀匹配数数组next的数组长度与所述关键字长度相同,且next[0]=-1,next[n]为前缀匹配数数组next的第n位;
从所述关键字第2位往后逐步遍历计算所述前缀匹配数数组next,每次查找关键字字符key[0]到key[i]之间字符组成的字符串的前缀子串和后缀子串的最大公共字符串数,其中,key[0]为关键字的第一个字符,key[i]为关键字的第i个字符,i为当前遍历次数,每次遍历后,i加1;所述前缀子串为{“key[0]”,“key[0]key[1]”,…,“key[0]… key[i-1]”},所述后缀子串为{“key[i]”,“key[i-1] key[i]”,…,“key[1]… key[i]”};
将第i次遍历时获取到的最大公共字符串数减1后,设置到next[i]中。
优选地,所述根据所述前缀匹配数数组next,定位关键字下一轮比较的开始字符,具体为:
读取next[k]的值,k为当前关键字字符下标减1,next[k]的值为下一轮关键字开始与所述原始文本进行匹配的第一个字符所在的位置。
一种全文检索***,其特征在于,包括:
影像件获取模块,所述影像件获取模块用于获取原始文本影像件,所述原始文本影像件为原始文本的影像文件;
OCR识别模块,所述OCR识别模块用于对所述原始文本影像件进行OCR识别,获取所述原始文本中每个文字对应的多个候选字;
匹配模块,所述匹配模块用于根据预设的关键字,对获取到的所述原始文本中每个文字对应的多个候选字进行全文检索,在所述全文检索时,通过字符串算法机制,遍历所述原始文本中的所有子字符串,并针对每个字符进行循环对比,确定与所述关键字最匹配的候选字。
优选地,所述匹配模块中根据预设的关键字,对获取到的所述原始文本中每个文字对应的多个候选字进行全文检索,具体为:
1)初始化前缀匹配数数组next;
2)分别逐个字符遍历原始文本和关键字进行对比,关键字的每个字符与原始文本字符对比时需逐一与所有的候选字进行对比,任意匹配一个候选字皆为匹配;
3)若单个字符匹配成功,则返回步骤2)中,令关键字与原始文本进行下一个字符匹配,若关键字所有的字符均匹配成功则代表命中,流程结束,若关键字有字符匹配不成功,则进入步骤4);
4)若关键字第一个字符匹配不成功,则将对比位置从原始文本当前字符向后移动一位,返回步骤2)中进行匹配;
若关键字第一个字符匹配成功但其它字符匹配不成功,则根据所述前缀匹配数数组next,定位关键字下一轮比较的开始字符,返回步骤2)中进行匹配。
优选地,所述前缀匹配数数组next的计算方法具体为:
所述前缀匹配数数组next的数组长度与所述关键字长度相同,且next[0]=-1,next[n]为前缀匹配数数组next的第n位;
从所述关键字第2位往后逐步遍历计算所述前缀匹配数数组next,每次查找关键字字符key[0]到key[i]之间字符组成的字符串的前缀子串和后缀子串的最大公共字符串数,其中,key[0]为关键字的第一个字符,key[i]为关键字的第i个字符,i为当前遍历次数,每次遍历后,i加1;所述前缀子串为{“key[0]”,“key[0]key[1]”,…,“key[0]… key[i-1]”},所述后缀子串为{“key[i]”,“key[i-1] key[i]”,…,“key[1]… key[i]”};
将第i次遍历时获取到的最大公共字符串数减1后,设置到next[i]中。
优选地,所述根据所述前缀匹配数数组next,定位关键字下一轮比较的开始字符,具体为:
读取next[k]的值,k为当前关键字字符下标减1,next[k]的值为下一轮关键字开始与所述原始文本进行匹配的第一个字符所在的位置。
一种贸易数据疑似命中检索方法,包括以下步骤:
根据融资业务审批请求,发起根据文件ID下载影像件请求;
下载影像件,利用上述所述的全文检索方法进行字符串匹配;
返回疑似命中结果。
一种贸易数据疑似命中检索***,包括:
请求模块,所述请求模块根据融资业务审批请求,发起根据文件ID下载影像件请求;
全文检索模块,所述全文检索模块用于下载影像件,并利用上述所述的全文检索方法进行字符串匹配;
返回模块,所述返回模块用于返回疑似命中结果。
与现有技术相比,本发明技术方案的有益效果是:
本发明针对全文检索过程进行了优化,根据关键字自身文字重合度情况,优化与原文字符匹配时减少关键字与原文字符对比次数,能够有效减少检索对比的次数,提高检索的效率。同时还进一步支持了后续的处理与决策,提高了审核流程的效率与准确性。
附图说明
图1为本发明实施例提供的全文检索方法流程示意图。
图2为本发明实施例提供的下一轮关键字开始与所述原始文本进行匹配的第一个字符所在的位置的示意图。
图3为本发明实施例提供的全文检索***模块示意图。
图4为本发明实施例提供的贸易数据疑似命中检索方法流程示意图。
图5为本发明实施例提供的贸易业务时序图。
图6为本发明实施例提供的贸易数据疑似命中检索***模块示意图。
具体实施方式
附图仅用于示例性说明,不能理解为对本发明的限制;
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
下面结合附图和实施例对本发明的技术方案做进一步的说明。
实施例1
本实施例一种全文检索方法,如图1所示,包括以下步骤:
获取原始文本影像件,所述原始文本影像件为原始文本的影像文件;
对所述原始文本影像件进行OCR识别,获取所述原始文本中每个文字对应的多个候选字;
根据预设的关键字,对获取到的所述原始文本中每个文字对应的多个候选字进行全文检索,在所述全文检索时,通过字符串算法机制,遍历所述原始文本中的所有子字符串,并针对每个字符进行循环对比,确定与所述关键字最匹配的候选字。
在进一步的实施例中,所述根据预设的关键字,对获取到的所述原始文本中的每个文字对应的多个候选字进行全文检索,具体为:
1)初始化前缀匹配数数组next;
2)分别逐个字符遍历原始文本和关键字进行对比,关键字的每个字符与原始文本字符对比时需逐一与所有的候选字进行对比,任意匹配一个候选字皆为匹配;
3)若单个字符匹配成功,则返回步骤2)中,令关键字与原始文本进行下一个字符匹配,若关键字所有的字符均匹配成功则代表命中,流程结束,若关键字有字符匹配不成功,则进入步骤4);
4)若关键字第一个字符匹配不成功,则将对比位置从原始文本当前字符向后移动一位,返回步骤2)中进行匹配;
若关键字第一个字符匹配成功但其它字符匹配不成功,则根据所述前缀匹配数数组next,定位关键字下一轮比较的开始字符,返回步骤2)中进行匹配。
在进一步的实施例中,所述前缀匹配数数组next的计算方法具体为:
所述前缀匹配数数组next的数组长度与所述关键字长度相同,且next[0]=-1,next[n]为前缀匹配数数组next的第n位;
从所述关键字第2位往后逐步遍历计算所述前缀匹配数数组next,每次查找关键字字符key[0]到key[i]之间字符组成的字符串的前缀子串和后缀子串的最大公共字符串数,其中,key[0]为关键字的第一个字符,key[i]为关键字的第i个字符,i为当前遍历次数,每次遍历后,i加1;所述前缀子串为{“key[0]”,“key[0]key[1]”,…,“key[0]… key[i-1]”},所述后缀子串为{“key[i]”,“key[i-1] key[i]”,…,“key[1]… key[i]”};
将第i次遍历时获取到的最大公共字符串数减1后,设置到next[i]中。
在具体的实施例中,以关键字‘ablabd’为例,对应的next数组的计算方法如下:
next数组长度与关键字长度相同;
next[0]=-1;
从关键字第2位往后逐步遍历计算next,每次查找关键keys[0]到keys[i]之间字符组成的字符串的前缀和后缀的最大公共串。next [i] 值为公共子串数-1。例如遍历第二位时字符串是’ab’,’ab’的前缀子串是{‘a’},后缀子串是{‘b’},两者没有公共子串;当遍历到第5个字符(i=4),前5个字符组成‘ablab’,前缀子串为{‘a’,‘ab’,‘abl’,‘abla’}和后缀子串是{‘b’,‘ab’,‘lab’,‘blab’ },则公共子串是{‘ab’},next[4]=1-1=0;
用遍历每个字符求得的前后缀公共子串数-1设置到next数组对应位置,例如‘ablabd’对应的next数组是[-1,-1,-1,0,0,-1]。
在进一步的实施例中,所述根据所述前缀匹配数数组next,定位关键字下一轮比较的开始字符,具体为:
读取next[k]的值,k为当前关键字字符下标减1,next[k]的值为下一轮关键字开始与所述原始文本进行匹配的第一个字符所在的位置。
在具体的实施例中,原文是‘ablaed ablabd for test’,ocr返回结果如表1所示:
表1
实际关键字第一个字符‘a’与原文第一个字符比较时,需要依次与‘a’和‘@’两个候选字进行比较,任意一个匹配都视为该字符疑似匹配(所有关键字字符连续疑似匹配时,关键字在原文中疑似命中)。
对于关键字‘ablabd’,对应的next数组是[-1,-1,-1,0,0,-1],当第5个字符匹配补上时,此时,i=4,k=3,next[k]= next[3]=0,代表下一轮关键字开始的位置是next[k]+1=1,即keys[1],keys=[‘a’,‘b’,‘l’,‘a’,‘b’,‘d’],下一轮开始字符keys[1]= ‘b’,如图2所示。
综上所述,该匹配算法主要是根据关键字自身文字重合度情况,优化与原文字符匹配时减少关键字与原文字符对比次数。原文长度为m个字符,关键字长度n的情况。其空间复杂度为 O(n)。匹配时主串不会回退,子串回退不会超过n,总体算法时间复杂度为O(m+n)。
例如,对于候选字列表如表2所示。
表2
总体字符长度m=5,子串长度n=2,查询“02”、“o2”、“O2”:
k = 10/5 = 2
1)常规查询法复杂度:2*2*5 = 20
2)采用本发明实施例方法复杂度:2*5+2 = 12
查询“la”、“1a”、“|a”:
k = 9/6 = 1.5
1)常规查询法复杂度:1.5*2*5 = 15
2)采用本发明实施例方法复杂度:1.5*5+2 = 9.5
上述例子表明,总体字符长度m值越大,采用本发明实施例的方法效率提高越明显。
实施例2
本实施例提供一种全文检索***,如图3,包括:
影像件获取模块,所述影像件获取模块用于获取原始文本影像件,所述原始文本影像件为原始文本的影像文件;
OCR识别模块,所述OCR识别模块用于对所述原始文本影像件进行OCR识别,获取所述原始文本中每个文字对应的多个候选字;
匹配模块,所述匹配模块用于根据预设的关键字,对获取到的所述原始文本中每个文字对应的多个候选字进行全文检索,在所述全文检索时,通过字符串算法机制,遍历所述原始文本中的所有子字符串,并针对每个字符进行循环对比,确定与所述关键字最匹配的候选字。
在进一步的实施例中,所述匹配模块中根据预设的关键字,对获取到的所述原始文本中每个文字对应的多个候选字进行全文检索,具体为:
1)初始化前缀匹配数数组next;
2)分别逐个字符遍历原始文本和关键字进行对比,关键字的每个字符与原始文本字符对比时需逐一与所有的候选字进行对比,任意匹配一个候选字皆为匹配;
3)若单个字符匹配成功,则返回步骤2)中,令关键字与原始文本进行下一个字符匹配,若关键字所有的字符均匹配成功则代表命中,流程结束,若关键字有字符匹配不成功,则进入步骤4);
4)若关键字第一个字符匹配不成功,则将对比位置从原始文本当前字符向后移动一位,返回步骤2)中进行匹配;
若关键字第一个字符匹配成功但其它字符匹配不成功,则根据所述前缀匹配数数组next,定位关键字下一轮比较的开始字符,返回步骤2)中进行匹配。
在进一步的实施例中,所述前缀匹配数数组next的计算方法具体为:
所述前缀匹配数数组next的数组长度与所述关键字长度相同,且next[0]=-1,next[n]为前缀匹配数数组next的第n位;
从所述关键字第2位往后逐步遍历计算所述前缀匹配数数组next,每次查找关键字字符key[0]到key[i]之间字符组成的字符串的前缀子串和后缀子串的最大公共字符串数,其中,key[0]为关键字的第一个字符,key[i]为关键字的第i个字符,i为当前遍历次数,每次遍历后,i加1;所述前缀子串为{“key[0]”,“key[0]key[1]”,…,“key[0]… key[i-1]”},所述后缀子串为{“key[i]”,“key[i-1] key[i]”,…,“key[1]… key[i]”};
将第i次遍历时获取到的最大公共字符串数减1后,设置到next[i]中。
在进一步的实施例中,所述根据所述前缀匹配数数组next,定位关键字下一轮比较的开始字符,具体为:
读取next[k]的值,k为当前关键字字符下标减1,next[k]的值为下一轮关键字开始与所述原始文本进行匹配的第一个字符所在的位置。
实施例3
本实施例提供一种贸易数据疑似命中检索方法,如图4所示,包括以下步骤:
根据融资业务审批请求,发起根据文件ID下载影像件请求;
下载影像件,利用实施例1所述的全文检索方法进行字符串匹配;
返回疑似命中结果。
在具体的实施例中,具体的时序流程如图5所示,具体为:
1.运营用户发起融资业务审批请求至业务交易***;
2.业务交易***向文件***发起根据文件ID下载影像件请求;
3.业务交易***从文件***中下载影像件;
4.业务交易***向OCR影像识别***发起影像件OCR识别;
5.OCR影像识别***返回OCR识别结果和候选字符至业务交易***;
6.业务交易***根据需求检索关键字,想影像件检索***发起对影像件全文检索疑似命中请求;
7.影像件检索***根据最优候选字符识别,没有结果才进行其它候选字符识别;
8.影像件检索***对关键字结合OCR返回的候选字,进行字符串匹配算法检索;
9.影像件检索***把疑似或者意思相近的字符结果返回至业务交易***;
10.业务交易***返回疑似命中结果给运营用户。
实施例4
本实施例提供一种贸易数据疑似命中检索***,如图6所示,包括:
请求模块,所述请求模块根据融资业务审批请求,发起根据文件ID下载影像件请求;
全文检索模块,所述全文检索模块用于下载影像件,并利用实施例1所述的全文检索方法进行字符串匹配;
返回模块,所述返回模块用于返回疑似命中结果。
相同或相似的标号对应相同或相似的部件;
附图中描述位置关系的用语仅用于示例性说明,不能理解为对本发明的限制;
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (10)
1.一种全文检索方法,其特征在于,包括以下步骤:
获取原始文本影像件,所述原始文本影像件为原始文本的影像文件;
对所述原始文本影像件进行OCR识别,获取所述原始文本中每个文字对应的多个候选字;
根据预设的关键字,对获取到的所述原始文本中每个文字对应的多个候选字进行全文检索,在所述全文检索时,通过字符串算法机制,遍历所述原始文本中的所有子字符串,并针对每个字符进行循环对比,确定与所述关键字最匹配的候选字。
2.根据权利要求1所述的全文检索方法,其特征在于,所述根据预设的关键字,对获取到的所述原始文本中的每个文字对应的多个候选字进行全文检索,具体为:
1)初始化前缀匹配数数组next;
2)分别逐个字符遍历原始文本和关键字进行对比,关键字的每个字符与原始文本字符对比时需逐一与所有的候选字进行对比,任意匹配一个候选字皆为匹配;
3)若单个字符匹配成功,则返回步骤2)中,令关键字与原始文本进行下一个字符匹配,若关键字所有的字符均匹配成功则代表命中,流程结束,若关键字有字符匹配不成功,则进入步骤4);
4)若关键字第一个字符匹配不成功,则将对比位置从原始文本当前字符向后移动一位,返回步骤2)中进行匹配;
若关键字第一个字符匹配成功但其它字符匹配不成功,则根据所述前缀匹配数数组next,定位关键字下一轮比较的开始字符,返回步骤2)中进行匹配。
3.根据权利要求2所述的全文检索方法,其特征在于,所述前缀匹配数数组next的计算方法具体为:
所述前缀匹配数数组next的数组长度与所述关键字长度相同,且next[0]=-1,next[n]为前缀匹配数数组next的第n位;
从所述关键字第2位往后逐步遍历计算所述前缀匹配数数组next,每次查找关键字字符key[0]到key[i]之间字符组成的字符串的前缀子串和后缀子串的最大公共字符串数,其中,key[0]为关键字的第一个字符,key[i] 为关键字的第i个字符,i为当前遍历次数,每次遍历后,i加1;所述前缀子串为{“key[0]”,“key[0] key[1]”,…,“key[0]… key[i-1]”},所述后缀子串为{“key[i]”,“key[i-1] key[i]”,…,“key[1]… key[i]”};
将第i次遍历时获取到的最大公共字符串数减1后,设置到next[i]中。
4.根据权利要求3所述的全文检索方法,其特征在于,所述根据所述前缀匹配数数组next,定位关键字下一轮比较的开始字符,具体为:
读取next[k]的值,k为当前关键字字符下标减1,next[k]的值为下一轮关键字开始与所述原始文本进行匹配的第一个字符所在的位置。
5.一种全文检索***,其特征在于,包括:
影像件获取模块,所述影像件获取模块用于获取原始文本影像件,所述原始文本影像件为原始文本的影像文件;
OCR识别模块,所述OCR识别模块用于对所述原始文本影像件进行OCR识别,获取所述原始文本中每个文字对应的多个候选字;
匹配模块,所述匹配模块用于根据预设的关键字,对获取到的所述原始文本中每个文字对应的多个候选字进行全文检索,在所述全文检索时,通过字符串算法机制,遍历所述原始文本中的所有子字符串,并针对每个字符进行循环对比,确定与所述关键字最匹配的候选字。
6.根据权利要求5所述的全文检索***,其特征在于,所述匹配模块中根据预设的关键字,对获取到的所述原始文本中每个文字对应的多个候选字进行全文检索,具体为:
1)初始化前缀匹配数数组next;
2)分别逐个字符遍历原始文本和关键字进行对比,关键字的每个字符与原始文本字符对比时需逐一与所有的候选字进行对比,任意匹配一个候选字皆为匹配;
3)若单个字符匹配成功,则返回步骤2)中,令关键字与原始文本进行下一个字符匹配,若关键字所有的字符均匹配成功则代表命中,流程结束,若关键字有字符匹配不成功,则进入步骤4);
4)若关键字第一个字符匹配不成功,则将对比位置从原始文本当前字符向后移动一位,返回步骤2)中进行匹配;
若关键字第一个字符匹配成功但其它字符匹配不成功,则根据所述前缀匹配数数组next,定位关键字下一轮比较的开始字符,返回步骤2)中进行匹配。
7.根据权利要求6所述的全文检索***,其特征在于,所述前缀匹配数数组next的计算方法具体为:
所述前缀匹配数数组next的数组长度与所述关键字长度相同,且next[0]=-1,next[n]为前缀匹配数数组next的第n位;
从所述关键字第2位往后逐步遍历计算所述前缀匹配数数组next,每次查找关键字字符key[0]到key[i]之间字符组成的字符串的前缀子串和后缀子串的最大公共字符串数,其中,key[0]为关键字的第一个字符,key[i] 为关键字的第i个字符,i为当前遍历次数,每次遍历后,i加1;所述前缀子串为{“key[0]”,“key[0] key[1]”,…,“key[0]… key[i-1]”},所述后缀子串为{“key[i]”,“key[i-1] key[i]”,…,“key[1]… key[i]”};
将第i次遍历时获取到的最大公共字符串数减1后,设置到next[i]中。
8.根据权利要求7所述的全文检索***,其特征在于,所述根据所述前缀匹配数数组next,定位关键字下一轮比较的开始字符,具体为:
读取next[k]的值,k为当前关键字字符下标减1,next[k]的值为下一轮关键字开始与所述原始文本进行匹配的第一个字符所在的位置。
9.一种贸易数据疑似命中检索方法,其特征在于,包括以下步骤:
根据融资业务审批请求,发起根据文件ID下载影像件请求;
下载影像件,利用权利要求1至4任一项所述的全文检索方法进行字符串匹配;
返回疑似命中结果。
10.一种贸易数据疑似命中检索***,其特征在于,包括:
请求模块,所述请求模块根据融资业务审批请求,发起根据文件ID下载影像件请求;
全文检索模块,所述全文检索模块用于下载影像件,并利用权利要求1至4任一项所述的全文检索方法进行字符串匹配;
返回模块,所述返回模块用于返回疑似命中结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311110241.7A CN116821395B (zh) | 2023-08-31 | 2023-08-31 | 基于全文检索的贸易数据疑似命中检索方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311110241.7A CN116821395B (zh) | 2023-08-31 | 2023-08-31 | 基于全文检索的贸易数据疑似命中检索方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116821395A true CN116821395A (zh) | 2023-09-29 |
CN116821395B CN116821395B (zh) | 2023-11-03 |
Family
ID=88117072
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311110241.7A Active CN116821395B (zh) | 2023-08-31 | 2023-08-31 | 基于全文检索的贸易数据疑似命中检索方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116821395B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117290523A (zh) * | 2023-11-22 | 2023-12-26 | 江苏瑞宁信创科技有限公司 | 基于动态索引表的全文检索方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6628211B1 (en) * | 2002-03-19 | 2003-09-30 | Unisys Corporation | Prefix table implemented data compression method and apparatus |
EP2015228A1 (en) * | 2007-07-12 | 2009-01-14 | Ricoh Company, Ltd. | Retrieving electronic documents by converting them to synthetic text |
JP2012068879A (ja) * | 2010-09-22 | 2012-04-05 | Fujitsu Ltd | 文字認識装置、文字認識装置制御プログラム、文字認識装置制御方法及び携帯端末装置 |
CN106708893A (zh) * | 2015-11-17 | 2017-05-24 | 华为技术有限公司 | 搜索查询词纠错方法和装置 |
-
2023
- 2023-08-31 CN CN202311110241.7A patent/CN116821395B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6628211B1 (en) * | 2002-03-19 | 2003-09-30 | Unisys Corporation | Prefix table implemented data compression method and apparatus |
EP2015228A1 (en) * | 2007-07-12 | 2009-01-14 | Ricoh Company, Ltd. | Retrieving electronic documents by converting them to synthetic text |
JP2012068879A (ja) * | 2010-09-22 | 2012-04-05 | Fujitsu Ltd | 文字認識装置、文字認識装置制御プログラム、文字認識装置制御方法及び携帯端末装置 |
CN106708893A (zh) * | 2015-11-17 | 2017-05-24 | 华为技术有限公司 | 搜索查询词纠错方法和装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117290523A (zh) * | 2023-11-22 | 2023-12-26 | 江苏瑞宁信创科技有限公司 | 基于动态索引表的全文检索方法及装置 |
CN117290523B (zh) * | 2023-11-22 | 2024-01-30 | 江苏瑞宁信创科技有限公司 | 基于动态索引表的全文检索方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116821395B (zh) | 2023-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110826320B (zh) | 一种基于文本识别的敏感数据发现方法及*** | |
CN107229668B (zh) | 一种基于关键词匹配的正文抽取方法 | |
US8073877B2 (en) | Scalable semi-structured named entity detection | |
CN100356392C (zh) | 一种字符识别的后处理方法 | |
CN110413764B (zh) | 基于预建词库的长文本企业名称识别方法 | |
CN116821395B (zh) | 基于全文检索的贸易数据疑似命中检索方法及*** | |
Firmani et al. | Towards Knowledge Discovery from the Vatican Secret Archives. In Codice Ratio-Episode 1: Machine Transcription of the Manuscripts. | |
CN1629837A (zh) | 电子文档的处理、浏览及分类查询的方法、装置及其*** | |
CN110888946A (zh) | 一种基于知识驱动的查询的实体链接方法 | |
Doush et al. | A novel Arabic OCR post-processing using rule-based and word context techniques | |
Kettunen et al. | Analyzing and improving the quality of a historical news collection using language technology and statistical machine learning methods | |
CN111782892B (zh) | 基于前缀树的相似字符识别方法、设备、装置和存储介质 | |
CN110910175A (zh) | 一种旅游门票产品画像生成方法 | |
Villegas et al. | Overview of the ImageCLEF 2016 Handwritten Scanned Document Retrieval Task. | |
CN111090994A (zh) | 一种面向中文网络论坛文本的事件地点归属省份识别方法 | |
CN111783467A (zh) | 一种企业名称识别方法及装置 | |
CN113157869A (zh) | 一种文档精准定位检索方法及*** | |
CN114647715A (zh) | 一种基于预训练语言模型的实体识别方法 | |
CN109344233B (zh) | 一种中文人名识别方法 | |
Nartker et al. | Software tools and test data for research and testing of page-reading OCR systems | |
CN112287657A (zh) | 基于文本相似度的信息匹配*** | |
CN106776590A (zh) | 一种获取词条译文的方法及*** | |
Stutzmann et al. | Handwritten text recognition, keyword indexing, and plain text search in medieval manuscripts | |
CN115577269A (zh) | 一种基于字符串文本特征相似度的黑名单模糊匹配方法 | |
CN115238067A (zh) | 基于Bert-wwm-Ext模型的摘要自动生成方法及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |