掌桥专利:专业的专利平台
掌桥专利
首页

基于深度学习和自动纠错的化验报告单结构化识别方法

文献发布时间:2024-04-18 19:58:21


基于深度学习和自动纠错的化验报告单结构化识别方法

技术领域

本发明涉及医疗化验单识别技术领域,具体涉及一种基于深度学习和自动纠错的化验报告单结构化识别方法。

背景技术

光学字符识别技术横跨计算机视觉和自然语言处理两大领域。在过往40余年的技术发展历程中,光学字符识别技术始终具备很强的产业应用背景,是计算机领域里少数几个一开始就由工业界和学术界双轮驱动的领域。传统的光学字符识别技术主要基于信号处理的特征提炼方法、图像结构的方法、各种算子以及各种映射技术。针对一些专用的字符类型和特殊应用场景,还有专门构造的人工特征提取技术。而近些年来深度学习发展迅速,基于深度神经网络的光学字符识别技术效果卓越。其通过多层网络结构来自动进行特征学习,颠覆了传统的人工特征提取过程,效果有了明显的改善。

基于深度神经网络的光学字符识别技术主要包括两部分:文本检测网络和文本识别网络。其中,现代文本检测网络主要是基于图片分割的思想以适应各种不规则形状的文本区域,其中心思想是先从像素层面做分类,判别每一个像素点是否属于一个文本目标,得到文本区域的概率图,然后利用多边形等来绘制出这些候选区域的最小包围曲线,把一堆散落的像素块链接到一起来形成边界框。现代文本识别网络主要广泛基于循环卷积神经网络进行改进和调整,该技术的中心思想是用深度卷积层来生成图像基础特征,再使用能吸收上下文语义信息的深度双向长短期记忆网络进行时序特征训练,最后引入连接时序分类损失函数来实现端对端的不定长序列识别,解决训练时字符无法对齐的问题。

现有的医疗化验单的光学字符识别方法对于化验单的图像质量要求较高,当图像质量较差或者存在杂质、污渍以及颜色失真情况时,识别效果会受到较大影响;另外在进行字符识别过程中对特定字符或疑难注释容易出现误识别现象,进而导致对结果的误解。

发明内容

本发明的目的在于提供一种基于深度学习和自动纠错的化验报告单结构化识别方法,旨在解决现有的医疗化验报告单检测项目和结果的智能识别问题的不足。

为实现上述目的,本发明提供了一种基于深度学习和自动纠错的化验报告单结构化识别方法,包括下列步骤:

步骤1:化验报告单照片成像效果预处理;

步骤2:霍夫变换扶正并裁剪表格;

步骤3:第一次通过OCR模块,定位重点信息进行区域裁剪;

步骤4:第二次通过OCR模块,对裁剪区域进行文本检测和识别,获得结构化识别结果;

步骤5:项目信息自动检查和整理;

步骤6:通过BK树和AC自动机,对整理后的结构化表格中的项目信息进行自动纠错;

步骤7:项目信息合并与输出。

可选的,化验报告单照片成像效果预处理的过程,包括下列步骤:

输入化验报告单图像,对RGB图像进行灰度化处理转为灰度图;

使用高斯滤波进行图片处理,减少图片噪声;

使用自适应阈值二值化,处理具有不均匀光照条件或背景噪声的图像。

可选的,在霍夫变换扶正并裁剪表格的过程中,通过霍夫变换找到化验报告单表格的位置,对倾斜的化验报告单照片进行扶正并判断是单栏化验单还是多栏化验单,接着对表格每一栏内容所在区域分别进行裁剪。

可选的,在霍夫变换扶正并裁剪表格的过程中,通过霍夫变换找到化验报告单表格的位置,对倾斜的化验单照片进行扶正并判断是单栏化验单还是多栏化验单,接着对表格每一栏内容所在区域分别进行裁剪。

可选的,第一次通过OCR模块,定位重点信息进行区域裁剪的过程,包括下列步骤:

通过OCR模块中的文本检测网络定位所有文本区域的检测框坐标;

通过OCR模块中的文本识别网络识别所有文本区域内的文本内容;

根据OCR模块得到的文本检测框坐标和内容,对敏感信息进行脱敏处理;

根据OCR模块得到的文本检测框坐标和内容,找到对应表格中的“结果”字段的检测框,裁剪该检测框以左所有区域A1和该检测框所在列的区域A2,其中区域A1包括项目中文名或项目英文名的重要项目名称信息,区域A2包括项目名称对应的化验结果。

可选的,在第二次通过OCR模块,对裁剪区域A1和A2进行文本检测和识别的过程中,区域A1的识别结果包含项目信息的excel表格,区域A2的识别结果包含化验结果的单列数据框。

可选的,OCR模块中的文本检测网络采用级联稀疏查询的可微分二值化网络,用于定位化验报告单表格中的文本位置,输出文本所在位置的矩形框坐标;文本识别网络采用CRNN,用于对文本检测网络检测到的矩形框中的文本内容进行识别。

可选的,项目信息自动检查和整理的过程,包括下列步骤:

合并所有列的内容到第一列,并统一表格信息为字符串类型;

正确合并一列中所有单元格的内容,将单独成一行的英文和数字和中文粘合;

正确分离一列中所有单元格的内容,将本该写成两项却粘合在同一行的两个检测项目名分开。

可选的,步骤6的执行过程,具体为首先收集总体的项目信息,建立医疗化验单项目信息字典,对步骤5得到的结果进行后处理,利用AC自动机获取项目信息,然后利用医疗化验单的所有正确项目信息建立BK树,对于经过AC自动机提取过OCR识别的正确结果后剩下的不正确项目信息,从所建的BK树中快速找出和出错项目信息匹配程度较高的那一项正确项目信息,达成纠错的目的。

可选的,在项目信息合并与输出的过程中,统计项目个数,并从项目信息识别结果的表格里取出相应个数的数据,将识别出的项目信息合并在同一个新的表格当中,最后将整理好的新表格以JSON格式输出。

可选的,若在步骤中2中判断化验报告单为多栏化验单,则对每一栏的化验单均进行步骤4至步骤7的处理过程,分别得到每一栏的结构化识别结果。

本发明提供了一种基于深度学习和自动纠错的化验报告单结构化识别方法,基于可微分二值化网络对医疗化验单检测识别的场景特点进行改进,使用级联稀疏查询的可微分二值化网络对高斯滤波、霍夫变换等技术预处理后的化验报告单图像进行文本检测和识别,获得化验报告单的结构化识别结果,另外针对OCR模块输出的结构化结果存在的项目错行、单项目信息分离、多项目信息粘连等问题,通过BK树和AC自动机,对整理后的结构化表格中的项目信息进行自动纠错,最后将识别出的项目信息合并在同一个新的表格当中,最后将整理好的新表格以JSON格式输出。本发明在医疗化验报告单检测项目和结果的智能识别问题上,弥补了现有技术的不足,实现了化验报告单信息的自动化采集提高数据收集和整理的效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明的一种基于深度学习和自动纠错的化验报告单结构化识别方法的步骤流程示意图。

图2是本发明的级联稀疏查询的可微分二值化网络(CSQ-DBNet)的模型结构示意图。

图3是本发明的稀疏卷积的示意图。

图4是本发明的具体实施例中根据“结果”框坐标对重点信息进行区域裁剪示意图。

图5是本发明的项目名称字典树结构示意图。

图6是本发明的字典树中的节点属性示意图。

图7是本发明的具体实施例构建fail表过程示意图。

图8是本发明的具体实施例的目标串匹配示意图。

图9是本发明的具体实施例的项目名称BK树结构示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

请参阅图1,本发明提供了一种基于深度学习和自动纠错的化验报告单结构化识别方法,包括下列步骤:

S1:化验报告单照片成像效果预处理;

S2:霍夫变换扶正并裁剪表格;

S3:第一次通过OCR模块,定位重点信息进行区域裁剪;

S4:第二次通过OCR模块,对裁剪区域进行文本检测和识别,获得结构化识别结果;

S5:项目信息自动检查和整理;

S6:通过BK树和AC自动机,对整理后的结构化表格中的项目信息进行自动纠错;

S7:项目信息合并与输出。

以下结合执行步骤和具体实施方式做进一步说明:

步骤1:针对化验报告单照片的图像特点进行图像侵蚀等成像效果的预处理,具体实施过程为:

步骤1.1:图片输入读取灰度图。

将彩色图像转化成为灰度图像的过程称为图像的灰度化处理。彩色图像中的每个像素的颜色由R、G、B三个分量决定,而每个分量有256个值可取,这样一个像素点可以有1600多万(256×256×256)的颜色变化范围。而灰度图像是R、G、B三个分量相同的一种特殊的彩色图像,其中一个像素点的变化范围为256种,所以在数字图像处理中一般先将各种格式的图像转变成灰度图像以使后续的图像计算量变得少一些。灰度图像的描述与彩色图像一样,反映了整幅图像的整体和局部的色度和亮度等级的分布和特征:

Gray=0.299×R+0.587×G+0.114×B (1)

在常见的灰度计算中,常用的权重是0.299、0.587和0.114,这些权重是根据人眼对红、绿、蓝三种颜色通道的感知强度进行估计得到的。根据这个公式,依次读取每个像素点的R,G,B值,进行计算灰度值(转换为整型),将灰度值赋值给新图像的相应位置,所有像素点遍历一遍后完成转换。

步骤1.2:使用高斯滤波,减少图片噪声,滤波核的大小为7×7。

对整幅图像进行加权平均的过程,每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后得到。高斯滤波的具体操作是:用一个模板(或称卷积、掩模)扫描图像中的每一个像素,用模板确定的邻域内像素的加权平均灰度值去替代模板中心像素点的值。

高斯滤波模板中最重要的参数就是高斯分布的标准差σ。它代表着数据的离散程度,如果σ较小,那么生成的模板中心系数越大,而周围的系数越小,这样对图像的平滑效果就不是很明显;相反,σ较大时,则生成的模板的各个系数相差就不是很大,比较类似于均值模板,对图像的平滑效果就比较明显。

步骤1.3:二值化。自适应二值化的原理如下:首先,将原始灰度图像分割为大小相等的小块(通常为正方形或矩形),称为局部区域。对于每个局部区域,计算一个自适应阈值,用于将该区域的像素分为前景(白色)和背景(黑色)。自适应阈值的计算通常基于局部区域的像素值统计信息,例如局部区域的平均像素值或高斯加权平均像素值。对于每个像素,将其与相应局部区域的自适应阈值进行比较。如果像素值大于阈值,则将该像素设置为白色(前景),否则设置为黑色(背景)。通过使用自适应阈值,自适应二值化能够在处理具有不均匀光照条件或背景噪声的图像时更好地保留有用的图像信息。

步骤2:通过霍夫变换找到化验报告单三线表的位置,对倾斜的化验单照片进行扶正并判断是单栏化验单还是多栏化验单,接着对三线表每一栏内容所在区域分别进行裁剪,具体实现过程为:

利用霍夫变换找出所有水平方向的直线,并计算其斜率,对于获取的所有水平方向的直线,取其斜率均值计算出倾斜角大小,计算公式如下:

其中,θ表示倾斜角,

霍夫变换检测直线的原理如下:

运用极坐标系来表示直线,直线的表达式可为:

化简可得:

r=xcosθ+ysinθ(5)

其中,r是点(x,y)的极坐标形式下的半径,θ代表从正半轴(通常是x轴)逆时针旋转到线段OQ所在射线的角度,其中O是原点,Q是点(x,y)。

一般来说,对于任意一个点(x

利用霍夫变换技术,得到的扶正后的图像中水平方向和竖直方向的直线,首先根据检测到的所有水平方向的直线,获取这些直线的左右两个端点的纵坐标的最大值和最小值,将得到的最大值和最小值作为裁剪的边界,然后利用霍夫变换技术检测是否存在竖直方向的直线,如果存在,则获取所有竖直方向的直线的两个端点的横坐标,取横坐标的均值作为裁剪边界,再将图像裁剪成左右两部分。

步骤3:化验单图像第一次通过OCR模块,定位化验报告单表格中的重点信息,对敏感信息进行脱敏处理并根据重点信息按列进行区域裁剪,具体实现过程为:

步骤3.1:通过OCR模块中的文本检测网络定位所有文本区域的检测框坐标。

本发明在可微分二值化网络(DBNet)的基础上针对医疗化验单检测识别的场景特点进行了一些改进,提出了级联稀疏查询的可微分二值化网络(CSQ-DBNet),模型结构如图2所示。

首先,将完整的图像输入进可微分二值化文本检测模型,找到图像中所有文本的文本框位置。经过多层级的特征金字塔结构(FPN)提取到长宽为原图像1/4的图像特征。其中,考虑到化验单场景下,需要检测模型对细粒度的表格边界和文本的感知更为敏感,提取更多的细粒度局部特征。

在原始的DBNet基础上,考虑到化验单识别的场景下的文本框多为小尺寸目标,本发明采用级联稀疏查询模块(CSQ)提高对小尺寸目标检测的速度和精度。CSQ的基本思想是,先从粗粒度的特征图中确定小物体大概的位置,然后在下一层中,利用稀疏卷积(如图3所示,当且仅当卷积核的中心位置是值不为0时才进行卷积计算并输出结果,因此图3中只需进行两次卷积计算。)仅对小物体可能存在的位置进行预测,这样可以大幅度减少针对高分辨率特征图需要进行的卷积运算并提高检测小物体的准确率。

本发明中,对比例为原图尺寸1/4、1/8、1/16和1/32的特征图均进行稀疏卷积的。其中,前三者进行稀疏卷积运算的依据为后一个特征图给出的一个小目标查询(Sq,Smallquery),小目标查询的作用是使原特征图上很可能存在小目标的位置保留原值,很可能不存在小目标的位置值为0。这些小目标查询是经过训练得到的,因此和原始的DBNet不同,模型训练时每张特征图的损失中也要加上小目标查询的损失函数,该损失函数是一个判断目标是否为小目标的二元分类损失。

接着,在进行特征图拼接操作时插入通道注意力模块,使得模型可以学习为不同尺度的特征图赋予不同的权重。

然后,拼接后的图像特征分别经过一层3×3的卷积层和两层步长为2的反卷积层,生成一张概率图和一张阈值图。最后根据预测的概率图和阈值图,利用可微分的二值化得到近似的二值图生成精确的文本框,返回该文本框的坐标信息。计算公式如下:

其中,B为近似的二值图;P为网络生成的概率图;T为网络生成阈值图,l为一种放大因子,根据实验结果设定为50。

步骤3.2:通过OCR模块中的文本识别网络识别所有文本区域内的文本内容。

将步骤3.1得到的文本区域输入给卷积循环神经网络,对文本内容进行识别。首先经过检测定位后文本区域图像进入卷积层,卷积网络将原始图像转化成特征序列后输入给循环神经网络,这里的循环神经网络为深度双向长短期记忆网络(LSTM)。循环神经网络处理图像的特征序列后就会给出文本的预测内容。

步骤3.3:根据OCR模块得到的文本检测框坐标和内容,对敏感信息进行脱敏处理。通过基于序列匹配的算法,将敏感信息与OCR识别结果中的每个文本进行比较,计算它们之间的编辑距离,对编辑距离最短的词进行遮盖。

编辑距离是指,将一个字符串变成另一个字符串所需的最少编辑次数,其中允许的编辑操作包括:插入、删除、替换一个字符。将步骤3.2中检测识别的结果的文本与敏感信息进行序列匹配,结果为一个候选文本列表,并按每个文本与敏感信息的编辑距离升序排列,其中列表的首项与敏感信息的编辑距离最短,作为待处理文本。

根据敏感信息和待处理文本的字符串长度,选择不同的方式对其进行脱敏处理:如果待处理文本长度大于敏感信息长度,则将待处理文本所在的矩形区域遮盖;如果待处理文本长度小于敏感信息长度,则将待处理文本所在的矩形区域与候选文本列表中下一个文本所在的矩形区域联合遮盖;如果敏感信息文本与待处理文本长度相等,或敏感信息为待处理文本加上冒号等,则将待处理文本所在的矩形区域加长到两倍并遮盖。

步骤3.4:根据OCR模块得到的文本检测框坐标和内容,找到对应三线表表头中的“结果”字段的检测框,裁剪该检测框以左所有区域A1和该检测框所在列的区域A2,其中区域A1包括项目中文名、项目英文名等重要项目名称信息,区域A2包括项目名称对应的化验结果。

整理所有的检测识别结果,其数据格式为[‘文本内容’,(x1,y1,x2,y2),置信度],其中(x1,y1)和(x2,y2)分别是文本区域框的左上角和右下角的坐标。从检测识别结果中,搜索出“文本内容”为“结果”的文本框,提取出该文本框的坐标信息,提供给后续裁剪步骤。

根据检测识别内容为“结果”的文本框的坐标进行第二次裁剪,将原化验单图像分别切割成同时包含“(检测)项目”所在列和“结果”所在列的区域和仅包含“结果”所在列的区域,假设“结果”的坐标信息为(x11,y11,x12,y12)。其中,在计算机视觉领域中,将图片左上角作为二维坐标系的原点,将水平地从左到右作为x轴正方向,将竖直地从上到下作为y轴正方向。因此结合实验微调取值范围后,截取[y11:,:x12]作为同时包含“(检测)项目”所在列和“结果”所在列的区域为区域A1,截取[y11:,x11:x12]作为仅包含“结果”所在列的区域为区域A2,如图4所示。

步骤4:化验单图像第二次通过OCR模块,对裁剪区域进行文本检测和识别,获得化验报告单的结构化识别结果,具体实现过程为:

步骤4.1:将步骤3所得同时包含“项目”列和“结果”列的图像A1输入到级联稀疏查询的可微分二值化文本检测网络-卷积循环神经网络中进行文本区域识别,得到区域内所有文本的检测识别结果。

步骤4.2:通过结构化输出模块,调用pandas工具包,将文本识别结果按照图像中的相对位置写入到excel表格文件中,形成结构化的表单数据。

步骤4.3:将仅包含“结果”列的图片A2输入给级联稀疏查询的可微分二值化文本检测网络-卷积循环神经网络,得到“结果”列中所有文本的识别结果。调用pandas工具包将其转化为单列的数据框并写入到excel表格文件中。

步骤5:自动检查并整理项目名称所在的结构化表格,具体实现过程如下:

步骤5.1:合并所有列的内容到第一列,并统一表格信息为字符串类型。

步骤5.2:正确合并一列中所有单元格的内容,将单独成一行的英文和数字和中文粘合。

步骤5.3:正确分离一列中所有单元格的内容,将本该写成两项却粘合在同一行的两个检测项目名分开。

步骤6:通过AC自动机和BK树,对整理后的结构化表格中的项目信息进行自动纠错,具体实现过程如下:

步骤6.1:首先收集总体的项目名称,建立医疗化验单项目名称字典,对步骤5得到的结果进行后处理,利用AC自动机获取项目名。

步骤6.1.1:建立字典树。

字典树是一种有序树,用于保存关联数组。一个节点的所有子孙都有相同的前缀,也就是这个节点对应的字符串,子节点代表的字符串是由节点本身的原始字符串,以及通往该子节点路径上所有的字符组成的,根节点对应空字符串。这里的思路是,需要找到一个前缀,在保证其与某个后缀相等的前提下,使得当前匹配的进度最大地保留下来。把同样的思想挪到字典树上,需要找的是:一个节点,其代表的字符串是当前节点代表的字符串的最长后缀。将正确的项目名信息库统一为字符串类型并记作P串,将步骤4所得表格信息记作T串。依据AC自动机根据输入的字符串逐字节进行状态跳转,直到完成整个输入的检测方法,建立字典树,如图5所示。

步骤6.1.2:建立fail指针和exit数组。

构建fail表之前,需要明确每个节点的父节点、子节点列表、fail节点、节点值以及是否为尾节点这几个属性,如图6所示。fail表中保存了失配时的fail指针,fail指针就是当前位置失配以后能够跳转继续进行匹配的字符位置,达到匹配过程中不需要回溯的效果。构建过程使用了BFS(宽度优先搜索)算法。fail指针指向字典树中被访问节点的最长后缀。根据fail指针的定义,将所建字典树层次遍历,记录每一个可识别状态的fail指针,便于之后识别过程的进行。Exit数组中存储项目字符串长度信息,便于识别后项目名称的正确输出,如图7所示。

步骤6.1.3:模式匹配。匹配的核心是从目标串从头逐个开始,在AC自动机中进行匹配,匹配上的则计数,若未匹配上则跳转失配位置进行尝试匹配,直到全部匹配完成。匹配的代码逻辑为定义p指针一开始指向root,然后开始遍历目标串的每个字符。遍历过程如下:

(1)假设当前目标串字符为i,当满足条件1(i不在p子节点中并且p也不是root节点)时,循环找p的fail节点直到不满足条件1;

(2)i在p子节点中,则p指向该节点,否则指向root节点;

(3)定义temp指向p,开始尝试匹配,若temp不是root节点,则进入循环否则跳出:

(3.a)若temp是模式串串尾,判断temp是否已经匹配成功过,若未匹配成功过则记该模式串匹配成功次数为1,否则在原来的成功匹配次数上加一;

(3.b)将temp指向temp.fail。

依次识别T串中的字符,若T串符合,则按照AC自动机进行检测;若模式串在字典树上进行匹配时,与当前节点的关键字不能继续匹配,则应该去当前节点的fail指针所指向的节点继续进行匹配。匹配成功后,根据exit数组返回值得到模式串的长度,从而输出项目名,如图8所示。

步骤6.2:利用化验报告单的所有正确项目名称建立BK树,对于经过AC自动机提取过OCR识别的正确结果后剩下的不正确项目名称,从所建的BK树中快速找出和出错项目名称匹配程度较高的那一项正确项目名称,达成纠错的目的。

步骤6.2.1:建立BK树。

用正确项目名称来建立BK树,然后寻找合适的编辑距离,对于不正确的项目名称使用BK树算法从所建的BK树中匹配对应的正确项目名称。具体BK树建立步骤如下(以图9为例,箭头上方数字为编辑距离):

(1)从录入的词中随机取一个词作为根节点,例如“嗜中性粒细胞绝对值”;

(2)随机继续选择下一个词语,例如“嗜酸性粒细胞绝对值”,计算它们之间的编辑距离,将“嗜酸性粒细胞绝对值”节点作为“嗜中性粒细胞绝对值”根节点新的分支;

(3)继续选择下一个词语,例如“绝对嗜碱性粒细胞值”,仍然从根节点开始遍历,计算“绝对嗜碱性粒细胞值”和“嗜中性粒细胞绝对值”的编辑距离,此时发现编辑距离1的分支已经存在了(“嗜酸性粒细胞绝对值”与“嗜中性粒细胞绝对值”的编辑距离为1)。此时,沿着这条分支往下走,计算“绝对嗜碱性粒细胞值”与“嗜酸性粒细胞绝对值”的编辑距离,而“嗜酸性粒细胞绝对值”节点没有编辑距离为1的分支,因此将“绝对嗜碱性粒细胞值”挂载到“嗜酸性粒细胞绝对值”节点下,作为“嗜酸性粒细胞绝对值”节点的新分支。

(4)依次选择余下的词语,按照步骤2、3不断扩展,从而构造出BK树。

这样构造出来的BK树有以下特征:根节点“嗜中性粒细胞绝对值”分支1下的所有子孙节点和它的编辑距离都为1,分支2下的所有子孙节点和它的编辑距离都为2;同理,节点“嗜酸性粒细胞绝对值”分支1下的所有子孙节点和它的编辑距离都为1。这个性质在借助BK树进行查询时可以减少计算量。

步骤6.2.2:利用BK树进行查询纠错。

BK树的核心思想为:令d(x,y)表示字符串x到y的编辑距离,有d(x,y)+d(y,z)≥d(x,z)(从x变到z所需的最小编辑次数不会超过x先变成y再变成z的最小编辑次数,该性质被称为三角不等式,两边之和必然大于第三边)。

如果需要返回与目标词编辑距离不超过n的词,若找到查询词语所在的节点,则由上文中构造BK树的性质可知分支小于n的子树上的所有节点与查询词的编辑距离都小于n。

另一部分是查询词的祖先节点或其他分支上,使用上面所说的BK树的核心思想三角不等式进行优化计算量。进一步,目标是找到d(q,t)≤n的所有词语,其中q代表查询词,t代表目标词,n是设定的编辑距离阈值。利用三角不等式有d(r,t)≤d+d(q,t)≤d+n和d(r,t)≥d-d(q,t)≥d-n和其中d代表目标词t与其他节点r例如根节点的编辑距离,于是d–n≤d(r,t)≤d+n,这样只需要递归查找每个子节点标号为d-n到d+n(包含)的边,由于n通常很小,因此每次与某个节点进行比较时都可以排除很多子树。

步骤7:合并项目信息在一个表格中并将结果输出为JSON格式,具体实现过程为:

统计项目个数,并从项目信息识别结果的表格里取出相应个数的数据,将识别出的项目信息合并在同一个新的表格当中,最后将整理好的新表格以JSON格式输出。

以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。

相关技术
  • 一种化验报告单自动识别方法
  • 一种基于深度学习的通用证件结构化识别方法和系统
技术分类

06120116483569