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

一种题目识别方法、装置、电子设备及计算机存储介质

文献发布时间:2023-06-19 10:27:30


一种题目识别方法、装置、电子设备及计算机存储介质

技术领域

本申请实施例涉及图像识别技术领域,尤其涉及一种题目识别方法、装置、电子设备及计算机存储介质。

背景技术

随着在线教育的快速发展,众多教学辅助类产品应运而生。在教学过程中,上述产品可以为老师提供技术支持,减轻老师的工作量,例如:可以实现题目的自动批改、题目搜索等。对包含题目的图像进行题目识别,是实现题目批改、题目讲解等的基础。

目前,主要是通过人工来进行题目识别的,因此,题目识别效率低下且成本较高。

发明内容

本申请实施例的目的在于提出一种题目识别方法、装置、电子设备及计算机存储介质,用于解决现有技术中存在的题目识别效率低且成本高的问题。

根据本申请实施例的第一方面,提供了一种题目识别方法,所述方法包括:

获取包含题目的目标图像;

将所述目标图像输入预先训练完成的检测模型,通过所述检测模型的第一检测分支得到所述题目的题目区域;通过所述检测模型的第二检测分支得到所述题目中的打印体文本的文本区域;通过所述检测模型的第三检测分支得到所述题目中的手写体文本的文本区域;

基于所述题目区域进行题目类型识别,获得对应的题目类型信息;并且,基于所述打印体文本的文本区域以及所述手写体文本的文本区域,分别进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果;

根据所述题目类型信息、所述打印体文本识别结果和所述手写体文本识别结果,进行题目构建,获得与所述目标图像中的题目对应的构建题目。

根据本申请实施例的第二方面,提供了一种题目识别装置,所述装置包括:

目标图像获取模块,用于获取包含题目的目标图像;

区域检测模块,用于将所述目标图像输入预先训练完成的检测模型,通过所述检测模型的第一检测分支得到所述题目的题目区域;通过所述检测模型的第二检测分支得到所述题目中的打印体文本的文本区域;通过所述检测模型的第三检测分支得到所述题目中的手写体文本的文本区域;

题目类型及文本识别模块,用于基于所述题目区域进行题目类型识别,获得对应的题目类型信息;并且,基于所述打印体文本的文本区域以及所述手写体文本的文本区域,分别进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果;

题目构建模块,用于根据所述题目类型信息、所述打印体文本识别结果和所述手写体文本识别结果,进行题目构建,获得与所述目标图像中的题目对应的构建题目。

根据本申请实施例的第三方面,提供了一种电子设备,所述设备包括:一个或多个处理器;计算机可读介质,配置为存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的题目识别方法。

根据本申请实施例的第四方面,提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的题目识别方法。

根据本申请实施例提供的题目识别方法、装置、电子设备及计算机存储介质,获取包含待批改题目的目标图像;将所述目标图像输入预先训练完成的检测模型,通过所述检测模型的第一检测分支得到所述待批改题目的题目区域;通过所述检测模型的第二检测分支得到所述待批改题目中的打印体文本的文本区域;通过所述检测模型的第三检测分支得到所述待批改题目中的手写体文本的文本区域;基于所述题目区域进行题目类型识别,获得对应的题目类型信息;并且,基于所述打印体文本的文本区域以及所述手写体文本的文本区域,分别进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果;根据所述题目类型信息、所述打印体文本识别结果和所述手写体文本识别结果,进行题目构建,获得与所述目标图像中的题目对应的构建题目。

本申请实施例中,并不是通过人工来进行题目识别的,而是先通过检测模型的三个检测分支自动得到题目区域、打印体文本的文本区域以及手写体文本的文本区域,再对待批改题目自动进行题目类别识别和文本识别,根据得到的题目类型信息、所述文本区域以及文本识别结果进行题目构建,最终自动获得构建题目,完成对题目的识别过程。与现有技术相比,本申请实施例中的题目识别方法无需人工参与,实现了题目识别的自动化,因此,提高了题目识别的效率、降低了识别成本。

同时,与现有的仅包含一个检测分支的检测模型相比,本申请实施例中采用改进了的具有三个检测分支的检测模型对目标图像同时进行题目区域、打印体文本的文本区域以及手写体文本的文本区域三种类型的检测。由于上述三种类型的检测对输入特征的需求具有一定的共性,因此,与分别采用三个不同的检测模型来获得上述三个区域的方式相比,本申请实施例中采用一个检测模型,同时得到上述三种区域的方式,可以有效提高检测的效率,进而,提高了题目识别的整体效率。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1为根据本申请实施例一的一种题目识别方法的步骤流程图;

图2为包含题目的目标图像示意图;

图3为根据本申请实施例二的一种题目识别方法的步骤流程图;

图4为根据本申请实施例二提供的题目识别流程的示意图;

图5为本申请实施例三中题目识别装置的结构示意图;

图6为本申请实施例四中电子设备的结构示意图;

图7为本申请实施例五中电子设备的硬件结构。

具体实施方式

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅配置为解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

实施例一

参照图1,图1为根据本申请实施例一的一种题目识别方法的步骤流程图。

本申请实施例的题目识别方法包括以下步骤:

步骤101,获取包含题目的目标图像。

本申请实施例中的题目识别方法可适用于各种类型题目的识别,例如,数学作业中较为常见的:普通横式计算题、为使计算简便而在计算过程中列一道竖直式子的竖式计算题、把计算过程完整写出来的脱式计算题(也叫递等式计算题)等;又如,较为特殊的:树状计算题、运算变式题等;还如:图2所示目标图像中包含的无法定义出准确类型的题目等等。

本步骤的目标图像中,既可以包含打印体文本,也可以包含手写体文本。上述打印体文本可以为题目中的题干部分,手写体文本可以为学生或者题目作答者根据题干部分,进行作答之后的答案部分。

步骤102,将目标图像输入预先训练完成的检测模型,通过检测模型的第一检测分支得到题目的题目区域;通过检测模型的第二检测分支得到题目中的打印体文本的文本区域;通过检测模型的第三检测分支得到题目中的手写体文本的文本区域。

本申请实施例中,检测模型可以为任意的具有上述第一检测分支、第二检测分支以及第三检测分支的模型,对于采用的检测模型的具体结构,此处不做限定。

较优地,检测模型可以为基于CenterNet模型改进的具有上述3个检测分支的CenterNet模型。现有的CenterNet模型通常仅具有1个检测头,也就是说,仅能进行一种类型的检测,本申请实施例中,可以基于现有CenterNet模型进行如下改进:在原来的基础上再增加2个检测头,也就是说,将原来的具有1个检测头的CenterNet模型改进为具有3个检测分支的CenterNet模型,以使得通过改进后的CenterNet模型可以得到3个区域:题目区域、打印体文本的文本区域以及打印体文本的文本区域。CenterNet模型的结构较为简单,同时,只需通过全卷积的方法即可实现对目标的检测,而无需进行NMS(Non-MaximumSuppression,非极大值抑制)等复杂操作,因此,使用基于现有CenterNet模型改进的具有上述3个检测分支的CenterNet模型作为检测模型可以在保证检测精度的同时,提高检测效率。

当然,检测模型也可以为具有上述3个检测分支的SSD模型,或者,检测模型还可以为具有上述3个检测分支的其他模型等等。在训练过程中,上述3个检测分支可以使用相同的损失函数和训练方式。

通过检测模型的第一检测分支可以得到题目的题目区域,也就是目标图像中整个题目所在的区域;通过检测模型的第二检测分支得到题目中的打印体文本的文本区域,也就是说,题目中各个打印体文本所在的文本区域;通过检测模型的第三检测分支得到题目中的手写体文本的文本区域,即:题目中各个手写体文本所在的文本区域。

本申请实施例中,通过一个检测模型,同时进行了三种类型的检测,分别得到了三种区域:题目区域、打印体文本的文本区域以及手写体文本的文本区域。从模型计算的原理角度出发,由于三种类型的检测对输入特征的需求具有一定的共性,因此,与分别采用不同的检测模型来获得上述区域的方式相比,本申请实施例中采用一个检测模型,同时得到上述三种区域的方式,可以有效提高检测的效率。

另外,与采用同一模型同时进行检测和分类的方式相比,本申请实施例中的检测模型在进行区域检测时,无需区分不同的题目类型,弱化了题目类型的区别,可以提高检测的精度和速度。

步骤103,基于题目区域进行题目类型识别,获得对应的题目类型信息;并且,基于打印体文本的文本区域以及手写体文本的文本区域,分别进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果。

在步骤102得到题目区域、打印体文本的文本区域以及手写体文本的文本区域之后,可以分别基于题目区域进行题目类型识别,获得题目类型信息;基于打印体文本的文本区域以及手写体文本的文本区域,分别进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果。

本申请实施例中,针对题目类型识别操作和文本识别操作的执行顺序不做限定,例如:可以先执行题目类型识别操作,获得对应的题目类型信息,再进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果;也可以先进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果,再进行题目类型识别操作,获得对应的题目类型信息;另外,为了提高题目识别的速度,还可以并行执行题目类型识别操作和文本识别操作,以分别获得对应的题目类型信息和对应的打印体文本识别结果以及手写体文本识别结果。

步骤104,根据题目类型信息、打印体文本识别结果和手写体文本识别结果,进行题目构建,获得与目标图像中的题目对应的构建题目。

例如:在步骤102中得到了题目中的打印体文本的文本区域和手写体文本的文本区域;在步骤103中获得了目标图像中题目的题目类型为树状计算题,同时,也得到了各打印体文本识别结果和各手写体文本识别结果,则可以先根据题目中打印体文本的文本区域和手写体文本的文本区域,确定出该树状计算题中,哪些文本区域为根节点区域,哪些文本区域为子节点区域;接下来再根据树状计算题的运算规则:子节点之和等于根节点,以及上述得到的文本识别结果进行题目构建,获得与目标图像中的题目对应的构建题目。

本申请实施例中,并不是通过人工来进行题目识别的,而是先通过检测模型的三个检测分支自动得到题目区域、打印体文本的文本区域以及手写体文本的文本区域,再对待批改题目自动进行题目类别识别和文本识别,根据得到的题目类型信息、文本区域以及文本识别结果进行题目构建,最终自动获得构建题目,完成对题目的识别过程。与现有技术相比,本申请实施例中的题目识别方法无需人工参与,实现了题目识别的自动化,因此,提高了题目识别的效率、降低了识别成本。

另外,本申请实施例中,检测模型只用于进行检测,而不进行题目类型的识别。并且,在检测完成之后,才基于检测模型得到的题目区域进行题目类型识别,获得对应的题目类型信息。因此,在检测模型训练完成后,即便有新的题目类型出现,此时,也无需对训练完成的检测模型进行重新训练,而只需对题目类型识别的相关内容进行调整,也就是说,本申请实施例可以有效避免全量开发,实现增量开发。当出现新的题目类型时,与将题目区域检测和题目类型识别集中于同一模型中的方式相比,本申请实施例可以有效减少开发工作量,提高开发效率,同时,节约开发成本。

本申请实施例的题目识别方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、PC机、甚至高性能的移动终端等。

实施例二

参照图3,图3为根据本申请实施例二的一种题目识别方法的步骤流程图。

本申请实施例的题目识别方法基于预先训练完成的检测模型实现,为便于说明,以下首先对该检测模型进行简要说明。本申请实施例中,检测模型可以包括:特征提取部分;并行连接于特征提取部分之后的第一检测分支、第二检测分支以及第三检测分支。

其中,特征提取部分,用于对目标图像进行特征提取,得到目标图像对应的图像特征;第一检测分支,用于基于图像特征进行题目区域预测,得到题目的题目区域;第二检测分支,用于基于图像特征进行打印体文本区域预测,得到题目中的打印体文本的文本区域;第三检测分支,用于基于图像特征进行手写体文本区域预测,得到题目中的手写体文本的文本区域。

基于此,本申请实施例的题目识别方法包括以下步骤:

步骤301,获取包含题目的目标图像。

本申请实施例中的题目识别方法可适用于各种类型题目的识别,例如,数学作业中较为常见的:普通横式计算、为使计算简便而在计算过程中列一道竖直式子的竖式计算、把计算过程完整写出来的脱式计算(也叫递等式计算)等;又如,较为特殊的:树状计算题、运算变式题等;还如:图2所示目标图像中包含的无法定义出准确类型的题目等等。

本步骤的目标图像中,既可以包含打印体文本,也可以包含手写体文本。上述打印体文本可以为题目中的题干部分,手写体文本可以为学生或者题目作答者根据题干部分,进行作答之后的答案部分。

步骤302,将目标图像输入预先训练完成的检测模型,通过检测模型中的特征提取部分对目标图像进行特征提取,得到目标图像对应的图像特征。

可选地,在其中一些实施例中,特征提取部分可以为包含多个残差块的残差网络;

将目标图像输入预先训练完成的检测模型,通过检测模型中的特征提取部分对目标图像进行特征提取,得到目标图像对应的图像特征,包括:

将目标图像输入预先训练完成的检测模型中的残差网络,通过残差网络中的各残差块分别得到一个与目标图像对应的初始图像特征;

对多个初始图像特征进行特征融合,得到图像特征。

采用包含多个残差块的残差网络进行特征提取,可以提取到多个目标图像对应的初始图像特征,通过对上述多个初始图像特征进行融合,可以使得得到的图像特征更能准确地表征目标图像的特征。

例如,检测模型可以为CenterNet模型,特征提取部分可以为由4个残差块组成的Resnet18。将目标图像输入预先训练完成的CenterNet模型中的Resnet18,通过Resnet18中的各残差块分别得到一个与目标图像对应的初始图像特征,例如:第一个残差块输出一个大小为目标图像的1/4的初始特征图;第二个残差块输出一个大小为目标图像的1/8的初始特征图;第三个残差块输出一个大小为目标图像的1/16的初始特征图;第四个残差块输出一个大小为目标图像的1/32的初始特征图。

由于上述4个初始特征图的尺寸不同,为便于对初始特征图进行融合,可以先分别对上述4个初始特征图进行上采样处理,以得到尺寸相同的初始特征图(例如,上采样处理后得到的特征图尺寸可以均为1/4);再对采样处理后的特征图进行特征融合,例如:对4个特征图中相同位置的元素分别进行乘法运算,得到融合后的图像特征。该融合后的图像特征可以作为检测模型三个检测分支的输入,通过上述三个检测分支分别得到题目区域、题目中的打印体文本的文本区域以及题目中的手写体文本的文本区域。

步骤303,通过第一检测分支,基于图像特征进行题目区域预测,得到题目的题目区域;通过第二检测分支,基于图像特征进行打印体文本区域预测,得到题目中的打印体文本的文本区域;通过第三检测分支,基于图像特征进行手写体文本区域预测,得到题目中的手写体文本的文本区域。

将步骤302中得到的图像特征,分别输入至检测模型的上述三个检测分支,每个检测分支均可以输出一组通道数为6的特征映射图,分别表示中心点的得分图(得分图中的每个像素点的值都在0-1之间,表征该像素点为物体中心点的概率)、中心点的偏移量(一个是X轴偏移量,一个是Y轴偏移量)、中心点对应的矩形区域的长度和宽度,以及上述矩形区域的旋转角度。

具体的:第一检测分支输出的通道数为6的特征映射图,分别表示题目区域中心点的得分图、题目区域中心点的偏移量、题目区域中心点对应的矩形区域的长度和宽度,以及题目区域中心点对应的矩形区域的旋转角度;第二检测分支输出的通道数为6的特征映射图,分别表示打印体文本的文本区域中心点的得分图、打印体文本的文本区域中心点的偏移量、打印体文本的文本区域中心点对应的矩形区域的长度和宽度,以及打印体文本的文本区域中心点对应的矩形区域的旋转角度;第三检测分支输出的通道数为6的特征映射图,分别表示手写体文本的文本区域中心点的得分图、手写体文本的文本区域中心点的偏移量、手写体文本的文本区域中心点对应的矩形区域的长度和宽度,以及手写体文本的文本区域中心点对应的矩形区域的旋转角度。

可选地,在其中一些实施例中,检测模型可以通过以下方式进行预先训练:

获取包含样本题目的第一训练图像样本、第一训练图像样本中样本题目的样本题目区域、样本题目中的打印体文本的文本区域以及样本题目中的手写体文本的文本区域;

将第一训练图像样本输入初始检测模型;

通过初始检测模型的第一检测分支得到样本题目预测区域;通过初始检测模型的第二检测分支得到样本题目中的打印体文本的文本预测区域;通过初始检测模型的第三检测分支得到样本题目中的手写体文本的文本预测区域;

基于样本题目预测区域与样本题目区域,得到与第一检测分支对应的第一损失值;基于样本题目中的打印体文本的文本预测区域与样本题目中的打印体文本的文本区域,得到与第二检测分支对应的第二损失值;基于样本题目中的手写体文本的文本预测区域与样本题目中的手写体文本的文本区域,得到与第三检测分支对应的第三损失值;

对第一损失值、第二损失值以及第三损失值进行数值融合,得到融合损失值;

根据融合损失值,对初始检测模型进行训练,得到检测模型。

上述训练过程中,第一损失值、第二损失值以及第三损失值分别为与第一检测分支对应的损失值、与第二检测分支对应的损失值以及与第三检测分支对应的损失值。就每个检测分支而言,与该检测分支对应的损失值等于6个通道各自的损失值之和,其中,就表示中心点的得分图的通道而言,该通道可以通过Focal Loss损失函数来计算损失值,其余通道均可以通过L1平滑损失函数来计算损失值。

由于检测模型中三个检测分支输出的检测结果分别表征不同的含义,为了均衡各个检测分支的损失值对整个检测模型损失值的影响,可以分别为各个检测分支的损失值设置权重系数,对应地,对第一损失值、第二损失值以及第三损失值进行数值融合,得到融合损失值,可以包括:分别计算第一损失值与第一权重系数的乘积、第二损失值与第二权重系数的乘积,以及第三损失值与第三权重系数的乘积,对上述三个乘积进行加法运算,得到融合损失值。该融合损失值即为整个检测模型的损失值。

上述第一权重系数、第二权重系数以及第三权重系数可以根据经验或者实际情况进行设定,本申请实施例中,对于第一权重系数、第二权重系数以及第三权重系数的具体取值不做限定。示例性地,可以将第一权重系数设定为5、第二权重系数和第三权重系数均设定为1。

步骤304,通过预先训练完成的分类模型,基于题目区域进行题目类型识别,获得对应的题目类型信息;并且,通过预先训练完成的识别模型,基于打印体文本的文本区域以及手写体文本的文本区域,分别进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果;其中,分类模型和识别模型为并行执行的两个模型。

本申请实施例中,在通过检测模型得到题目区域、打印体文本的文本区题目类型识别域以及手写体文本的文本区域之后,采用两个并行执行的模型,并行进行题目类型识别操作和文本识别操作。由于执行上述两种操作的模型是并行执行的,因此,可以同时获取到题目类型信息、打印体文本识别结果和手写体文本识别结果,因此,本申请实施例可以进一步提高题目识别的效率。

本申请实施例中,分类模型可以为任意的分类模型,对于采用的分类模型的具体结构,此处不做限定,例如:可以采用Resnet18作为分类模型,基于题目区域进行题目类型识别,获得对应的题目类型信息,Resnet18的输出层包含的节点数即为分类模型能够区分的类型总数量。

可选地,在本申请的一种实施例中,通过预先训练完成的分类模型,基于题目区域进行题目类型识别,获得对应的题目类型信息可以包括:

根据题目区域,对目标图像进行截图,获得题目区域图像;

将题目区域图像输入预先训练完成的分类模型进行题目分类,得到对应的题目类型信息。

在进行题目类别识别之前,先根据题目区域,对目标图像进行截图,获得题目区域图像,再对题目区域图像进行题目分类,可以避免因将目标图像中除题目区域之外的其他无关区域也输入至分类模型,而造成的题目分类过程中数据计算量较大,分类效率较低的问题。

可选地,在本申请的一种实施例中,通过预先训练完成的识别模型,基于打印体文本的文本区域以及手写体文本的文本区域,分别进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果,可以包括:

分别根据打印体文本的文本区域以及手写体文本的文本区域,对目标图像进行截图,获得对应的打印体文本区域图像和手写体文本区域图像;

分别将打印体文本区域图像和手写体文本区域图像输入预先训练完成的识别模型,进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果。

在进行文本识别之前,先根据打印体文本的文本区域以及手写体文本的文本区域,对目标图像进行截图,获得打印体文本区域图像和手写体文本区域图像,再分别对打印体文本区域图像和手写体文本区域图像进行文本识别,可以避免因将目标图像中除文本区域之外的其他无关区域也输入至识别模型,而造成的文本识别过程中数据计算量较大,识别效率较低的问题。

可选地,在本申请的一种实施例中,分类模型可以通过以下方式进行预先训练:

获取包含样本题目的第二训练图像样本以及样本题目类型信息;

将第二训练图像样本输入初始分类模型,并通过初始分类模型得到样本题目的题目类型预测信息;

根据题目类型预测信息和样本题目类型信息,采用多分类交叉熵损失函数,获得第四损失值;

根据第四损失值,对初始分类模型进行训练,得到分类模型。

步骤305,根据题目类型信息、打印体文本识别结果和手写体文本识别结果,进行题目构建,获得与目标图像中的题目对应的构建题目。

例如:在步骤303中得到了题目中的打印体文本的文本区域和手写体文本的文本区域,在步骤304中获得了目标图像中题目的题目类型为树状计算题,同时,也得到了各打印体文本识别结果和各手写体文本识别结果,则可以先根据题目中打印体文本的文本区域和手写体文本的文本区域,确定出该树状计算题中,哪些文本区域为根节点区域,哪些文本区域为子节点区域;接下来再根据树状计算题的运算规则:子节点之和等于根节点,以及上述得到的文本识别结果进行题目构建,获得与目标图像中的题目对应的构建题目。

步骤306,根据构建题目进行题目批改,得到批改结果。

在得到与目标图像中的题目对应的构建题目之后,可以根据题目的运算规则,计算出构建题目中各手写体文本处实际应该填写的正确文本内容,然后将正确文本内容与各手写体文本识别结果进行对比,进行题目批改,得到批改结果。

本申请实施例中,在完成题目构建,得到构建题目之后,还根据构建题目进行题目的自动批改,得到了批改结果,与需要依靠人工进行题目批改的方式相比,本申请实施例可以有效提升题目批改的效率,节约题目批改的成本。

图3所示实施例中,并不是通过人工来进行题目识别的,而是先通过检测模型的三个检测分支自动得到题目区域、打印体文本的文本区域以及手写体文本的文本区域,再对待批改题目自动进行题目类别识别和文本识别,根据得到的题目类型信息、文本区域以及文本识别结果进行题目构建,最终自动获得构建题目,完成对题目的识别过程。与现有技术相比,本申请实施例中的题目识别方法无需人工参与,实现了题目识别的自动化,因此,提高了题目识别的效率、降低了识别成本。

本申请实施例中,检测模型只用于进行检测,而不进行题目类型的识别。并且,在检测完成之后,才基于检测模型得到的题目区域,通过分类模型进行题目类型识别,获得对应的题目类型信息。因此,在检测模型训练完成后,即便有新的题目类型出现,此时,也无需对训练完成的检测模型进行重新训练,而只需对分类模型进行调整,也就是说,本申请实施例可以有效避免全量开发,实现增量开发。当出现新的题目类型时,与将题目区域检测和题目类型识别集中于同一模型中的方式相比,本申请实施例可以有效减少开发工作量,提高开发效率,同时,节约开发成本。

同时,本申请实施例中,在通过检测模型得到题目区域、打印体文本的文本区文本区域以及手写体文本的文本区域之后,采用两个并行执行的模型,并行进行题目类型识别操作和文本识别操作。由于执行上述两种操作的模型是并行执行的,因此,可以同时获取到题目类型信息、打印体文本识别结果和手写体文本识别结果,因此,本申请实施例可以进一步提高题目识别的效率。

另外,本申请实施例中,在完成题目构建,得到构建题目之后,还根据构建题目进行题目的自动批改,得到了批改结果,与需要依靠人工进行题目批改的方式相比,本申请实施例还可以有效提升题目批改的效率,节约题目批改的成本。

本申请实施例的题目识别方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、PC机、甚至高性能的移动终端等。

参见图4,图4为根据本申请实施例二提供的题目识别流程的示意图;以下结合图3对本申请实施例二提供的题目识别流程进行简要说明,主要包括:

第一步,收集大量的包含样本题目的训练图像样本。具体的:可以收集大量的分别包含有不同类型题目的图像作为训练图像样本。

第二步,训练图像样本标注。具体的:可以对第一步收集到的训练图像样本进行标注,针对每张训练图像样本而言,可以将该训练图像样本中题目所在的题目区域框起来,同时,将该训练图像样本中各打印体文本和各手写体文本所在的文本区域框起来,作为检测模型的训练数据;并且,对每个题目根据预先定义好的题目类型进行分类,作为分类模型的训练数据;另外,对各打印体文本的文本内容和各手写体文本的文本内容进行标注,作为识别模型的训练数据。

第三步,构建具有三个检测分支的CenterNet模型作为检测模型。整个检测模型的损失值为三个检测分支各自的损失值之和,检测模型的特征提取部分可以为由4个残差块组成的Resnet18。

具体的:将目标图像输入预先训练完成的CenterNet模型中的Resnet18,通过Resnet18中的各残差块分别得到一个大小为目标图像的1/4的初始特征图、一个大小为目标图像的1/8的初始特征图、一个大小为目标图像的1/16的初始特征图,以及一个大小为目标图像的1/32的初始特征图;分别对上述4个初始特征图进行上采样处理,以得到尺寸相同的初始特征图;再对采样处理后的4个特征图中相同位置的元素分别进行乘法运算,得到融合后的图像特征;将该融合后的图像特征分别可以作为CenterNet模型三个检测分支的输入,每个检测分支均输出一组通道数为6的特征映射图,分别表示中心点的得分图、中心点的偏移量、中心点对应的矩形区域的长度和宽度,以及上述矩形区域的旋转角度。

训练时,针对每个检测分支而言,表示中心点的得分图的通道可以采用FocalLoss损失函数来计算损失值,其余通道均可以采用L1平滑损失函数来计算损失值;分别为每个检测分支对应的损失值设置一个权重系数,将每个检测分支的损失值与对应权重系数相乘,共得到三个乘积,对得到的三个乘积求和,得到整个CenterNet模型的损失值。

第四步,使用Resnet18作为分类模型,Resnet18的输出层包含的节点数即为分类模型能够区分的类型总数量。

第五步,采用CRNN模型作为识别模型。

需要说明的是,该具体流程中以先执行第四步,后执行第五步为例,但本领域技术人员应当明了,在实际应用中第四步和第五步的执行顺序可按任意先后顺序执行,也可并行执行。

第六步,使用第二步中的训练数据分别对CenterNet模型、Resnet18以及CRNN模型进行训练。

需要说明的是,上述第一步至第六步均为训练阶段的步骤,本领域技术人员应当明了,在前向推理阶段,无需执行上述步骤。

第七步,前向推理阶段,获取包含题目的目标图像并输入CenterNet模型。

第八步,目标图像经过CenterNet模型,其第一检测分支输出题目区域,根据题目区域,对目标图像进行截图,并将截图送入Resnet18,得到题目类型信息;并行的,第二检测分支和第三检测分支分别输出打印体文本的文本区域以及手写体文本的文本区域,按照上述文本区域对目标图像进行截图,并将截图送入CRNN模型,得到文本识别结果。

第九步,根据题目类型信息、打印体文本识别结果和手写体文本识别结果,进行题目构建,获得与目标图像中的题目对应的构建题目。

第十步,根据构建题目进行题目批改,得到批改结果。具体的:在得到与目标图像中的题目对应的构建题目之后,可以根据题目的运算规则,计算出构建题目中各手写体文本处实际应该填写的正确文本内容,然后将正确文本内容与各手写体文本识别结果进行对比,进行题目批改,得到批改结果。

图4所示的上述题目识别流程中,采用CenterNet模型进行检测,并在检测完成之后,才基于CenterNet模型输出的题目区域,采用Resnet18模型进行题目类型识别,获得对应的题目类型信息。因此,在CenterNet模型训练完成后,即便有新的题目类型出现,也无需对训练完成的CenterNet模型进行重新训练,而只需对Resnet18模型进行调整。图4所示流程可以避免全量开发,实现增量开发,有效减少开发工作量,节约开发成本。

同时,上述流程中采用改进了的具有三个检测分支的CenterNet模型对目标图像同时进行题目区域、打印体文本的文本区域以及手写体文本的文本区域三种类型的检测。由于上述三种类型的检测对输入特征的需求具有一定的共性,因此,采用一个CenterNet模型同时得到上述三种区域,可以有效提高检测的效率,进而,提高了题目识别的整体效率。

另外,上述流程中采用两个并行执行的模型:Resnet18模型和CRNN模型,并行进行题目类型识别操作和文本识别操作。由于执行上述两种操作的Resnet18模型和CRNN模型是并行执行的,可以同时获取到题目类型信息、打印体文本识别结果和手写体文本识别结果,因此,上述流程可以进一步提高题目识别的效率,进而提高了题目批改的效率。

实施例三、

参照图5,图5为本申请实施例三中题目识别装置的结构示意图。

本申请实施例提供的题目识别装置包括:

目标图像获取模块501,用于获取包含题目的目标图像;

区域检测模块502,用于将目标图像输入预先训练完成的检测模型,通过检测模型的第一检测分支得到题目的题目区域;通过检测模型的第二检测分支得到题目中的打印体文本的文本区域;通过检测模型的第三检测分支得到题目中的手写体文本的文本区域;

题目类型及文本识别模块503,用于基于题目区域进行题目类型识别,获得对应的题目类型信息;并且,基于打印体文本的文本区域以及手写体文本的文本区域,分别进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果;

题目构建模块504,用于根据题目类型信息、打印体文本识别结果和手写体文本识别结果,进行题目构建,获得与目标图像中的题目对应的构建题目。

可选地,在本申请的一种实施例中,题目类型及文本识别模块503具体用于:

通过预先训练完成的分类模型,基于题目区域进行题目类型识别,获得对应的题目类型信息;

并且,

通过预先训练完成的识别模型,基于打印体文本的文本区域以及手写体文本的文本区域,分别进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果;

其中,分类模型和识别模型为并行执行的两个模型。

可选地,在本申请的一种实施例中,题目类型及文本识别模块503在执行通过预先训练完成的分类模型,基于题目区域进行题目类型识别,获得对应的题目类型信息的步骤时,具体用于:

根据题目区域,对目标图像进行截图,获得题目区域图像;

将题目区域图像输入预先训练完成的分类模型进行题目分类,得到对应的题目类型信息。

可选地,在本申请的一种实施例中,题目类型及文本识别模块503在执行通过预先训练完成的识别模型,基于打印体文本的文本区域以及手写体文本的文本区域,分别进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果的步骤时,具体用于:

分别根据打印体文本的文本区域以及手写体文本的文本区域,对目标图像进行截图,获得对应的打印体文本区域图像和手写体文本区域图像;

分别将打印体文本区域图像和手写体文本区域图像输入预先训练完成的识别模型,进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果。

可选地,在本申请的一种实施例中,检测模型包括:特征提取部分;并行连接于特征提取部分之后的第一检测分支、第二检测分支以及第三检测分支;

区域检测模块502,具体用于:

将目标图像输入预先训练完成的检测模型,通过检测模型中的特征提取部分对目标图像进行特征提取,得到目标图像对应的图像特征;

通过第一检测分支,基于图像特征进行题目区域预测,得到题目的题目区域;通过第二检测分支,基于图像特征进行打印体文本区域预测,得到题目中的打印体文本的文本区域;通过第三检测分支,基于图像特征进行手写体文本区域预测,得到题目中的手写体文本的文本区域。

可选地,在本申请的一种实施例中,特征提取部分为包含多个残差块的残差网络;

区域检测模块502在执行将目标图像输入预先训练完成的检测模型,通过检测模型中的特征提取部分对目标图像进行特征提取,得到目标图像对应的图像特征的步骤时,具体用于:

将目标图像输入预先训练完成的检测模型中的残差网络,通过残差网络中的各残差块分别得到一个与目标图像对应的初始图像特征;

对多个初始图像特征进行特征融合,得到图像特征。

可选地,在本申请的一种实施例中,装置还包括:

检测模型训练模块,用于:

获取包含样本题目的第一训练图像样本、第一训练图像样本中样本题目的样本题目区域、样本题目中的打印体文本的文本区域以及样本题目中的手写体文本的文本区域;

将第一训练图像样本输入初始检测模型;

通过初始检测模型的第一检测分支得到样本题目预测区域;通过初始检测模型的第二检测分支得到样本题目中的打印体文本的文本预测区域;通过初始检测模型的第三检测分支得到样本题目中的手写体文本的文本预测区域;

基于样本题目预测区域与样本题目区域,得到与第一检测分支对应的第一损失值;基于样本题目中的打印体文本的文本预测区域与样本题目中的打印体文本的文本区域,得到与第二检测分支对应的第二损失值;基于样本题目中的手写体文本的文本预测区域与样本题目中的手写体文本的文本区域,得到与第三检测分支对应的第三损失值;

对第一损失值、第二损失值以及第三损失值进行数值融合,得到融合损失值;

根据融合损失值,对初始检测模型进行训练,得到检测模型。

可选地,在本申请的一种实施例中,装置还包括:

分类模型训练模块,用于:获取包含样本题目的第二训练图像样本以及样本题目类型信息;

将第二训练图像样本输入初始分类模型,并通过初始分类模型得到样本题目的题目类型预测信息;

根据题目类型预测信息和样本题目类型信息,采用多分类交叉熵损失函数,获得第四损失值;

根据第四损失值,对初始分类模型进行训练,得到分类模型。

可选地,在本申请的一种实施例中,装置还包括:

批改结果得到模块,用于根据构建题目进行题目批改,得到批改结果。

本申请实施例的题目识别装置用于实现前述多个方法实施例中相应的题目识别方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本申请实施例的题目识别装置中的各个模块的功能实现均可参照前述方法实施例中的相应部分的描述,在此亦不再赘述。

实施例四、

图6为本申请实施例四中电子设备的结构示意图;该电子设备可以包括:

一个或多个处理器601;

计算机可读介质602,可以配置为存储一个或多个程序,

当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上述实施例一或实施例二的题目识别方法。

实施例五、

图7为本申请实施例五中电子设备的硬件结构;如图7所示,该电子设备的硬件结构可以包括:处理器701,通信接口702,计算机可读介质703和通信总线704;

其中处理器701、通信接口702、计算机可读介质703通过通信总线704完成相互间的通信;

可选地,通信接口702可以为通信模块的接口,如GSM模块的接口;

其中,处理器701具体可以配置为:获取包含题目的目标图像;将目标图像输入预先训练完成的检测模型,通过检测模型的第一检测分支得到题目的题目区域;通过检测模型的第二检测分支得到题目中的打印体文本的文本区域;通过检测模型的第三检测分支得到题目中的手写体文本的文本区域;基于题目区域进行题目类型识别,获得对应的题目类型信息;并且,基于打印体文本的文本区域以及手写体文本的文本区域,分别进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果;根据题目类型信息、打印体文本识别结果和手写体文本识别结果,进行题目构建,获得与目标图像中的题目对应的构建题目。

处理器701可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

计算机可读介质703可以是,但不限于,随机存取存储介质(Random AccessMemory,RAM),只读存储介质(Read Only Memory,ROM),可编程只读存储介质(Programmable Read-Only Memory,PROM),可擦除只读存储介质(Erasable ProgrammableRead-Only Memory,EPROM),电可擦除只读存储介质(Electric Erasable ProgrammableRead-Only Memory,EEPROM)等。

特别地,根据本申请实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含配置为执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分从网络上被下载和安装,和/或从可拆卸介质被安装。在该计算机程序被中央处理单元(CPU)执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读介质例如可以但不限于是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储介质(RAM)、只读存储介质(ROM)、可擦式可编程只读存储介质(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储介质(CD-ROM)、光存储介质件、磁存储介质件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输配置为由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写配置为执行本申请的操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络:包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个配置为实现规定的逻辑功能的可执行指令。上述具体实施例中有特定先后关系,但这些先后关系只是示例性的,在具体实现的时候,这些步骤可能会更少、更多或执行顺序有调整。即在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括目标图像获取模块、区域检测模块、题目类型及文本识别模块以及题目构建模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,目标图像获取模块还可以被描述为“获取包含题目的目标图像的模块”。

作为另一方面,本申请还提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例一或实施例二所描述的题目识别方法。

作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的装置中所包含的;也可以是单独存在,而未装配入该装置中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该装置执行时,使得该装置:获取包含题目的目标图像;将目标图像输入预先训练完成的检测模型,通过检测模型的第一检测分支得到题目的题目区域;通过检测模型的第二检测分支得到题目中的打印体文本的文本区域;通过检测模型的第三检测分支得到题目中的手写体文本的文本区域;基于题目区域进行题目类型识别,获得对应的题目类型信息;并且,基于打印体文本的文本区域以及手写体文本的文本区域,分别进行文本识别,得到对应的打印体文本识别结果和手写体文本识别结果;根据题目类型信息、打印体文本识别结果和手写体文本识别结果,进行题目构建,获得与目标图像中的题目对应的构建题目。

在本公开的各种实施方式中所使用的表述“第一”、“第二”、“所述第一”或“所述第二”可修饰各种部件而与顺序和/或重要性无关,但是这些表述不限制相应部件。以上表述仅配置为将元件与其它元件区分开的目的。例如,第一用户设备和第二用户设备表示不同的用户设备,虽然两者均是用户设备。例如,在不背离本公开的范围的前提下,第一元件可称作第二元件,类似地,第二元件可称作第一元件。

当一个元件(例如,第一元件)称为与另一元件(例如,第二元件)“(可操作地或可通信地)联接”或“(可操作地或可通信地)联接至”另一元件(例如,第二元件)或“连接至”另一元件(例如,第二元件)时,应理解为该一个元件直接连接至该另一元件或者该一个元件经由又一个元件(例如,第三元件)间接连接至该另一个元件。相反,可理解,当元件(例如,第一元件)称为“直接连接”或“直接联接”至另一元件(第二元件)时,则没有元件(例如,第三元件)插入在这两者之间。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

相关技术
  • 一种题目识别方法、装置、电子设备及计算机存储介质
  • 题目识别方法、装置、电子设备及计算机存储介质
技术分类

06120112553084