首页> 中国专利> 计算题批改方法、装置、可读存储介质及电子设备

计算题批改方法、装置、可读存储介质及电子设备

摘要

本公开涉及一种计算题批改方法、装置、可读存储介质及电子设备。方法包括:对待批改的答题图像进行文本识别,得到识别概率最高的K个文本内容作为候选文本内容;分别判定各候选文本内容所表征的算式是否成立;根据判定结果和各候选文本内容对应的识别概率,从K个候选文本内容中确定目标文本内容;根据目标文本内容所表征的算式是否成立的判定结果,对作答内容进行对错判定。这样,可保证目标文本内容的准确性,提升批改准确度,不依赖题库,就能对任意答题图像进行批改。另外,根据目标文本内容所表征的算式是否成立的判定结果,即可实现作答内容的对错判定,无需区分题干和作答内容,也无需区分手写和印刷字符,提升批改效率。

著录项

  • 公开/公告号CN113139472A

    专利类型发明专利

  • 公开/公告日2021-07-20

    原文格式PDF

  • 申请/专利权人 北京智通东方软件科技有限公司;

    申请/专利号CN202110454286.0

  • 发明设计人 郝双;杨明坤;马志国;

    申请日2021-04-26

  • 分类号G06K9/00(20060101);G06K9/34(20060101);G06K9/62(20060101);G06F40/30(20200101);

  • 代理机构11447 北京英创嘉友知识产权代理事务所(普通合伙);

  • 代理人贾会玲

  • 地址 102101 北京市延庆区中关村延庆园东环路2号楼294室

  • 入库时间 2023-06-19 11:54:11

说明书

技术领域

本公开涉及人工智能技术领域,具体地,涉及一种计算题批改方法、装置、可读存储介质及电子设备。

背景技术

一直以来,老师和家长对于自动化批改作业的需求非常迫切,使用人工智能技术,特别是文本识别技术,实现自动化批改作业,能够大大提高老师的工作效率,将老师从繁琐的作业批改任务中抽离出来,更好地全身心投身到教学工作中。

其中,基础教育阶段的数学计算题作业,往往存在题目数量大、日常例行重复化高等特点。现阶段,主要基于文本识别结果进行计算题的批改,其中,批改结果与文本识别准确率直接相关,当文本识别准确率不高时,计算题批改的准确度也就无法保证。

发明内容

为了克服相关技术中存在的问题,本公开提供一种计算题批改方法、装置、可读存储介质及电子设备。

为了实现上述目的,第一方面,本公开提供一种计算题批改方法,包括:

对待批改的答题图像进行文本识别,得到识别概率最高的K个文本内容作为候选文本内容;

分别判定每一所述候选文本内容所表征的算式是否成立;

根据每一所述候选文本内容所表征的算式是否成立的判定结果和每一所述候选文本内容对应的识别概率,从K个所述候选文本内容中确定目标文本内容;

根据所述目标文本内容所表征的算式是否成立的判定结果,对所述待批改的答题图像中包含的作答内容进行对错判定。

可选地,所述对待批改的答题图像进行文本识别,得到识别概率最高的K个文本内容作为候选文本内容,包括:

确定所述待批改的答题图像的二值图像和所述待批改的答题图像中包含的计算题的类型;

对所述待批改的答题图像的二值图像中的文字区域进行最小外接矩形拟合,得到目标矩形区域;

根据所述计算题的类型,对所述目标矩形区域进行文本识别,得到识别概率最高的K个文本内容作为候选文本内容。

可选地,所述确定所述待批改的答题图像的二值图像和所述待批改的答题图像中包含的计算题的类型,包括:

将所述待批改的答题图像输入预先训练好的文本检测模型中,得到所述待批改的答题图像的二值图像和所述待批改的答题图像中包含的计算题的类型;

其中,所述文本检测模型包括:

第一特征提取模块,用于根据所述待批改的答题图像,生成第一特征图;

语义分割模块,与所述第一特征提取模块连接,用于根据所述第一特征图,生成所述待批改的答题图像的像素概率图和像素阈值图;

第一处理模块,与所述语义分割模块连接,用于根据所述像素概率图和所述像素阈值图,生成与N个预设计算题类型一一对应的N个二值图像,其中,所述N个二值图像中文字区域最大的二值图像作为目标二值图像;

与所述N个预设计算题类型一一对应的N个输出通道,分别与所述第一处理模块连接,用于输出与所对应的预设计算题类型相对应的二值图像;以及

第二处理模块,与每一所述输出通道分别连接,用于将每一所述输出通道输出的二值图像进行叠加,得到所述待批改的答题图像的二值图像,并将与输出所述目标二值图像的输出通道对应的预设计算题类型确定为所述计算题的类型。

可选地,所述文本检测模型通过以下方式训练得到:

获取历史答题图像、所述历史答题图像的标注二值图像、所述历史答题图像中包含的计算题的标注类型;

通过将所述历史答题图像作为所述第一特征提取模块的输入,将所述标注二值图像作为所述N个输出通道中、与所述标注类型对应的输出通道的目标输出,将预设二值图像作为所述N个输出通道中、除与所述标注类型对应的输出通道外的每一其他输出通道的目标输出,将所述标注二值图像、所述标注类型作为所述第二处理模块的目标输出的方式进行模型训练,以得到所述文本检测模型,其中,所述预设二值图像仅包含背景区域。

可选地,所述根据所述计算题的类型,对所述目标矩形区域进行文本识别,得到识别概率最高的K个文本内容作为候选文本内容,包括:

根据所述计算题的类型,判断所述目标矩形区域是否包含多个文字行;

若所述目标矩形区域包含多个文字行,则根据与所述计算题的类型对应的切分规则,将所述目标矩形区域切分为多个文字行区域;

根据所述计算题的类型,从所述多个文字行区域中确定目标文字行区域;

针对每一所述目标文字行区域,对所述目标文字行区域进行文本识别,得到所述目标文本行区域对应的识别概率最高的M个文本内容作为候选子文本内容;

针对所述多个文字行区域中、除所述目标文字行区域外的每一其他文字行区域,对该其他文字行区域进行文本识别,得到该其他文字行区域对应的目标子文本内容;

确定P个文字组合,其中,所述文字组合内的各元素分别来自于不同目标文字行区域对应的任一所述候选子文本内容,所述文字组合包含的候选子文本内容的数量等于所述目标文字行区域的数量;

针对每一所述文字组合,根据所述文字组合内的候选子文本内容对应的目标文字行区域在所述目标矩形区域中的位置信息和每一所述目标子文本内容对应的其他文字行区域在所述目标矩形区域中的位置信息,将所述文字组合内的每一候选子文本内容、每一所述目标子文本内容进行拼接,得到拼接文本内容,其中,所述拼接文本内容的识别概率等于构成所述拼接文本内容的每一候选子文本内容的识别概率的和;

将P个所述拼接文本内容中、识别概率最高的K个拼接文本内容确定为所述识别概率最高的K个候选文本内容,其中,P≥K。

可选地,所述根据所述计算题的类型,从所述多个文字行区域中确定目标文字行区域,包括:

若所述计算题的类型为脱式计算或解方程的计算,则将所述多个文字行区域中、位于所述目标矩形区域最上方的文字行区域和所述多个文字行区域中、位于所述目标矩形区域最下方的文字行区域确定为目标文本行区域;

若所述计算题的类型为竖式计算,则将所述多个文字行区域中、位于所述目标矩形区域最上方的两个文字行区域和所述多个文字行区域中、位于所述目标矩形区域最下方的文字行区域确定为目标文本行区域。

可选地,所述根据所述计算题的类型,判断所述目标矩形区域是否包含多个文字行,包括:

若所述计算题的类型为竖式计算、脱式计算、解方程的计算中的一者,则确定所述目标矩形区域包含多个文字行。

可选地,所述对所述目标文字行区域进行文本识别,得到所述目标文本行区域对应的识别概率最高的M个文本内容作为候选子文本内容,包括:

将所述目标文字行区域输入到预先训练好的识别模型中,得到所述目标文本行区域对应的识别概率最高的M个文本内容作为候选子文本内容;

其中,所述识别模型包括:

第二特征提取模块,用于根据所述目标文字行区域,生成第二特征图;

序列编码模块,与所述第二特征提取模块连接,用于对所述第二特征图进行序列编码,得到特征序列;

预测模块,与所述序列编码模块连接,用于通过束搜索的解码方式对所述特征序列进行解码,得到所述目标文本行区域对应的识别概率最高的M个文本内容作为候选子文本内容,其中,所述束搜索的束宽为M。

可选地,所述计算题的类型为竖式计算、脱式计算、解方程的计算、分式单行计算以及非分式单行计算中的一者。

可选地,所述根据所述目标文本内容所表征的算式是否成立的判定结果,对所述待批改的答题图像中包含的作答内容进行对错判定,包括:

若所述目标文本内容所表征的算式成立,则确定所述待批改的答题图像中包含的作答内容正确。

可选地,所述根据每一所述候选文本内容所表征的算式是否成立的判定结果和每一所述候选文本内容对应的识别概率,从K个所述候选文本内容中确定目标文本内容,包括:

判断K个所述候选文本内容中是否存在所表征的算式成立的候选文本内容;

若K个所述候选文本内容中存在所表征的算式成立的候选文本内容,则将K个所述候选文本内容中所表征的算式成立的候选文本内容中、识别概率最高的候选文本内容确定为目标文本内容。

可选地,所述根据每一所述候选文本内容所表征的算式是否成立的判定结果和每一所述候选文本内容对应的识别概率,从K个所述候选文本内容中确定目标文本内容,还包括:

若K个所述候选文本内容中不存在所表征的算式成立的候选文本内容,则将K个所述候选文本内容中、识别概率最高的候选文本内容确定为所述目标文本内容。

第二方面,本公开提供一种计算题批改装置,包括:

识别模块,用于对待批改的答题图像进行文本识别,得到识别概率最高的K个文本内容作为候选文本内容;

第一判定模块,用于分别判定所述识别模块得到的每一所述候选文本内容所表征的算式是否成立;

确定模块,用于根据所述第一判定模块得到的每一所述候选文本内容所表征的算式是否成立的判定结果和所述识别模块得到的每一所述候选文本内容对应的识别概率,从K个所述候选文本内容中确定目标文本内容;

第二判定模块,用根据于所述确定模块确定出的所述目标文本内容所表征的算式是否成立的判定结果,对所述待批改的答题图像中包含的作答内容进行对错判定。

第三方面,本公开提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开第一方面提供的所述方法的步骤。

第四方面,本公开提供一种电子设备,包括:

存储器,其上存储有计算机程序;

处理器,用于执行所述存储器中的所述计算机程序,以实现本公开第一方面提供的所述方法的步骤。

在上述技术方案中,首先对待批改的答题图像进行文本识别,得到识别概率最高的K个文本内容作为候选文本内容;然后,分别判定每一候选文本内容所表征的算式是否成立;接下来,根据每一候选文本内容所表征的算式是否成立的判定结果和每一候选文本内容对应的识别概率,从K个候选文本内容中确定目标文本内容;最后,根据目标文本内容所表征的算式是否成立的判定结果,对待批改的答题图像中包含的作答内容进行对错判定。其中,目标文本内容是基于多个文本识别结果和多个文本识别结果对应的对错判定结果,从多个文本识别结果中确定出的,从而可以保证用于作答内容对错判定的目标文本内容的准确性,提升计算题批改的准确度,并且,不依赖于题库,就能够对任意待批改的答题图像进行批改。另外,根据目标文本内容所表征的算式是否成立的判定结果,即可实现待批改的答题图像中包含的作答内容的对错判定,而无需区分题干和作答内容,也就无需区分手写字符和印刷字符,从而提升了计算题批改的效率。

本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:

图1是根据一示例性实施例示出的一种计算题批改方法的流程图。

图2是根据一示例性实施例示出的一种对待批改的答题图像进行文本识别的方法的流程图。

图3是根据一示例性实施例示出的一种文本检测模型的结构示意图。

图4A是根据一示例性实施例示出的一种将目标矩形区域切分为多个文字行区域的示意图。

图4B是根据另一示例性实施例示出的一种将目标矩形区域切分为多个文字行区域的示意图。

图4C是根据另一示例性实施例示出的一种将目标矩形区域切分为多个文字行区域的示意图。

图4D是根据另一示例性实施例示出的一种将目标矩形区域切分为多个文字行区域的示意图。

图5是根据一示例性实施例示出的一种识别模型的结构示意图。

图6是根据一示例性实施例示出的一种计算题批改装置的框图。

图7是根据一示例性实施例示出的一种电子设备的框图。

图8是根据一示例性实施例示出的一种电子设备的框图。

具体实施方式

以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。

图1是根据一示例性实施例示出的一种计算题批改方法的流程图。如图1所示,该方法包括S101~S104。

在S101中,对待批改的答题图像进行文本识别,得到识别概率最高的K个文本内容作为候选文本内容。

在本公开中,上述计算题批改方法可以应用于电子设备,例如,终端设备或者与终端设备通信连接的服务器。其中,终端设备可以例如是智能手机、平板电脑、个人计算机等。其中,待批改的答题图像中包含计算题和该计算题对应的答案(即作答内容)。

在S102中,分别判定每一候选文本内容所表征的算式是否成立。

在本公开中,可以对每一候选文本内容所表征的代数式进行运算,根据运算结果对其所表征的算式是否成立进行判定。

在S103中,根据每一候选文本内容所表征的算式是否成立的判定结果和每一候选文本内容对应的识别概率,从K个候选文本内容中确定目标文本内容。

在S104中,根据目标文本内容所表征的算式是否成立的判定结果,对待批改的答题图像中包含的作答内容进行对错判定。

在本公开中,若目标文本内容所表征的算式成立,则确定待批改的答题图像中包含的作答内容正确;若目标文本内容所表征的算式不成立,则确定待批改的答题图像中包含的作答内容错误。

在上述技术方案中,首先对待批改的答题图像进行文本识别,得到识别概率最高的K个文本内容作为候选文本内容;然后,分别判定每一候选文本内容所表征的算式是否成立;接下来,根据每一候选文本内容所表征的算式是否成立的判定结果和每一候选文本内容对应的识别概率,从K个候选文本内容中确定目标文本内容;最后,根据目标文本内容所表征的算式是否成立的判定结果,对待批改的答题图像中包含的作答内容进行对错判定。其中,目标文本内容是基于多个文本识别结果和多个文本识别结果对应的对错判定结果,从多个文本识别结果中确定出的,从而可以保证用于作答内容对错判定的目标文本内容的准确性,提升计算题批改的准确度,并且,不依赖于题库,就能够对任意待批改的答题图像进行批改。另外,根据目标文本内容所表征的算式是否成立的判定结果,即可实现待批改的答题图像中包含的作答内容的对错判定,而无需区分题干和作答内容,也就无需区分手写字符和印刷字符,从而提升了计算题批改的效率。

下面针对上述S101中的对待批改的答题图像进行文本识别,得到识别概率最高的K个文本内容作为候选文本内容的具体实施方式进行详细说明。具体来说,可以通过图2中所示的S1011~S1013来实现。

在S1011中,确定待批改的答题图像的二值图像和待批改的答题图像中包含的计算题的类型。

在本公开中,待批改作业的答题图像的二值图像包括文字区域和背景区域。计算题的类型为竖式计算、脱式计算、解方程的计算、分式单行计算以及非分式单行计算中的一者。其中,非分式单行计算包括四则混合运算、比较大小、单位换算、估算、求余数等;分式单行计算为带有分式、且单行的计算,例如,

另外,竖式计算、脱式计算、解方程的计算均为多行计算,分式单行计算、非分式单行计算均为单行计算,即计算题和答案在同一行。

在S1012中,对待批改的答题图像的二值图像中的文字区域进行最小外接矩形拟合,得到目标矩形区域。

在S1013中,根据计算题的类型,对目标矩形区域进行文本识别,得到识别概率最高的K个文本内容作为候选文本内容。

下面针对上述S1011中的确定待批改的答题图像的二值图像和待批改的答题图像中包含的计算题的类型的具体实施方式进行详细说明。具体来说,可以将待批改的答题图像输入预先训练好的文本检测模型中,得到待批改的答题图像的二值图像和待批改的答题图像中包含的计算题的类型。其中,上述文本检测模块可以例如是基于可微分二值化的实时场景文本检测模型(Real-time Scene Text Detection with DifferentiableBinarization,DBNet)、mask-rcnn、Faster-rcnn、RetinaNet等模型。

具体来说,上述文本检测模型可以包括:第一特征提取模块,用于根据待批改的答题图像,生成第一特征图;语义分割模块,与第一特征提取模块连接,用于根据第一特征图,生成待批改的答题图像的像素概率图和像素阈值图;第一处理模块,与语义分割模块连接,用于根据像素概率图和像素阈值图,生成与N个预设计算题类型一一对应的N个二值图像,其中,N个二值图像中文字区域最大的二值图像作为目标二值图像;与N个预设计算题类型一一对应的N个输出通道,分别与第一处理模块连接,用于输出与所对应的预设计算题类型相对应的二值图像;以及第二处理模块,与每一输出通道分别连接,用于将每一输出通道输出的二值图像进行叠加,得到待批改的答题图像的二值图像,并将与输出目标二值图像的输出通道对应的预设计算题类型确定为计算题的类型。

在本公开中,上述N个通道中、与待批改的答题图像中包含的计算题的类型对应的输出通道输出的二值图像会包含较多的文字内容,而其他输出通道输出的二值图像仅包含背景区域,因此,将输出N个二值图像中文字区域最大的二值图像(即目标二值图像)的输出通道对应的预设计算题类型确定为待批改的答题图像中包含的计算题的类型。

示例地,上述N个预设计算题类型包括:竖式计算、脱式计算、解方程的计算、分式单行计算以及非分式单行计算,即N=5。如图3所示,上述文本检测模型包括与竖式计算、脱式计算、解方程的计算、分式单行计算以及非分式单行计算一一对应的5个输出通道,即与竖式计算对应的输出通道、与脱式计算对应的输出通道、与解方程的计算对应的输出通道、与分式单行计算对应的输出通道以及与非分式单行计算对应的输出通道。其中,第一处理模块用于输出与竖式计算、脱式计算、解方程的计算、分式单行计算以及非分式单行计算分别对应的二值图像(即5个二值图像);并且,与竖式计算对应的输出通道用于输出与竖式计算对应的二值图像、与脱式计算对应的输出通道用于输出与脱式计算对应的二值图像、与解方程的计算对应的输出通道用于输出与解方程的计算对应的二值图像、与分式单行计算对应的输出通道用于输出与分式单行计算对应的二值图像、与非分式单行计算对应的输出通道用于输出与非分式单行计算对应的二值图像。

在上述文本检测模型中,是将与输出目标二值图像的输出通道对应的预设计算题类型确定为待批改的答题图像中包含的计算题的类型,即输出通道即可表征计算题的类型,这样,通过输出通道即可快速确定待批改的答题图像中包含的计算题的类型,而无需在文本检测模型中设定分类器,从而可以简化文本检测模型结构,并可以快速确定待批改的答题图像中包含的计算题的类型。

另外,上述文本检测模型通过以下方式训练得到:

首先,获取历史答题图像、历史答题图像的标注二值图像、历史答题图像中包含的计算题的标注类型,其中,标注类型可以为竖式计算、脱式计算、解方程的计算、分式单行计算以及非分式单行计算中的一者;然后,通过将历史答题图像作为第一特征提取模块的输入,将标注二值图像作为N个输出通道中、与标注类型对应的输出通道的目标输出,将预设二值图像作为N个输出通道中、除与标注类型对应的输出通道外的每一其他输出通道的目标输出,将标注二值图像、标注类型作为第二处理模块的目标输出的方式进行模型训练,以得到文本检测模型,其中,预设二值图像仅包含背景区域。

下面针对上述S1013中的根据计算题的类型,对目标矩形区域进行文本识别,得到识别概率最高的K个文本内容作为候选文本内容的具体实施方式进行详细说明。具体来说,可以通过以下步骤(1)~步骤(8)来实现:

(1)根据计算题的类型,判断目标矩形区域是否包含多个文字行。

在本公开中,若计算题的类型为竖式计算、脱式计算、解方程的计算中的一者,则确定目标矩形区域包含多个文字行。若计算题的类型为分式单行计算或非分式单行计算,则确定目标矩形区域不包含多个文字。

(2)若目标矩形区域包含多个文字行,则根据与计算题的类型对应的切分规则,将目标矩形区域切分为多个文字行区域。

示例地,如图4A所示,计算题的类型为竖式计算,可以按照图4A中所示的方式,将目标矩形区域切分为三个文字行区域。

又示例地,如图4B所示,计算题的类型为竖式计算,可以按照图4B中所示的方式,将目标矩形区域切分为六个文字行区域。

其中,竖式计算中的横线可以与其邻近的上一文字划分为一文字行区域(如图4A中所示),也可以与其邻近的下一行划分为一文字行区域(如图4B中所示)。

又示例地,如图4C所示,计算题的类型为脱式计算,可以按照图4C中所示的方式,将目标矩形区域切分为四个文字行区域。

又示例地,如图4D所示,计算题的类型为解方程的计算,可以按照图4D又所示的方式,将目标矩形区域切分为三个文字行区域。

(3)根据计算题的类型,从多个文字行区域中确定目标文字行区域。

在本公开中,脱式计算或解方程的计算的题干通常位于第一行,而最终答案位于最后一行,是计算题批改的关键,因此,需要对相应目标矩形区域最上方的文字行区域和目标矩形区域最下方的文字行区域进行重点识别(即得到多个识别结果)。即若计算题的类型为脱式计算或解方程的计算,则将多个文字行区域中、位于目标矩形区域最上方的文字行区域和多个文字行区域中、位于目标矩形区域最下方的文字行区域确定为目标文本行区域。

而竖式计算的题干通常位于前两行,而最终答案位于最后一行,是计算题批改的关键,因此,需要对相应目标矩形区域最上方的两个文字行区域和目标矩形区域最下方的文字行区域进行重点识别。即若计算题的类型为竖式计算,则将多个文字行区域中、位于目标矩形区域最上方的两个文字行区域和多个文字行区域中、位于目标矩形区域最下方的文字行区域确定为目标文本行区域。

示例地,图4A中所包含的计算题的类型为竖式计算,因此,可以将图4A中所示的三个文字行区域均确定为目标文字行区域。

又示例地,图4B中所包含的计算题的类型为竖式计算,因此,可以将“25”所在的文字行区域、

又示例地,图4C中所包含的计算题的类型为脱式计算,因此,可以将“4×7×25”所在的文字行区域和“=700”所在的文字行区域确定为目标文字行区域。

又示例地,图4D中所包含的计算题的类型为解方程的计算,因此,可以将“4×x+5=25”所在的文字行区域和“x=5”所在的文字行区域确定为目标文字行区域。

(4)针对每一目标文字行区域,对目标文字行区域进行文本识别,得到目标文本行区域对应的识别概率最高的M个文本内容作为候选子文本内容。

(5)针对多个文字行区域中、除目标文字行区域外的每一其他文字行区域,对该其他文字行区域进行文本识别,得到该其他文字行区域对应的目标子文本内容。

(6)确定P个文字组合,其中,文字组合内的各元素分别来自于不同目标文字行区域对应的任一候选子文本内容,文字组合包含的候选子文本内容的数量等于目标文字行区域的数量。

在本公开中,P可以小于或等于M

示例地,M=3,P=6,如图4C中所示,通过上述步骤(3)得到两个目标文字行区域(即,“4×7×25”所在的文字行区域、“=700所在的文字行区域”),其中,“4×7×25”所在的文字行区域对应的3个候选子文本内容分别为“4×7×25”、“4×7×55”、“4×7×35”,“=700”所在的文字行区域对应的3个候选子文本内容分别为“=700”、“=708”、“=788”,则各文字组合包含的候选子文本内容的数量为2,其中,各文字组合内的一元素来自“4×7×25”、“4×7×55”、“4×7×35”中的任一者,另一元素来自于“=700”、“=708”、“=788”中的任一者。因此,最多可以得到3

(7)针对每一文字组合,根据文字组合内的候选子文本内容对应的目标文字行区域在目标矩形区域中的位置信息和每一目标子文本内容对应的其他文字行区域在目标矩形区域中的位置信息,将文字组合内的每一候选子文本内容、每一目标子文本内容进行拼接,得到拼接文本内容,其中,拼接文本内容的识别概率等于构成拼接文本内容的每一候选子文本内容的识别概率的和。

(8)将P个拼接文本内容中、识别概率最高的K个拼接文本内容确定为识别概率最高的K个候选文本内容,其中,P≥K。

在上述实施方式中,若目标矩形区域是否包含多个文字行,则将目标矩形区域切分为多个文字行区域,并分别对每个文字行区域进行文本识别,之后,将各文字行区域对应的文本识别结果进行合并,得到目标矩形区域对应的文本识别结果,这样,可以使得多行算式得以识别,并且,各文字行区域可以并行进行文本识别,提高了目标矩形区域文本识别的效率。

下面针对上述步骤(6)中的对目标文字行区域进行文本识别,得到目标文本行区域对应的识别概率最高的M个文本内容作为候选子文本内容的具体实施方式进行详细说明。

具体来说,可以将目标文字行区域输入到预先训练好的识别模型中,得到目标文本行区域对应的识别概率最高的M个文本内容作为候选子文本内容。其中,识别模型可以例如是卷积循环网络(Convolutional Recurrent Neural Network,CRNN)、基于注意力机制的序列到序列预测模型等。

示例地,如图5所示,上述识别模型可以包括:第二特征提取模块,用于根据目标文字行区域,生成第二特征图;序列编码模块,与第二特征提取模块连接,用于对第二特征图进行序列编码,得到特征序列;预测模块,与序列编码模块连接,用于通过束搜索的解码方式对特征序列进行解码,得到目标文本行区域对应的识别概率最高的M个文本内容作为候选子文本内容,其中,束搜索的束宽为M。

下面针对上述S103中的根据每一候选文本内容所表征的算式是否成立的判定结果和每一候选文本内容对应的识别概率,从K个候选文本内容中确定目标文本内容的具体实施方式进行详细说明。具体来说,可以通过以下方式来实现:

首先,判断K个候选文本内容中是否存在所表征的算式成立的候选文本内容;若K个候选文本内容中存在所表征的算式成立的候选文本内容,则将K个候选文本内容中所表征的算式成立的候选文本内容中、识别概率最高的候选文本内容确定为目标文本内容;若K个候选文本内容中不存在所表征的算式成立的候选文本内容,则直接将K个候选文本内容中、识别概率最高的候选文本内容确定为目标文本内容。

示例地,针对包含“2+3=5”的待批改的答题图像,得到如下表1中所示的识别概率最高5个候选文本内容、各候选文本内容对应的识别概率以及各候选文本内容所表征的算式是否成立的判定结果。

表1识别概率最高的多个候选文本内容及相应的识别概率、判定结果

由上表1可知,5个候选文本内容中存在所表征的算式成立的候选文本内容,即候选文本“2+3=5”和候选文本“5+3=8”,其中,候选文本“2+3=5”对应的识别概率大于候选文本“5+3=8”对应的识别概率,因此,将候选文本“2+3=5”确定为目标文本内容。

又示例地,针对包含“2+3=5”的待批改的答题图像,得到如下表2中所示的识别概率最高5个候选文本内容、各候选文本内容对应的识别概率以及各候选文本内容所表征的算式是否成立的判定结果。

表2识别概率最高的多个候选文本内容及相应的识别概率、判定结果

由上表2可知,5个候选文本内容中不存在所表征的算式成立的候选文本内容,因此,将直接将该5个候选文本内容中、识别概率最高的候选文本内容“2+2=5”确定为目标文本内容。

图6是根据一示例性实施例示出的一种计算题批改装置的框图。如图6所示,该计算题批改装置600包括:识别模块601,用于对待批改的答题图像进行文本识别,得到识别概率最高的K个文本内容作为候选文本内容;第一判定模块602,用于分别判定所述识别模块601得到的每一所述候选文本内容所表征的算式是否成立;确定模块603,用于根据所述第一判定模块602得到的每一所述候选文本内容所表征的算式是否成立的判定结果和所述识别模块601得到的每一所述候选文本内容对应的识别概率,从K个所述候选文本内容中确定目标文本内容;第二判定模块604,用根据于所述确定模块603确定出的所述目标文本内容所表征的算式是否成立的判定结果,对所述待批改的答题图像中包含的作答内容进行对错判定。

在上述技术方案中,首先对待批改的答题图像进行文本识别,得到识别概率最高的K个文本内容作为候选文本内容;然后,分别判定每一候选文本内容所表征的算式是否成立;接下来,根据每一候选文本内容所表征的算式是否成立的判定结果和每一候选文本内容对应的识别概率,从K个候选文本内容中确定目标文本内容;最后,根据目标文本内容所表征的算式是否成立的判定结果,对待批改的答题图像中包含的作答内容进行对错判定。其中,目标文本内容是基于多个文本识别结果和多个文本识别结果对应的对错判定结果,从多个文本识别结果中确定出的,从而可以保证用于作答内容对错判定的目标文本内容的准确性,提升计算题批改的准确度,并且,不依赖于题库,就能够对任意待批改的答题图像进行批改。另外,根据目标文本内容所表征的算式是否成立的判定结果,即可实现待批改的答题图像中包含的作答内容的对错判定,而无需区分题干和作答内容,也就无需区分手写字符和印刷字符,从而提升了计算题批改的效率。

可选地,所述识别模块601包括:第一确定子模块,用于确定所述待批改的答题图像的二值图像和所述待批改的答题图像中包含的计算题的类型;拟合子模块,用于对所述待批改的答题图像的二值图像中的文字区域进行最小外接矩形拟合,得到目标矩形区域;目标矩形区域识别子模块,用于根据所述计算题的类型,对所述目标矩形区域进行文本识别,得到识别概率最高的K个文本内容作为候选文本内容。

可选地,所述第一确定子模块用于将所述待批改的答题图像输入预先训练好的文本检测模型中,得到所述待批改的答题图像的二值图像和所述待批改的答题图像中包含的计算题的类型;其中,所述文本检测模型包括:第一特征提取模块,用于根据所述待批改的答题图像,生成第一特征图;语义分割模块,与所述第一特征提取模块连接,用于根据所述第一特征图,生成所述待批改的答题图像的像素概率图和像素阈值图;第一处理模块,与所述语义分割模块连接,用于根据所述像素概率图和所述像素阈值图,生成与N个预设计算题类型一一对应的N个二值图像,其中,所述N个二值图像中文字区域最大的二值图像作为目标二值图像;与所述N个预设计算题类型一一对应的N个输出通道,分别与所述第一处理模块连接,用于输出与所对应的预设计算题类型相对应的二值图像;以及第二处理模块,与每一所述输出通道分别连接,用于将每一所述输出通道输出的二值图像进行叠加,得到所述待批改的答题图像的二值图像,并将与输出所述目标二值图像的输出通道对应的预设计算题类型确定为所述计算题的类型。

可选地,所述文本检测模型通过第一模型训练装置训练得到,其中,该第一模型训练装置包括:第一获取模块,用于获取历史答题图像、所述历史答题图像的标注二值图像、所述历史答题图像中包含的计算题的标注类型;第一训练模块,用于通过将所述历史答题图像作为所述第一特征提取模块的输入,将所述标注二值图像作为所述N个输出通道中、与所述标注类型对应的输出通道的目标输出,将预设二值图像作为所述N个输出通道中、除与所述标注类型对应的输出通道外的每一其他输出通道的目标输出,将所述标注二值图像、所述标注类型作为所述第二处理模块的目标输出的方式进行模型训练,以得到所述文本检测模型,其中,所述预设二值图像仅包含背景区域。

可选地,所述目标矩形区域识别子模块包括:第一判断子模块,用于根据所述计算题的类型,判断所述目标矩形区域是否包含多个文字行;切分子模块,用于若所述目标矩形区域包含多个文字行,则根据与所述计算题的类型对应的切分规则,将所述目标矩形区域切分为多个文字行区域;第二确定子模块,用于根据所述计算题的类型,从所述多个文字行区域中确定目标文字行区域;目标文字行区域识别子模块,用于针对每一所述目标文字行区域,对所述目标文字行区域进行文本识别,得到所述目标文本行区域对应的识别概率最高的M个文本内容作为候选子文本内容;其他文字行区域识别子模块,用于针对所述多个文字行区域中、除所述目标文字行区域外的每一其他文字行区域,对该其他文字行区域进行文本识别,得到该其他文字行区域对应的目标子文本内容;第三确定子模块,用于确定P个文字组合,其中,所述文字组合内的各元素分别来自于不同目标文字行区域对应的任一所述候选子文本内容,所述文字组合包含的候选子文本内容的数量等于所述目标文字行区域的数量;拼接子模块,用于针对每一所述文字组合,根据所述文字组合内的候选子文本内容对应的目标文字行区域在所述目标矩形区域中的位置信息和每一所述目标子文本内容对应的其他文字行区域在所述目标矩形区域中的位置信息,将所述文字组合内的每一候选子文本内容、每一所述目标子文本内容进行拼接,得到拼接文本内容,其中,所述拼接文本内容的识别概率等于构成所述拼接文本内容的每一候选子文本内容的识别概率的和;第四确定子模块,用于将P个所述拼接文本内容中、识别概率最高的K个拼接文本内容确定为所述识别概率最高的K个候选文本内容,其中,P≥K。

可选地,第二确定子模块包括:第五确定子模块,用于若所述计算题的类型为脱式计算或解方程的计算,则将所述多个文字行区域中、位于所述目标矩形区域最上方的文字行区域和所述多个文字行区域中、位于所述目标矩形区域最下方的文字行区域确定为目标文本行区域;第六确定子模块,用于若所述计算题的类型为竖式计算,则将所述多个文字行区域中、位于所述目标矩形区域最上方的两个文字行区域和所述多个文字行区域中、位于所述目标矩形区域最下方的文字行区域确定为目标文本行区域。

可选地,第一判断子模块用于若所述计算题的类型为竖式计算、脱式计算、解方程的计算中的一者,则确定所述目标矩形区域包含多个文字行。

可选地,所述目标文字行区域识别子模块用于将所述目标文字行区域输入到预先训练好的识别模型中,得到所述目标文本行区域对应的识别概率最高的M个文本内容作为候选子文本内容;其中,所述识别模型包括:第二特征提取模块,用于根据所述目标文字行区域,生成第二特征图;序列编码模块,与所述第二特征提取模块连接,用于对所述第二特征图进行序列编码,得到特征序列;预测模块,与所述序列编码模块连接,用于通过束搜索的解码方式对所述特征序列进行解码,得到所述目标文本行区域对应的识别概率最高的M个文本内容作为候选子文本内容,其中,所述束搜索的束宽为M。

可选地,所述计算题的类型为竖式计算、脱式计算、解方程的计算、分式单行计算以及非分式单行计算中的一者。

可选地,所述第二判定模块604用于若所述目标文本内容所表征的算式成立,则确定所述待批改的答题图像中包含的作答内容正确。

可选地,所述确定模块603包括:第二判断子模块,用于判断K个所述候选文本内容中是否存在所表征的算式成立的候选文本内容;第七确定子模块,用于若K个所述候选文本内容中存在所表征的算式成立的候选文本内容,则将K个所述候选文本内容中所表征的算式成立的候选文本内容中、识别概率最高的候选文本内容确定为目标文本内容。

可选地,所述确定模块603还包括:第八确定子模块,用于若K个所述候选文本内容中不存在所表征的算式成立的候选文本内容,则将K个所述候选文本内容中、识别概率最高的候选文本内容确定为所述目标文本内容。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

本公开还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开提供的上述计算题批改方法的步骤。

图7是根据一示例性实施例示出的一种电子设备700的框图。如图7所示,该电子设备700可以包括:处理器701,存储器702。该电子设备700还可以包括多媒体组件703,输入/输出(I/O)接口704,以及通信组件705中的一者或多者。

其中,处理器701用于控制该电子设备700的整体操作,以完成上述的计算题批改方法中的全部或部分步骤。存储器702用于存储各种类型的数据以支持在该电子设备700的操作,这些数据例如可以包括用于在该电子设备700上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器702可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件703可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器702或通过通信组件705发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口704为处理器701和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件705用于该电子设备700与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件705可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。

在一示例性实施例中,电子设备700可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的计算题批改方法。

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的计算题批改方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器702,上述程序指令可由电子设备700的处理器701执行以完成上述的计算题批改方法。

图8是根据一示例性实施例示出的一种电子设备800的框图。例如,电子设备800可以被提供为一服务器。参照图8,电子设备800包括处理器822,其数量可以为一个或多个,以及存储器832,用于存储可由处理器822执行的计算机程序。存储器832中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器822可以被配置为执行该计算机程序,以执行上述的计算题批改方法。

另外,电子设备800还可以包括电源组件826和通信组件850,该电源组件826可以被配置为执行电子设备800的电源管理,该通信组件850可以被配置为实现电子设备800的通信,例如,有线或无线通信。此外,该电子设备800还可以包括输入/输出(I/O)接口858。电子设备800可以操作基于存储在存储器832的操作系统,例如Windows Server

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的计算题批改方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器832,上述程序指令可由电子设备800的处理器822执行以完成上述的计算题批改方法。

在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的计算题批改方法的代码部分。

以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。

此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号