一种智能判题方法与系统与流程
未命名
09-29
阅读:60
评论:0
1.本发明涉及智能判题系统技术领域,具体而言,涉及一种智能判题方法与系统。
背景技术:
2.现阶段使用mathpix软件进行公式图片识别,mathpix是一款跨平台的ocr工具,它能够识别复杂的数学公式,并将其转换为latex语法。对于复杂的latex语法从头开始写公式似乎有些复杂,但是无法获取论文或者网页的公式源码,但是mathpix都可以以较高的准确率识别出来,整理成多种格式的代码,可以插入到markdown、word、latex文档中。但由于mathpix软件是单独的软件,需要安装单独,不利于大规模部署应用,并且使用时需联网在线使用,无法脱机使用,仅能识别图片中的latex公式,无法判题。
3.中国专利公开了一种sympy库的智能判题方法与系统,公告号:cn114238612a,通过获取学生作答的latex公式,首先使用sympy库进行转换得到sympy可处理格式;其次通过对正确答案的判断区分不同题型,不同题型的判题方式不同;最后对学生作答信息使用答案对比模块进行处理得到学生作答情况及得分,能够对包括计算题,填空题,选择题在内的题型进行智能判题,相较于以往判题有了明显进步,并且能够脱网使用,更加便捷,但是,其主要利用关键词匹配,识别的公式类型比较少
技术实现要素:
4.本发明的主要目的在于提供一种智能判题方法与系统,以改善相关技术中,利用关键词匹配,识别的公式类型比较少的问题。
5.第一方面,为了实现上述目的,本发明提供了一种智能判题方法,具体包括以下步骤:s1.题型判断,根据学生作答图片进行ocr识别的latex公式,并获取正确答案的latex公式,以正则匹配的方式确定题型;s2.根据得到的题型,学生作答信息和正确答案,判断答案是否正确;s3.将得到的对比结果,以及学生作答的latex公式返回。
6.在本发明的一种实施例中,s1中latex公式关键词匹配的特征类别包括但不限于全局特征、数字/数据特征、代数式、方程、几何式、函数和向量。
7.在本发明的一种实施例中,所述全局特征的题型为含希腊字母的公式、带单位的公式、方程组和分段函数;所述数字/数据特征的题型为正数、整数、负数、正或负数、小数、角度、e、π和虚数;所述代数式的题型为变量数、变量负数次方、幂式、加法、减法、乘法、除法、无四则运算、sin、cos、tan、log、反三角函数、分数、百分数、根式、幂式和绝对值;所述方程特征的题型为单变量、双变量、三个或以上变量、等式、大于/小于式、大/小于等于式、多级等式/不等式和变量项次;所述几何式特征的题型为体、面、线、点、平行关系、垂直关系、三角形、四边形、圆、角、面积、体积和坐标点;
所述函数特征的题型为函数定义式、一次函数、二次函数和反比例函数;所述向量特征的题型为向量加减、向量点乘、向量数乘、向量平行、向量垂直和向量的模。
8.在本发明的一种实施例中,所述s2中含有答案不一致但仍然正确的题型,包括但不限于交换律、结合律、分数和小数以及不等式,需要进行二次判断。
9.在本发明的一种实施例中,s3中进行答案对比的具体包括以下步骤:使用python中的sympy库进行计算和对比,不同的题型的计算和对比方式不同,正确答案的latex公式已知,根据不同题型的判断依据,将题目划分为不同题型,将学生作答图片进行ocr识别到的latex公式和正确答案对比,获取学生答题情况和得分情况。
10.第二方面,本发明另提供一种智能判题方法所使用的系统,包括识别模块,所述识别模块用于对学生的作业和试卷进行扫描和题型的识别;对比模块,所述对比模块用于对识别后的数据进行答案对比;数据模块,所述数据模块用于存储教师题库数据和学生批改数据,并对识别模块和对比模块提供数据支持。
11.在本发明的一种实施例中,所述识别模块包括录入单元和判断单元,所述录入单元包括扫描仪,所述扫描仪根据学生作答图片进行ocr识别的latex公式,所述判断单元根据条件特征对其进行题型判断,并从所述数据模块中调出正确的latex公式。
12.在本发明的一种实施例中,所述对比模块包括转换单元和处理单元,所述转换单元将获取到的学生latex公式和正确答案公式进行转换,使用sympy库的parse_latex函数将latex公式转换为sympy库能够处理的格式,所述处理单元使用sympy库的equality库判断正确答案最简式和学生答案最简式对比,得到两个答案是否相等。
13.在本发明的一种实施例中,所述转换单元在对学生late公式进行转换时,使用sympy库的simplify函数化简公式得到改公式的最简式。
14.在本发明的一种实施例中,所述处理单元对每道题与正确答案完全相同或经过答案对比得到学生作答正确的情况,则该计算题答题满分,其余情况均为零分,并且将最终数据传送到所述存储模块中。
15.与现有技术相比,本发明的有益效果是:通过上述设计的智能判题方法与系统,根据学生作答图片进行ocr识别的latex公式和正确答案的latex公式,以正则匹配的方式确定题型,之后使用python中的sympy库进行计算和对比,不同的题型的计算和对比方式不同,正确答案的latex公式已知,根据不同题型的判断依据,将题目划分为不同题型,将学生作答图片进行ocr识别到的latex公式和正确答案对比,获取学生答题情况和得分情况。本发明通过获取学生作答的latex公式,首先使用sympy库进行转换得到sympy可处理格式;其次通过对正确答案以正则匹配的方式确定题型,不同题型的判题方式不同;最后对学生作答信息使用答案对比模块进行处理得到学生作答情况及得分,能够对更多的公式类型进行识别,满足更多场景的使用。
附图说明
16.图1为根据本发明实施例提供的智能判题方法与系统的方法流程示意图;图2为根据本发明实施例提供的智能判题方法与系统的系统结构示意图。
实施方式
17.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
18.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
19.在本发明中,术语“上”、“下”、“左”、“右”、“前”、“后”、“顶”、“底”、“内”、“外”、“中”、“竖直”、“水平”、“横向”、“纵向”等指示的方位或位置关系为附图所示的方位或位置关系。这些术语主要是为了更好地描述本发明及其实施例,并非用于限定所指示的装置、元件或组成部分必须具有特定方位,或以特定方位进行构造和操作。
20.并且,上述部分术语除了可以用于表示方位或位置关系以外,还可能用于表示其他含义,例如术语“上”在某些情况下也可能用于表示某种依附关系或连接关系。对于本领域普通技术人员而言,可以根据具体情况理解这些术语在本发明中的具体含义。
21.另外,术语“多个”的含义应为两个以及两个以上。
22.需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
23.请参阅图1-图2,本发明提供了一种智能判题方法,包括如下步骤:s1.题型判断,根据学生作答图片进行ocr识别的latex公式,并获取正确答案的latex公式,以正则匹配的方式确定题型;s1中latex公式关键词匹配的特征类别包括但不限于全局特征、数字/数据特征、代数式、方程、几何式、函数和向量;所述全局特征的题型为含希腊字母的公式、带单位的公式、方程组和分段函数;所述数字/数据特征的题型为正数、整数、负数、正或负数、小数、角度、e、π和虚数;所述代数式的题型为变量数、变量负数次方、幂式、加法、减法、乘法、除法、无四则运算、sin、cos、tan、log、反三角函数、分数、百分数、根式、幂式和绝对值;所述方程特征的题型为单变量、双变量、三个或以上变量、等式、大于/小于式、大/小于等于式、多级等式/不等式和变量项次;所述几何式特征的题型为体、面、线、点、平行关系、垂直关系、三角形、四边形、圆、角、面积、体积和坐标点;所述函数特征的题型为函数定义式、一次函数、二次函数和反比例函数;所述向量特征的题型为向量加减、向量点乘、向量数乘、向量平行、向量垂直和向量的模。以达到对多种公式类型的识别。
24.如下表所示,详细说明公式特征类别,正则匹配逻辑表。s2.根据得到的题型,学生作答信息和正确答案,判断答案是否正确;所述s2中含有答案不一致但仍然正确的题型,包括但不限于交换律、结合律、分数和小数以及不等式,
需要进行二次判断。
25.交换律、结合律题型 :四则运算、集合的交换律结合律,因为书写顺序不同,但是实际结果相同的。如:a
ꢀ×ꢀ
b = b
ꢀ×ꢀ
a;a
ꢀ×ꢀbꢀ×ꢀ
c = a
ꢀ×ꢀcꢀ×ꢀ
b = b
ꢀ×ꢀaꢀ×ꢀ
c;(a
×
b)
×
c=a
×
(b
×
c);(a∩b)∩c=a∩(b∩c);(a∪b)∪c=a∪(b∪c)。
26.判断依据:正确答案中存在四则运算、交集并集等符号,交换符号两边元素不改变结果的,存在括号,括号不会改变结果,则归属于交换律结合律类别。
27.不等式:用符号“》”“\neq
”ꢀ“
\leq
”ꢀ“
\geq”“《”表示大小关系的式子,叫作不等式。如:x》2 = 2《x;1《x《3 = 3》x》1;latex中用\leq,\geq,\neq来表示小于等于,大于等于,不等于。
28.判断依据:正确答案中包含相关字符的则归属为不等式类别。
29.分数和小数:答案的不同书写形式,如:分数等于小数0.5,分数等于小数0.75。判断依据:用小数点和latex中表示分数的字符 \frac 来判断。
30.需要说明的是,还存在其他题型,这些题型是仅仅需要计算的即可进行答案对比的题型。
31.s3.将得到的对比结果,以及学生作答的latex公式返回。
32.请参阅图2,本发明还提供一种基于sympy库的智能判题系统,包括识别模块,用于对学生的作业和试卷进行扫描和题型的识别;对比模块,用于对识别后的数据进行答案对比;数据模块,用于存储教师题库数据和学生批改数据,并对识别模块和对比模块提供数据支持。
33.见图2,识别模块包括录入单元和判断单元,录入单元包括扫描仪,扫描仪设置为佳能dr-6030c ,扫描仪根据学生作答图片进行ocr识别的latex公式,判断单元根据条件特征对其进行题型判断,并从数据模块中调出正确的latex公式。
34.对比模块包括转换单元和处理单元,转换单元将获取到的学生latex公式和正确答案公式进行转换,使用sympy库的parse_latex函数将latex公式转换为sympy库能够处理的格式,处理单元使用sympy库的equality库判断正确答案最简式和学生答案最简式对比,得到两个答案是否相等。
35.通过识别模块得到该题目答案的类型,使用python中的sympy库进行计算和对比,不同的题型的计算和对比方式不同。正确答案的latex公式已知,根据不同题型的判断依据,将题目划分为不同题型。
36.交换律结合律的题型:(1)将获取到的学生latex公式和正确答案公式进行转换,使用sympy库的parse_latex函数将latex公式转换为sympy库能够处理的格式。
37.(2)使用sympy库的simplify函数化简公式得到改公式的最简式。
38.(3)使用sympy库的equality库判断正确答案最简式和学生答案最简式对比,得到两个答案是否相等。相等则学生该题作答正确。
39.不等式的题型:(1)判断学生作答不等式符号类型和正确答案是否一致。
40.(2)同为大于号(大于等于)或者小于号(小于等于),将学生答案和正确答案直接对比完全一致则学生作答正确。例:学生答案为1《a《3,正确答案为1《a《3,与正确答案完全一致则作答正确。
41.(3)不等式符号不同情况,将学生答案和正确答案按照不等式符号切分,获取其他字符元素,再将学生答案的元素取反之后再与正确答案元素对比,完全一致则做答正确。例:学生答案3》a》1,正确答案1《a《3,将答案按照不等式字符进行切分,得到学生答案元素为[3,a,1],正确答案元素为[1,a,3],将学生答案元素取反得到结果为[1,a,3]。与正确答案元素完全一致则学生作答正确,反之错误。
[0042]
分数小数题型:(1)转换latex公式为sympy格式。
[0043]
(2)当正确答案和学生答案转换为小数,数值不相等,则学生作答一定不正确。
[0044]
(3)当学生答案和正确答案均为分数时,结果字符串完全一致则学生作答正确。
[0045]
(4)当一个答案是小数,一个答案是分数,只有转换为小数数值相等且使用sympy库的simplify函数化简分数得到的分数是最简分数时,可以判断学生作答正确。
[0046]
将学生作答图片进行ocr识别到的latex公式和正确答案对比,获取学生答题情况和得分情况,每道题与正确答案完全相同或经过答案对比模块得到学生作答正确的情况,则该计算题答题满分,其余情况均为零分,最终将结果发送到数据模块保存。
[0047]
具体的,该基于sympy库的智能判题方法与系统的工作原理:使用时,根据学生作答图片进行ocr识别的latex公式和正确答案的latex公式,以正则匹配的方式确定题型,之后使用python中的sympy库进行计算和对比,不同的题型的计算和对比方式不同,正确答案的latex公式已知,根据不同题型的判断依据,将题目划分为不同题型,将学生作答图片进行ocr识别到的latex公式和正确答案对比,获取学生答题情况和得分情况。本发明通过获取学生作答的latex公式,首先使用sympy库进行转换得到sympy可处理格式;其次通过对正确答案以正则匹配的方式确定题型,不同题型的判题方式不同;最后对学生作答信息使用答案对比模块进行处理得到学生作答情况及得分,能够对更多的公式类型进行识别,满足更多场景的使用。
[0048]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
技术特征:
1.一种智能判题方法,其特征在于,具体包括以下步骤:s1.题型判断,根据学生作答图片进行ocr识别的latex公式,并获取正确答案的latex公式,以正则匹配的方式确定题型;s2.根据得到的题型,学生作答信息和正确答案,判断答案是否正确;s3.将得到的对比结果,以及学生作答的latex公式返回。2.如权利要求1所述的一种智能判题方法,其特征在于,s1中latex公式关键词匹配的特征类别包括但不限于全局特征、数字/数据特征、代数式、方程、几何式、函数和向量。3.如权利要求2所述的一种智能判题方法与系统,其特征在于,所述全局特征的题型为含希腊字母的公式、带单位的公式、方程组和分段函数;所述数字/数据特征的题型为正数、整数、负数、正或负数、小数、角度、e、π和虚数;所述代数式的题型为变量数、变量负数次方、幂式、加法、减法、乘法、除法、无四则运算、sin、cos、tan、log、反三角函数、分数、百分数、根式、幂式和绝对值;所述方程特征的题型为单变量、双变量、三个或以上变量、等式、大于/小于式、大/小于等于式、多级等式/不等式和变量项次;所述几何式特征的题型为体、面、线、点、平行关系、垂直关系、三角形、四边形、圆、角、面积、体积和坐标点;所述函数特征的题型为函数定义式、一次函数、二次函数和反比例函数;所述向量特征的题型为向量加减、向量点乘、向量数乘、向量平行、向量垂直和向量的模。4.如权利要求3所述的一种智能判题方法,其特征在于,所述s2中含有答案不一致但仍然正确的题型,包括但不限于交换律、结合律、分数和小数以及不等式,需要进行二次判断。5.如权利要求1-4任意一项所述的一种智能判题方法,其特征在于,s3中进行答案对比的具体包括以下步骤:使用python中的sympy库进行计算和对比,不同的题型的计算和对比方式不同,正确答案的latex公式已知,根据不同题型的判断依据,将题目划分为不同题型,将学生作答图片进行ocr识别到的latex公式和正确答案对比,获取学生答题情况和得分情况。6.如权利要求1所述的一种智能判题方法所使用的系统,其特征在于,包括:识别模块,所述识别模块用于对学生的作业和试卷进行扫描和题型的识别;对比模块,所述对比模块用于对识别后的数据进行答案对比;数据模块,所述数据模块用于存储教师题库数据和学生批改数据,并对识别模块和对比模块提供数据支持。7.如权利要求6所述的一种智能判题系统,其特征在于,所述识别模块包括录入单元和判断单元,所述录入单元包括扫描仪,所述扫描仪根据学生作答图片进行ocr识别的latex公式,所述判断单元根据条件特征对其进行题型判断,并从所述数据模块中调出正确的latex公式。8.如权利要求6所述的一种智能判题系统,其特征在于,所述对比模块包括转换单元和处理单元,所述转换单元将获取到的学生latex公式和正确答案公式进行转换,使用sympy库的parse_latex函数将latex公式转换为sympy库能够处理的格式,所述处理单元使用sympy库的equality库判断正确答案最简式和学生答案最简式对比,得到两个答案是否相
等。9.如权利要求8所述的一种智能判题系统,其特征在于,所述转换单元在对学生late公式进行转换时,使用sympy库的simplify函数化简公式得到改公式的最简式。10.如权利要求6或9所述的一种智能判题系统,其特征在于,所述处理单元对每道题与正确答案完全相同或经过答案对比得到学生作答正确的情况,则该计算题答题满分,其余情况均为零分,并且将最终数据传送到所述存储模块中。
技术总结
本发明公开了一种智能判题方法与系统,该方法包括题型判断,根据学生作答图片进行ocr识别的latex公式,并获取正确答案的latex公式,以正则匹配的方式确定题型;根据得到的题型,学生作答信息和正确答案,判断答案是否正确;将得到的对比结果,以及学生作答的latex公式返回。本发明获取学生作答的latex公式,首先使用sympy库进行转换得到sympy可处理格式;其次通过对正确答案以正则匹配的方式确定题型,不同题型的判题方式不同;最后对学生作答信息使用答案对比模块进行处理得到学生作答情况及得分,能够对更多的公式类型进行识别,满足更多场景的使用。更多场景的使用。更多场景的使用。
技术研发人员:王钰 钱锟 李栋良 徐飞
受保护的技术使用者:中教云智数字科技有限公司
技术研发日:2023.03.13
技术公布日:2023/9/23
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/