基于图像的判题方法、装置、电子设备和计算机存储介质与流程

文档序号:22738854发布日期:2020-10-31 09:20阅读:89来源:国知局
基于图像的判题方法、装置、电子设备和计算机存储介质与流程

本申请涉及图像处理领域,尤其涉及一种基于图像的判题方法、装置、电子设备和计算机存储介质。



背景技术:

通过拍照得到的图像进行判题,是人工智能技术在教育领域的一项重要应用,其大致流程是:用终端设备进行拍照然后根据题目内容进行判题,最后将判断结果进行输出。然而,上述流程包含了多种中间处理关节,其中每一个环节得到的结果都可能出现偏差,这会导致最终的判题结果的准确率比较低的问题,从而极大的影响用户的使用体验。



技术实现要素:

为了解决现有技术中上述至少一个问题,本申请实施例提供一种基于图像的判题方法、装置、电子设备和计算机存储介质。

第一方面,本申请实施例提供一种基于图像的判题方法,所述方法包括:

对包含待判题目的图像进行分析,确定原始判题结果;其中,所述原始判题结果中包含n个题目的第一判题结果;n为大于等于1的整数;

基于所述n个题目的题干答案检测结果以及所述原始判题结果,确定用于辅助判题的m个题目;所述m为小于等于n的整数;

确定辅助判题结果;其中,所述辅助判题结果中包含所述m个题目所对应的第二判题结果;

将所述辅助判题结果与所述原始判题结果进行合并,得到合并后的判题结果。

第二方面,本申请实施例提供一种基于图像的判题装置,所述装置包括:

原始判题模块,用于对包含待判题目的图像进行分析,确定原始判题结果;其中,所述原始判题结果中包含n个题目的第一判题结果;n为大于等于1的整数;

辅助判题模块,用于基于所述n个题目的题干答案检测结果以及所述原始判题结果,确定用于辅助判题的m个题目;所述m为小于等于n的整数;确定辅助判题结果;其中,所述辅助判题结果中包含所述m个题目所对应的第二判题结果;

合并模块,用于将所述辅助判题结果与所述原始判题结果进行合并,得到合并后的判题结果。

第三方面,本申请实施例提供一种电子设备,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请任意一项实施例所提供的方法。

第四方面,本申请实施例提供一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请任意一项实施例所提供的方法。

上述申请中的一个实施例具有如下优点或有益效果:在得到包含待判题目的图像中的原始判题结果后,进一步根据题干答案检测结果从原始判题结果中选取至少部分题目进行辅助判题得到辅助判题结果,然后将原始判题结果以及辅助判题结果进行合并得到最终的判题结果。如此,可以在原始判题结果的基础上,基于新的题干答案检测结果来能够对至少部分题目再次进行判题,通过将两次判题结果进行合并来避免原始判题结果存在漏判或误判的情况,提升拍照判题的准确率,并保证用户的使用体验。

上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。

附图说明

附图用于更好地理解本方案,不构成对本申请的限定。其中:

图1是根据本申请实施例的基于图像的判题方法流程示意图一;

图2是根据本申请实施例两种方式检测所得到的题目对应的坐标框的示意图;

图3是根据本申请实施例的基于图像的判题方法中确定辅助判题结果的流程示意图;

图4是根据本申请实施例的基于图像的判题方法流程示意图二;

图5是根据本申请另一实施例的基于图像的判题装置的组成结构示意图;

图6是本申请另一实施例的电子设备组成结构示意图。

具体实施方式

以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

第一方面,本申请实施例提供一种基于图像的判题方法,如图1所示,包括:

s101:对包含待判题目的图像进行分析,确定原始判题结果;其中,所述原始判题结果中包含n个题目的第一判题结果;n为大于等于1的整数;

s102:基于所述n个题目的题干答案检测结果以及所述原始判题结果,确定用于辅助判题的m个题目;所述m为小于等于n的整数;

s103:确定辅助判题结果;其中,所述辅助判题结果中包含所述m个题目所对应的第二判题结果;

s104:将所述辅助判题结果与所述原始判题结果进行合并,得到合并后的判题结果。

本实施例可以应用于电子设备中,向可以是具备图像处理以及信息分析功能的设备,比如可以为终端设备,平板电脑、智能手机等等。

s101执行之前,可以获取包含待判题目的图像。

获取包含待判题目的图像的方式可以包括:通过图像采集单元进行图像采集,得到包含待判题目的图像;其中,图像采集单元可以是电子设备中的摄像头;或者,可以是接收其他设备发来的包含待判题目的图像;这种情况中,电子设备可以不具备拍摄图像的功能,可以从其他具备拍摄功能的设备获取到该包含待判题目的图像;其他具备拍摄功能的设备可以是摄像头、相机、具备摄像头的智能手机、平板电脑等等,这里不做穷举。

进一步地,s101可以包括:

对所述包含待判题目的图像进行版面分析处理得到版面分析结果,以及对所述包含待判题目的图像进行文本行分析得到文本行检测结果;

基于所述版面分析结果、文本行检测结果,确定所述n个题目所对应的坐标框;

基于所述n个题目所对应的坐标框,提取所述n个题目对应的子图像;

对所述n个题目所对应的子图像进行字符识别,得到所述n个题目的字符识别结果;

基于所述n个题目的字符识别结果,确定所述n个题目中每一个题目的第一判题结果,将所述n个题目中每一个题目所对应的第一判题结果添加至原始判题结果。

其中,字符识别结果可以包括数字、数学符号等内容。当然,还可能会包括中文、英文等,这里不做穷举。所述每一个题目的原始判题结果可以包括有该题目为正确或错误的第一判题结果。另外,可能存在有些题目无法确定是否正确,那么原始判题结果中可能还会存在待定或不确定的结果。

具体的,可以首先用手机或平板电脑等终端设备进行拍照得到前述包含待判题目的图像;其中,拍照的对象可以是学生的考试试卷或者作业;相应的,包含待判题目的图像可以为考试试卷或者作业对应的图片;

然后将包含待判题目的图像上传至拍照判题的应用程序;这里,所述拍照判题的应用程序可以是具备本申请上述步骤的功能的应用程序,可以是预先安装在电子设备(或终端设备);所谓的上传至拍照判题的应用程序可以是电子设备获取到包含待判题目的图像后,通过电子设备的内部接口传输到用于拍照判题的应用程序中进行后续处理。

该拍照判题的应用程序将该包含待判题目的图像送入题型判断模型,也称为版面分析模型和文本行检测模型;这里,题型判断模型是一种文本检测模型,其中的版面分析模型会检测该包含待判题目的图像的横式、竖式和脱式三种题型中至少之一并将它们用对应的文本框框起来,也就是拿到文本区域坐标;同时,对该包含待判题目的图像输入文本行检测模型,文本行检测模型只检测横向文本行,即得到横向文本行的检测结果;

然后会根据版面分析模型和文本行检测模型的检测结果进行版面分析对框进行合并,根据每种题型的特点,分析得到每个题是由哪些框组成的(比如可以包括题干框、答案框),然后根据框的坐标在原图上进行裁剪;将裁剪得到的图像送入识别模型,得到每个题目的内容;然后根据题目内容进行判题,最后得到每一个题目的第一判题结果。

关于前述版面分析模型和文本行检测模型的输出可以如图2左侧所示,其中,黑色实线框表示版面分析模型的输出,黑色虚线框表示文本行检测模型的框输出。也就是说,版面分析模型可以得到每道题对应的文本区域坐标框;文本行检测模型得到的为每一个题中一个横向文本行的检测结果,也就是图中所示的每一横行的一个坐标框。

其中,所述识别模型可以是用于字符识别的模型,即输入为图像、输出为字符的模型。其中,所述字符可以包括:文字、数字、数学符号等至少之一。

基于以上s101的处理,可以得到原始判题结果,但是,拍照判题最终结果准确率低的原因在于其前三个阶段使用的版面分析模型、文本行检测模型和识别模型都会产生误差,而整个流程又是串行的,所以这会导致误差累积,同时,由于版面分析模型和文本行检测模型都有误差,导致无论以谁进行框合并,最后都会产生较大的误差。基于此,本实施例提供的方案中,增加题干答案检测模型,其可以使用文本行检测模型使用的方法,只是标注数据与文本行检测模型不同,而其只检测题干和答案。具体来说,执行s102之前,还可以包括:

对所述包含待判题目的图像进行题干答案检测,得到所述n个题目分别对应的题干框以及答案框;将所述n个题目分别对应的题干框以及答案框作为所述n个题目的题干答案检测结果。

具体来说,可以是将包含待判题目的图像输入题干答案检测模型中,得到该模型输出的每一个题目的题干框以及答案框,作为每一个题目所对应的题干答案检测结果。参见图2右侧所示,其中黑色虚线框表示题干答案检测结果的题干框,黑色实线框表示题干答案检测结果的答案框。

s102中,具体可以包括:

在所述n个题目中第i题目的题干答案检测结果的题干框或答案框不包含在所述原始判题结果为正确的题目的原始题目框的情况下,将所述第i个题目作为用于辅助判题的题目,并保存所述第i个题目的题干框以及答案框;其中,i为大于等于1且小于等于n的整数。

这里,第i个题目可以为n个题目中的任意一个,也就是针对n个题目中的每一个题目均可以执行以上处理,为了说明清楚,仅以其中一个为例进行说明,其他题目的处理与第i个题目的处理是相同的,不再一一赘述。

另外,还可以包括:在所述n个题目中第i题目的题干答案检测结果中的题干框或者答案框包含在所述原始判题结果为正确的题目的原始题目框的情况下,将第i个题目的题干框以及答案框删除。

在执行s102的检测中可以是将原始判题结果为正确的题目的原始题目框作为比对目标,将第i题目的题干答案检测结果的题干框或答案框与全部的原始正确判题所对应的题目的原始题目框进行比对,如果题干框或答案框中任意之一落在原始判题结果为正确的题目的原始题目框内的时候,可以认为两个题目是相同的,可以删除该题目所对应的题干框以及答案框。

也就是说,s102可以采用本实施例提供的题干答案检测模型提取题干框以及答案框,若两者中至少一个位于原始判题结果中的正确的题目的原始题目框内,则可以不再针对该题目进行后续的辅助判题,否则,就进一步执行s103。也就是,在执行s103的时候,可能仅对n个题目中的部分进行处理,本申请中将其称为m个题目。比如,原始判题结果中有10道题,其中5个是正确的、4个错误、1个不确定的结果;经过s102的处理后,可能得到8道题,然后执行s103对这8道题目进一步进行辅助判题。

s103中,所述确定辅助判题结果,如图3所示,包括:

s1031:对所述m个题目中的第j个题目所对应的题干框以及答案框对应的图像内容进行识别,得到所述第j个题目的题干识别结果以及答案识别结果;其中,j为大于等于1且小于等于m的整数;

s1032:基于所述第j个题目的题干识别结果计算得到第j个题目的正确结果;

s1033:基于所述第j个题目的正确结果以及所述第j个题目的答案识别结果,确定第j个题目的第二判题结果,将所述第j个题目的第二判题结果添加至所述辅助判题结果。

其中,所述对所述辅助判题信息中的第j个题目所对应的题干框以及答案框对应的图像内容进行识别,可以为采用ocr的方式进行识别,得到的结果为题干的数字、文字、数学符号中至少之一,以及答案中的数字、文字、数学符号中至少之一。

然后,针对第j个题目中的题干的数字、文字、数学符号中至少之一进行计算,得到正确结果。

这里,第j个题目可以为m个题目中的任意一个,也就是针对m个题目中的每一个题目均可以执行以上处理,为了说明清楚,仅以其中一个为例进行说明,其他题目的处理与第j个题目的处理是相同的,不再一一赘述。

其中,所述基于所述第j个题目的正确结果以及所述第j个题目的答案识别结果,确定第j个题目的第二判题结果,包括:

在所述第j个题目正确结果与所述第j个题目答案识别结果相同、并且所述第j个题目的题干框与答案框的位置关系满足预设位置关系的情况下,确定所述第j个题目的第二判题结果为正确,并基于所述第j个题目的题干框以及答案框确定所述第j个题目的新题目框;

在所述第j个题目正确结果与所述第j个题目答案识别结果不相同、并且所述第j个题目的题干框与答案框的位置关系满足预设位置关系的情况下,确定所述第j个题目的第二判题结果为错误,并基于所述第j个题目的题干框以及答案框确定所述第j个题目的新题目框。

对题干中的数字和/或文字进行计算的方式可以与题目为横式、竖式相关,对第j个题目的题干进行计算,分为三大类,第一类是单位换算和比较大小问题,它们都是横式而且答案包含在题干中间,所以这一类可以直接计算;第二类是解方程,它是脱式,但是它的题干是一个完整的带x的等式,所以可以直接计算答案;第三类是其他横式、竖式和脱式,他们的题干不带答案,无法构成一个完整的脱式,因此,需要每个题干和每个答案进行组合,构成一个完整的等式之后计算是否正确。

如果第j个题目的题干找打了一个正确答案,那么根据这个题干和这个答案的坐标框,计算两者的位置关系,首先判断两者是否满足预设位置关系。

这里,所述预设位置关系可以为以下至少之一:横式位置关系、竖式位置关系、脱式位置关系。具体的,判断题干框与答案框的位置关系是否满足预设位置关系,可以包括:

根据答案框与外扩后的题干框的交并比、以及答案框的中心点是否在题干框中心点右侧,且在题干框上下边界之间,这些都是根据实际情况设定阈值,如果两者满足上述横式判断关系,那么两者之间满足预设位置关系,可以认为两者之间找到了匹配;其中,所述中心点右侧可以是预设距离内的范围。

如果上述题干和答案不满足横式的位置关系,那么验证两者是否满足竖式或脱式的位置关系,具体是根据答案框与外扩后的题干框的交并比值和答案框的中心点是否在题干框的中心点的下方且在题干框左右边界之内决定,若满足,即两者之间满足预设位置关系,可以认为两者之间找到了匹配。

进一步地,在所述第j个题目正确结果与所述第j个题目答案识别结果相同、并且所述第j个题目的题干框与答案框的位置关系满足预设位置关系的情况下,根据这个题干框和答案框的坐标值形成一个新的横式框也就是新题目框,并将其加入辅助判题结果中的正确结果中,同时从题干和答案列表里面去除这个题干和答案。

在所述第j个题目正确结果与所述第j个题目答案识别结果不相同、并且所述第j个题目的题干框与答案框的位置关系满足预设位置关系的情况下,根据这个题干框和答案框的坐标值形成一个新的横式框也就是新题目框,并将其加入辅助判题结果中的错误结果中,同时从题干和答案列表里面去除这个题干和答案。

这里,形成新题目框可以是生成一个可以包括题干框以及答案框的最小面积的坐标框。

其中,所述题干和答案列表可以为在s102执行完成后生成的。也就是得到m个题目的题干和答案的图像框,以及m个题目的题干和答案的列表。该列表可以是用于索引的,比如,基于该列表可以获知存在多少个题目,然后每一个题目可以对应一个索引,该索引指向对应的题干和答案图像的相关信息。

以上仅针对第j个题目的处理进行了说明,实际处理中可以针对用于辅助判题的m个题目均执行以上处理,直至完成全部m个题目的判断,最后可以得到m个题目中的一部分正确的结果,以及剩余的题干和答案。

完成以上处理之后,可以得到原始判题结果以及辅助判题结果,最后执行s104,将两部分结果进行合并。

s104可以包括以下至少之一:

在所述辅助判题结果中包含的m个题目中第k个题目的第二判题结果为正确的情况下,若所述第k个题目的新题目框与所述原始判题结果为正确的题目对应的原始题目框的位置匹配,则删除所述第k个题目的第二判题判题结果,在所述合并后的判题结果中添加所述第k个题目对应的第一判题结果;其中,k为大于等于1且小于等于m的整数;

在所述辅助判题结果中包含的m个题目中第k个题目的第二判题结果为正确的情况下,若所述第k个题目的新题目框与所述原始判题结果为正确的题目对应的原始题目框的位置不匹配,则在所述合并后的判题结果中添加所述第k个题目对应的第二判题结果;

在所述辅助判题结果中包含的m个题目中第k个题目的第二判题结果为错误的情况下,若所述第k个题目的新题目框与所述原始判题结果为错误的题目对应的原始题目框的位置匹配,则删除所述第k个题目的第二判题结果,在所述合并后的判题结果中添加所述第k个题目对应的第一判题结果。

其中,k为大于等于1且小于等于m的整数。

这里,第k个题目可以为m个题目中的任意一个,也就是针对m个题目中的每一个题目均可以执行以上处理,为了说明清楚,仅以其中一个为例进行说明,其他题目的处理与第k个题目的处理是相同的,不再一一赘述。基于以上处理,最终得到全部题目的合并后的判题结果。

进一步地,所述方法还包括:

基于所述第k个题目的新题目框与原始判题结果中正确的题目的原始题目框的交面积,与所述新题目框以及原始题目框之间的占比是否满足第一预设条件,确定所述第k个题目的新题目框与原始判题结果中正确的题目的原始题目框是否位置匹配;

和/或,基于所述第k个题目的新题目框与原始判题结果中错误的题目的原始题目框的交面积,与所述新题目框以及原始题目框之间的占比是否满足第二预设条件,确定所述第k个题目的新题目框与原始判题结果中错误的题目的原始题目框是否位置匹配。

具体的,基于所述第k个题目的新题目框与原始判题结果中正确的题目的原始题目框的交面积,与所述新题目框以及原始题目框之间的占比是否满足第一预设条件,确定所述第k个题目的新题目框与原始判题结果中正确的题目的原始题目框是否位置匹配可以包括:

若所述第k个题目的新题目框与原始判题结果为正确的题目的原始题目框的交面积与所述新题目框以原始题目框中面积较小框的面积之比超过第一门限值、并且与所述新题目框以原始题目框中面积较大框的面积之比超过第二门限值,则确定所述第k个题目的新题目框与所述原始判题结果为正确的题目对应的原始题目框的位置匹配。

也就是说,所述第一预设条件指的是交面积与所述新题目框以原始题目框中面积较小框的面积之比超过第一门限值、并且与所述新题目框以原始题目框中面积较大框的面积之比超过第二门限值。

其中,第一门限值可以为0.7,第二门限值可以为0.5。当然,这里第一门限值以及第二门限值的具体取值仅为示例,实际处理中可以设置为其他数值,需要保证的是第一门限值大于第二门限值即可。

也就是说,在第k个题目为正确的时候,从原始判题结果中的正确结果的题目所对应的位置进行匹配,若所述辅助判题结果中所述第k个题目的新题目框、与原始判题结果中对应位置处的题目的原始题目框的相交面积的占比达到预设门限值,则可以认为两个是同一个题目,那么可以保留该题目的原始判断结果。

一种示例中,所述第k个题目的新题目框、以及原始判题结果中正确的题目的原始题目框的交面积与两者中面积较小框之比超过0.7、并且与两者中较大框的面积之比超过0.5,则可以确定原始判题结果为正确的题目中存在与所述第k个题目位置匹配的题目。

在m个题目中第k个题目的辅助判题结果为正确的情况下,若所述第k个题目的新题目框、与原始判题结果为正确的题目的原始题目框的相交面积在所述新题目框以及题目的原始题目框的面积中的占比未达到预设门限值,则原始判题结果为正确的题目中不存在与所述第k个题目位置匹配的题目。

这里,可以包括以下几种情况:

第一种情况、所述第k个题目的新题目框、与原始判题结果为正确的题目的原始题目框的相交面积为0的情况,也就是与原始判题结果中任意一道正确的题目的想交面积均为零,则第k个题目不在原始判题结果为正确的题目的对应位置处,此时可以直接将第k个题目的辅助判题结果添加到合并后的判题结果中。

第二种情况、所述第k个题目的新题目框、以及原始判题结果中正确的题目的原始题目框的交面积与两者中面积较小框之比未超过第一门限值、并且与两者中较大框的面积之比为超过第二门限值,则可以确定第k个题目不在原始判题结果为正确的题目的对应位置处,此时可以直接将第k个题目的辅助判题结果添加到合并后的判题结果中。

第三种情况、若所述第k个题目的新题目框与原始判题结果为正确的题目的原始题目框的交面积与所述新题目框以原始题目框中面积较小框的面积之比超过第一门限值、并且与所述新题目框以原始题目框中面积较大框的面积之比超过第二门限值,则确定所述第k个题目的新题目框与所述原始判题结果为正确的题目对应的原始题目框的位置匹配。

此时可以直接将第k个题目的辅助判题结果添加到合并后的判题结果中。

这种情况中,如果交面积与两者中面积较小框之比超过第一门限值,可以进一步判断第k个题目及其对应的原始判题结果的题目的编辑距离是否大于第三门限值,若大于,则可以确定两者为不同题目。这里,所谓编辑距离就是指一个字符串要变成另一个字符串需要增删改的次数。所述第三门限值可以根据实际情况进行设置,比如可以是5次,当然可以更多或更少,这里不做赘述。

示例性的,如果两个的交面积与其中面积较小框之比超过0.7同时,与两者中的较大框面积之比不超过0.5,那么认为这可能是两道题。然后计算两道题的识别结果的编辑距离;如果两者的编辑距离超过设定阈值,那么两者就是不同的题目,此时去除原判题中这个位置的正确结果,以辅助判题结果的正确结果为准添加到合并的判题结果中。

相似的,所述基于所述第k个题目的新题目框与原始判题结果中错误的题目的原始题目框的交面积,与所述新题目框以及原始题目框之间的占比是否满足第二预设条件,确定所述第k个题目的新题目框与原始判题结果中错误的题目的原始题目框是否位置匹配,可以包括:

若所述第k个题目的新题目框与原始判题结果为错误的题目的原始题目框的交面积与所述新题目框以原始题目框中面积较小框的面积之比超过第一门限值、并且与所述新题目框以原始题目框中面积较大框的面积之比不超过第二门限值,则确定所述第k个题目的新题目框与所述原始判题结果为错误的题目对应的原始题目框的位置匹配。

也就是第二预设条件可以包括:交面积与所述新题目框以原始题目框中面积较小框的面积之比超过第一门限值、并且与所述新题目框以原始题目框中面积较大框的面积之比不超过第二门限值。

同样的,所述第一门限值以及第二门限值与前述实施例的说明相同,不再赘述。

示例性的,错误结果去除时,如果两个的交面积与其中面积较小框之比超过0.7同时,与两者中的较大框面积之比不超过0.5,那么保留原判题错误结果,去除辅助判题结果中的该题目对应的错误结果。

所述得到合并后的判题结果之后,所述方法还包括:若合并后的判题结果中针对同一个题目存在正确结果以及错误结果,则删除所述错误结果、保留所述正确结果。也就是说,得到合并之后的正确判题结果和错误判题结果后,从错误判题结果中去除出现在正确判题结果位置上的错误结果,得到最终判题结果。

在一示例中,结合图4对本实施例提供的方案进一步进行说明:

s21:获取包含待判题目的图像;其中,所述包含待判题目的图像中包含待批改的题目的图像。

获取包含待判题目的图像的设备可以为电子设备,具体可以由电子设备中能够执行本申请功能的应用程序来实现。

比如,可以通过图像采集设备(比如摄像头、或者相机等)对待批改图像进行拍照,将拍照得到的图像作为包含待判题目的图像送入拍照批改应用程序;

s22:对所述包含待判题目的图像进行分析,得到版面分析模型的检测结果、文本行检测模型的检测结果以及题干答案检测模型的题干答案检测结果。

具体的,可以将包含待判题目的图像并行输入到版面分析模型、文本行检测模型和题干答案检测模型,得到版面分析模型的检测结果、文本行检测模型的检测结果以及题干答案检测模型的题干答案检测结果。

s23:基于所述版面分析模型的检测结果以及文本行检测模型的检测结果确定原始版面分析结果。

具体来说,将s22得到的版面分析模型检测结果和文本行检测模型检测结果使用交并比等策略进行合并,得到原始版面分析结果。其中,交并比的策略具体可以是将交并比大于一定门限值的两个坐标框进行合并。

s24:基于所述原始版面分析结果,确定原始判题结果;其中,所述原始判题结果中包括:n个题目的第一判题结果;具体来说每一个题目的第一判题结果可以为正确或错误,当然还可以包括不确定或待定。

具体的,可以将s23得到的原始版面分析结果送入判题策略或判题模型进行判题,得到原始判题结果。原始判题结果包括两部分,判为正确的部分题目,判为错误的部分题目。

s25:将所述题干答案检测结果包含在原始判题结果中的正确结果中的题干框以及答案框去除,将剩余的答案框以及题干框组成新的题目用于辅助判题。也就是确定用于辅助判题的m个题目。

具体的,可以使用s22中得到的题干答案检测模型的输出结果(即n个题目的答案框以及题干框)与所述原始判题结果进行综合分析,直接操作是:如果题干框或者答案框被包含在原始判题结果中判对题目对应的坐标框中,那么将这些题干和答案框删除,保留剩下的题干和答案框。

s26:将所述m个题目输入识别模型,得到针对所述m个题目的题干识别结果以及答案识别结果。

也就是说,将第s25步得到的题干和答案框全部送入识别模型,得到题干的识别结果和答案的识别结果。这里,识别模型的输入可以是图像,输出可以是图像中包含的文字、数字、字符、数学符号中至少之一。

然后,基于每一个题目的所述题干识别结果进行计算,得到针对所述题干的正确答案;基于每一个题目的正确结果以及所述答案识别结果,确定所述辅助判题结果。具体可以包括s27以及s28的内容:

s27:根据s26的识别结果,对每个题目的题干进行计算得到对应的正确结果;

这里简单分为三大类,第一类是单位换算和比较大小问题,它们都是横式而且答案包含在题干中间,所以这一类可以直接计算,第二类是解方程,它是脱式,但是它的的题干是一个完整的带x的等式,所以可以直接计算答案,第三类是其他横式、竖式和脱式,他们的题干不带答案,无法构成一个完整的脱式,因此,需要每个题干和每个答案进行组合,构成一个完整的等式之后计算是否正确。

s27还包括:如果一个题目的题干找到一个正确答案,则计算该题目的题干框和答案框的位置关系;若计算得到的位置关系满足预设位置关系,则将该题目的第二判题结果为正确加入辅助判题结果。

这里,所述题目可以为前述实施例中用于辅助判题的m个题目中的第j个题目。

具体的,首先判断它们两个是不是一个横式的题干和答案,具体根据答案框与外扩后的题干框的交并比、以及答案框的中心点是否在题干框中心点右侧,且在题干框上下边界之间,这些都是根据实际情况设定阈值,如果两者满足上述横式判断关系,那么两者之间被认为找到了匹配,并根据这个题干框和答案框的坐标值形成一个新的横式框即新题目框,并将其加入辅助判题结果中的正确结果中,同时从题干和答案列表里面去除这个题干和答案。

如果上述题干和答案不满足横式的位置关系,那么验证他们是否满足竖式或脱式的位置关系,具体是根据题干外扩后与答案的交并比值和答案中心点是否在题干中心点的下方且在题干左右边界之内决定,若满足,执行上述满足操作;完成所有题干和所有答案匹配完成后,得到一部分正确的结果,以及剩余题目的题干识别结果和答案识别结果、以及对应的题干框和答案框。

s28:剩余题目中的题目对应的答案框以及题干框在满足预设位置关系的情况下,则将该题目的第二判题结果为错误结果添加到辅助判题结果。

针对剩余题目的题干和答案,依次直接判断每一个剩余题目的题干框和答案框是否满足横式关系或者竖式关系,如果满足,则构建得到新题目框,并将这个新的错的题目的错误结果加入辅助判题结果中;直至所有题干和答案处理完,将得到辅助判题结果。

s29:将辅助判题结果与原始判题结果进行合并,得到合并后的判题结果。

在辅助判题结果和原始判题结果进行合并的处理中的处理原则:首先,倾向于相信原始判题结果,其次倾向于将题目都判对,即倾向于所有判对的结果。基于以上原则,对原始判题结果和辅助判题结果中正确的结果进行合并,其合并策略为,如果某个辅助判题正确结果出现在了原始判题结果的位置(当然绝对不会严格一样),这个时候,如果两个的交面积与其中面积较小框之比超过0.7,同时,与两者中的较大框面积之比超过0.5,就认为两者是同一个题,然后去除辅助判题结果中的这个正确结果,保留原始判题结果中的正确结果,将其加入最终合并后的判题结果;

如果两个的交面积与其中面积较小框之比超过0.7同时,与两者中的较大框面积之比不超过0.5,那么认为这可能是两道题。然后计算两道题的识别结果的编辑距离,如果两者的编辑距离超过设定阈值,那么两者就是不同的题目,此时去除原始判题结果中这个位置的正确结果,保留辅助判题结果中该题目的第二判题结果,将其加入最终合并后的判题结果中。

在上述操作完成之后,将得到所有判对正确的结果。

对原始判题结果和辅助判题结果中错误的结果进行合并,其合并策略与上述类似,具体可以为,用同样的操作对原始判题结果中的错误结果和辅助判题结果中的错误结果进行相互去除,不同的是,错误结果去除时,如果原始题目框以及新题目框的交面积与其中面积较小框之比超过0.7同时,与两者中的较大框面积之比不超过0.5,那么保留原判题错误结果,去除辅助判题错误结果。

此时,若合并后的判题结果中针对同一个题目存在正确结果以及错误结果,则删除所述错误结果、保留所述正确结果,得到最终输出的合并后的判题结果。也就是说,若合并后的判题结果中针对同一个题目存在正确判题结果以及错误判题结果,则删除所述错误判题结果、保留所述正确判题结果,即在最终得到的合并后的判题结果中,不会存在同一个题目存在正确以及错误两种判题结果。即得到合并之后的正确判题结果和错误判题结果后,从错误结果中去除出现在正确结果位置上的错误结果,得到最终错误结果,最终错误结果与合并之后的正确结果构成最终的判题结果。

通过本实施例提供的方案,可以在得到包含待判题目的图像中的原始判题结果后,进一步根据题干答案检测结果从原始判题结果中选取至少部分题目进行辅助判题得到辅助判题结果,然后将原始判题结果以及辅助判题结果进行合并得到最终的判题结果。如此,可以在原始判题结果的基础上,进一步的基于新的题干答案检测结果来能够对至少部分题目再次进行判题,通过将两次判题结果进行合并来避免原始判题结果存在漏判或误判的情况,提升拍照判题的准确率,并保证用户的使用体验。

本申请实施例还提供了一种基于图像的判题装置,如图5所示,所述装置包括:

原始判题模块51,用于对包含待判题目的图像进行分析,确定原始判题结果;其中,所述原始判题结果中包含n个题目的第一判题结果;n为大于等于1的整数;

辅助判题模块52,用于基于所述n个题目的题干答案检测结果以及所述原始判题结果,确定用于辅助判题的m个题目;所述m为小于等于n的整数;确定辅助判题结果;其中,所述辅助判题结果中包含所述m个题目所对应的第二判题结果;

合并模块53,用于将所述辅助判题结果与所述原始判题结果进行合并,得到合并后的判题结果。

所述辅助判题模块52,用于对所述包含待判题目的图像进行题干答案检测,得到所述n个题目分别对应的题干框以及答案框;将所述n个题目分别对应的题干框以及答案框作为所述n个题目的题干答案检测结果。

所述辅助判题模块52,用于在n个题目中第i题目的题干答案检测结果的题干框或答案框不包含在所述原始判题结果为正确的题目的原始题目框的情况下,将所述第i个题目作为用于辅助判题的题目,并保存所述第i个题目的题干框以及答案框;其中,i为大于等于1且小于等于n的整数。

所述辅助判题模块52,用于在n个题目中第i题目的题干答案检测结果中的题干框或者答案框包含在所述原始判题结果为正确的题目的原始题目框的情况下,将第i个题目的题干框以及答案框删除。

所述辅助判题模块52,用于对所述m个题目中的第j个题目所对应的题干框以及答案框对应的图像内容进行识别,得到所述第j个题目的题干识别结果以及答案识别结果;其中,j为大于等于1且小于等于m的整数;

基于所述第j个题目的题干识别结果计算得到第j个题目的正确结果;

基于所述第j个题目的正确结果以及所述第j个题目的答案识别结果,确定第j个题目的第二判题结果,将所述第j个题目的第二判题结果添加至所述辅助判题结果。

所述辅助判题模块52,用于在所述第j个题目正确结果与所述第j个题目答案识别结果相同、并且所述第j个题目的题干框与答案框的位置关系满足预设位置关系的情况下,确定所述第j个题目的第二判题结果为正确,并基于所述第j个题目的题干框以及答案框确定所述第j个题目的新题目框;

在所述第j个题目正确结果与所述第j个题目答案识别结果不相同、并且所述第j个题目的题干框与答案框的位置关系满足预设位置关系的情况下,确定所述第j个题目的第二判题结果为错误,并基于所述第j个题目的题干框以及答案框确定所述第j个题目的新题目框。

所述合并模块53,用于执行以下至少之一:

在所述辅助判题结果中包含的m个题目中第k个题目的第二判题结果为正确的情况下,若所述第k个题目的新题目框与所述原始判题结果为正确的题目对应的原始题目框的位置匹配,则删除所述第k个题目的第二判题结果,在所述合并后的判题结果中添加所述第k个题目对应的第一判题结果;其中,k为大于等于1且小于等于m的整数;

在所述辅助判题结果中包含的m个题目中第k个题目的第二判题结果为正确的情况下,若所述第k个题目的新题目框与所述原始判题结果为正确的题目对应的原始题目框的位置不匹配,则在所述合并后的判题结果中添加所述第k个题目对应的第二判题结果;

在所述辅助判题结果中包含的m个题目中第k个题目的第二判题结果为错误的情况下,若所述第k个题目的新题目框与所述原始判题结果为错误的题目对应的原始题目框的位置匹配,则删除所述第k个题目的第二判题结果,在所述合并后的判题结果中添加所述第k个题目对应的第一判题结果。

所述合并模块53,用于基于所述第k个题目的新题目框与原始判题结果中正确的题目的原始题目框的交面积,与所述新题目框以及原始题目框之间的占比是否满足第一预设条件,确定所述第k个题目的新题目框与原始判题结果中正确的题目的原始题目框是否位置匹配;

和/或,基于所述第k个题目的新题目框与原始判题结果中错误的题目的原始题目框的交面积,与所述新题目框以及原始题目框之间的占比是否满足第二预设条件,确定所述第k个题目的新题目框与原始判题结果中错误的题目的原始题目框是否位置匹配。

所述合并模块53,用于若合并后的判题结果中针对同一个题目存在正确结果以及错误结果,则删除所述错误结果、保留所述正确结果。

所述原始判题模块51,用于对所述包含待判题目的图像进行版面分析处理得到版面分析结果,以及对所述包含待判题目的图像进行文本行分析得到文本行检测结果;基于所述版面分析结果、文本行检测结果,确定所述n个题目所对应的坐标框;基于所述n个题目所对应的坐标框,提取所述n个题目对应的子图像;对所述n个题目所对应的子图像进行字符识别,得到所述n个题目的字符识别结果;基于所述n个题目的字符识别结果,确定所述n个题目中每一个题目的第一判题结果,将所述n个题目中每一个题目所对应的第一判题结果添加至原始判题结果。

通过本实施例提供的方案,可以在得到包含待判题目的图像中的原始判题结果后,进一步根据题干答案检测结果从原始判题结果中选取至少部分题目进行辅助判题得到辅助判题结果,然后将原始判题结果以及辅助判题结果进行合并得到最终的判题结果。如此,可以在原始判题结果的基础上,进一步的基于新的题干答案检测结果来能够对至少部分题目再次进行判题,通过将两次判题结果进行合并来避免原始判题结果存在漏判或误判的情况,提升拍照判题的准确率,并保证用户的使用体验。

根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。

如图6所示,是根据本申请实施例的电子设备的框图。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。

如图6所示,该电子设备包括:一个或多个处理器801、存储器802,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示gui的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图6中以一个处理器801为例。

存储器802即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的基于图像的判题方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的基于图像的判题方法。

存储器802作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的基于图像的判题方法对应的程序指令/模块。处理器801通过运行存储在存储器802中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的基于图像的判题方法。

存储器802可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器802可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器802可选包括相对于处理器801远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

电子设备还可以包括:输入装置803和输出装置804。处理器801、存储器802、输入装置803和输出装置804可以通过总线或者其他方式连接,图6中以通过总线连接为例。

输入装置803可接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置804可以包括显示设备、辅助照明装置(例如,led)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(lcd)、发光二极管(led)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。

此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用asic(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(pld)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1