CN111626280B - 一种无定位点答题卡识别方法和装置 - Google Patents
一种无定位点答题卡识别方法和装置 Download PDFInfo
- Publication number
- CN111626280B CN111626280B CN202010287514.5A CN202010287514A CN111626280B CN 111626280 B CN111626280 B CN 111626280B CN 202010287514 A CN202010287514 A CN 202010287514A CN 111626280 B CN111626280 B CN 111626280B
- Authority
- CN
- China
- Prior art keywords
- area
- identified
- image
- preset
- filling
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/22—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/24—Aligning, centring, orientation detection or correction of the image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/28—Quantising the image, e.g. histogram thresholding for discrimination between background and foreground patterns
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Image Analysis (AREA)
Abstract
本说明书一个或多个实施例提供一种无定位点答题卡识别方法和装置,包括:获取答题卡图像和模板文件,模板文件具有答题卡中各个关键区域的预期位置;检测答题卡图像的的旋转角度并将其旋转至标准样式;从各个关键区域中提取待识别候选区域,其面积大于或等于待识别区域;根据待识别区域的结构特征定位待识别候选区域中的待识别区域;其中,待识别区域包括考号区域、选择题填涂区域中的至少一个,通过二值化处理和膨胀腐蚀处理定位考号区域,通过神经网络处理定位选择题填涂区域;根据模板文件及对待识别区域的定位结果,对完成定位的待识别区域执行识别处理。上述方法可以实现答题卡待识别区域的定位与识别。
Description
技术领域
本说明书一个或多个实施例涉及计算机辅助阅卷技术领域,尤其涉及一种无定位点答题卡识别方法和装置。
背景技术
答题卡识别是教育行业广泛应用的一项技术。准确、快速地判断大批量答题卡客观题选项的正误是答题卡识别技术的核心任务。
在相关技术中,答题卡识别技术通常使用答题卡自身的定位点对客观题区域定位,再使用数字图像处理方法对客观题选项进行识别。这种方法使对答题卡制卡要求较高,制卡时若出现定位点或同步头的偏移、拉伸等情况,识别区域的定位也将出现偏差,对于密集排列的客观题识别将会出现较大误差,同时识别技术对打印机和扫描设备也需要有较高的精度,这使得答题卡识别的成本变高、使用范围受限。
另一方面,随着深度学习的发展,很多答题卡工业技术也开始采用深度学习方法,即利用训练过的深度卷积网络直接识别出客观题的所在区域。如若直接采用深度学习方法,需要大量人工标注客观题数据集,并且客观题数据集也因为客观题的排列、数量导致其自身拥有较高的多样性而不利于其特征的提取,导致定位准确率降低,影响后续的识别工作。
因此,需要新的答题卡定位及识别方式,可以不依赖答题卡本身的定位点或者同步头信息,实现答题卡待识别区域的定位与识别。
发明内容
有鉴于此,本说明书一个或多个实施例的目的在于提出一种,以解决的问题。
基于上述目的,本说明书一个或多个实施例提供了一种无定位点答题卡识别方法,包括:获取答题卡图像以及模板文件,所述模板文件具有答题卡中各个关键区域的预期位置;检测所述答题卡图像的的旋转角度并将所述答题卡图像旋转至标准样式;从所述各个关键区域中提取待识别候选区域,所述待识别候选区域的面积大于或等于待识别区域;根据所述待识别区域的结构特征定位所述待识别候选区域中的待识别区域;其中,所述待识别区域包括考号区域、选择题填涂区域中的至少一个,通过二值化处理和膨胀腐蚀处理定位所述考号区域,通过神经网络处理定位所述选择题填涂区域;根据模板文件及对所述待识别区域的定位结果,对完成定位的所述待识别区域执行识别处理。
在一种可能的实现方式中,通过二值化处理和膨胀腐蚀处理定位所述考号区域包括:将所述考号区域的图像反二值化,得到所述考号区域的反二值化图像;通过膨胀腐蚀处理保留所述考号区域的反二值化图像中的横线,获得横线的位置并确定横线的第一坐标;将横线的第一坐标划分为多组,将第一坐标值位于第一预设范围内的横线设为填涂区域的上边界,将第一坐标值位于第二预设范围内的横线设为填涂区域的下边界;如果位于第二预设范围内的横线数量低于预设值,则从下向上扫描所述考号区域的反二值化图像中的的每一行,直至找到第一个符合第一预设特征的行。
在一种可能的实现方式中,所述第一预设特征至少包括:灰度值相同的连续像素点的数量低于第一预设值,并且与相邻像素点灰度值不同的像素点个数大于或等于考号的位数的四倍。
在一种可能的实现方式中,上述方法还包括:提取所述考号区域的反二值化图像中的填涂块,根据所述所述填涂块的位置,得到所述填涂块的第二坐标;如果所述填涂块的第二坐标获取异常,则分别自左向右和自右向左进行列扫描,各自找到第一个符合第二预设特征的列,分别作为左右边界;其中,所述第二预设特征至少包括:灰度值相同的连续像素点的数量低于第二预设值,并且与相邻像素点灰度值不同的像素点个数位于第三预设范围。
在一种可能的实现方式中,通过神经网络处理定位所述选择题填涂区域包括:对所述选择题候选区的图像做反二值化处理,提取所述选择题候选区的图像中的待处理轮廓,根据所述待处理轮廓划分出待识别子区域;将所述待识别子区域输入至卷积神经网络中进行分类;根据所述卷积神经网络的分类结果,识别出所述待识别子区域内每个题目所在的位置。
在一种可能的实现方式中,根据模板文件及对所述待识别区域的定位结果,对完成定位的所述待识别区域执行识别处理包括:判断所述待识别区域的定位结果是否为条形码考号;如果判断结果为是,则确定条形码待识别区域;对所述条形码待识别区域进行带有预设二值化阈值的二值化处理并获得所述条形码待识别区域的二值化图像;对所述条形码待识别区域的二值化图像进行识别,如果识别失败,则调整所述预设二值化阈值,再次识别所述条形码待识别区;如果所述预设二值化阈值的调整超出预设范围,则停止识别所述条形码待识别区。
在一种可能的实现方式中,根据模板文件及对所述待识别区域的定位结果,对完成定位的所述待识别区域执行识别处理包括:提取完成定位的所述待识别区域中各个选项的填涂大小,将其放入第一数组中,并将所述第一数组进行排序;将排序后的所述第一数组划分为第一子数组和第二子数组;其中,所述第一子数组和第二子数组的方差和符合第一预设规则;判断所述第一子数组和所述第二子数组是否符合第二预设规则;如果判断结果为是,则判断所述待识别区域出现全部涂满的情况;如果判断结果为否,则判断所述待识别区域出现全未涂的情况。
本说明书一个或多个实施例还提供了一种无定位点答题卡识别装置,其特征在于,包括:图像获取模块,用于获取答题卡图像以及模板文件,所述模板文件具有答题卡中各个关键区域的预期位置;校正模块,用于检测所述答题卡图像的的旋转角度并将所述答题卡图像旋转至标准样式;提取模块,用于从所述答题卡图像中提取待识别候选区域,所述待识别候选区域的面积大于或等于待识别区域;定位模块,用于根据所述待识别区域的结构特征定位所述待识别候选区域中的待识别区域;其中,所述待识别区域包括考号区域、选择题填涂区域中的至少一个,通过二值化处理和膨胀腐蚀处理定位所述考号区域,通过神经网络处理定位所述选择题填涂区域;识别模块,用于根据模板文件及对所述待识别区域的定位结果,对完成定位的所述待识别区域执行识别处理。
本说明书一个或多个实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如上任意一项所述的方法。
本说明书一个或多个实施例还提供了一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一所述方法。
从上面所述可以看出,本说明书一个或多个实施例提供的无定位点答题卡识别方法,可以不依赖答题卡本身的定位点或者同步头信息,实现答题卡待识别区域的定位与识别,并且广泛适用于各种答题卡。
另一方面,上述方法,利用图像处理技术及深度学习进行题号定位,可以加强对客观题区域定位的准确性,从而提高了客观题区域的定位效率,可以避免完全依赖定位点或同步头的问题,或者可以减小制卡、扫描设备自身精密度带来的影响。
另一方面,上述方法的模型结合卷积神经网络,对印刷体题号数字进行特征学习,使模型具有快速识别分类能力。另外,上述方法使用最小方差划分法来计算阈值,可以有效分离出填涂与未填涂的选项,可以有效分离正常填涂与擦得不干净的选项,从而提高识别准确率。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一个或多个实施例的无定位点答题卡识别方法的流程示意图;
图2为本说明书一个或多个实施例的无定位点答题卡识别方法的另一种流程示意图;
图3为本说明书一个或多个实施例的定位待识别区域的流程示意图;
图4为本说明书一个或多个实施例的识别已定位区域的流程示意图;
图5为本说明书一个或多个实施例的考号填涂区域的候选区域的示意图;
图6为本说明书一个或多个实施例的提取填涂块的结果示意图;
图7为本说明书一个或多个实施例的提取横线的结果示意图;
图8为本说明书一个或多个实施例的定位考号填涂区域后的结果示意图;
图9为本说明书一个或多个实施例的选择题题号区域经过反二值化操作的结果示意图;
图10为本说明书一个或多个实施例的选择题的定位结果示意图;
图11为本说明书一个或多个实施例的考号填涂区域的结构示意图;
图12为本说明书一个或多个实施例的电子设备硬件结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本说明书一个或多个实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本说明书一个或多个实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
本说明书实施例中所述支付涉及的技术载体,例如可以包括近场通信(NearField Communication,NFC)、WIFI、3G/4G/5G、POS机刷卡技术、二维码扫码技术、条形码扫码技术、蓝牙、红外、短消息(Short Message Service,SMS)、多媒体消息(MultimediaMessage Service,MMS)等。
本说明书实施例中所述生物识别所涉及的生物特征,例如可以包括眼部特征、声纹、指纹、掌纹、心跳、脉搏、染色体、DNA、人牙咬痕等。其中眼纹可以包括虹膜、巩膜等生物特征。
需要说明的是,本说明书的一个或多个实施例中提到的答题卡的结构根据实际的应用会有所不同,但是可以根据实施例中所提及的结构特征以及步骤,确定出合适的定位与识别方法。
本说明书一个或多个实施例提供一种无定位点答题卡识别方法,如图1所示,图1为本说明书一个或多个实施例的无定位点答题卡识别方法的流程示意图,包括:
步骤A10:获取答题卡图像以及模板文件,模板文件具有答题卡中各个关键区域的预期位置。
在此步骤中,可以读取答题卡图像以及模板文件,且模板文件记录了答题卡中各个关键区域的预期位置。
需要说明的是,答题卡图像可以包括多种区域,例如选择题的填涂区域,多位数的考号的填涂区域,客观题的答题区域等,答题卡图像中的区域类型根据实际需要而不同,在此不作限定。
需要说明的是,模板文件具有答题卡中各个关键区域的预期位置,即模板文件记录了答题卡中各个关键区域的预期位置,所以模板文件中记录的各个关键区域的预期位置可以用于辅助定位答题卡图像中的多种区域。
需要说明的是,各个关键区域可以是选择题的填涂区域,也可以是多位数的考号的填涂区域,各个关键区域可以根据实际需要进行确定,在此不作限定。
需要说明的是,模板文件中记录的各个关键区域的预期位置可以根据实际需要进行选择,例如选择题的填涂区域的预期位置记录于答题卡中部的位置,考号的填涂区域记录于答题卡右上角的位置,在此不作限定。
需要说明的是,各个关键区域的预期位置可以根据答题卡制卡时设计的答题区域的结构进行确定,从而根据各个关键区域的预期位置可以推测出答题卡图像中各种区域所在的位置。例如,答题卡制卡时,将选择题的填涂区域设置于答题卡右上角的位置,则选择题的填涂区域的预期位置可以为答题卡右上角的位置。应该理解,在预期位置所获取的图像,可能与期望的图像不同。
步骤A20:检测答题卡图像的的旋转角度并将答题卡图像旋转至标准样式。
通过此步骤,可以对答题卡图像的角度进行校正,从而降低后续图像识别的难度,提升图像识别结果的准确度。
需要说明的是,标准样式下的答题卡图像的角度可以与模板文件中记录的答题卡图像的角度相同,因此将答题卡图像旋转至标准样式后,使用模板文件作为参照时更为方便。
步骤A30:从各个关键区域中提取待识别候选区域,待识别候选区域的面积大于或等于待识别区域。
在此步骤中,可以提取待识别候选区域。因此,本说明书的实施例中提及的方法,可以允许图像有偏移、拉伸等现象,即实际得到的答题卡与模板文件相比可以存在偏差,因此可以首先根据模板文件在原始答题卡图像中提取每个区域相应的候选区域(即待识别候选区域)。候选区域是涵盖了目标区域,相比目标区(即待识别区域)更大的区域。
因为提取待识别候选区域时,所截取图像的位置与待识别区域的位置相比,不易做到恰好相同,所以先提取待识别候选区域,再提取待识别区域,可以降低后续图上识别的难度。
举例来说,待识别候选区域可以是包括选择题的填涂区域的区域和选择题的填涂区域周围的部分区域,而选择题的填涂区域即为待识别区域。
步骤A40:根据待识别区域的结构特征定位待识别候选区域中的待识别区域;其中,待识别区域包括考号区域、选择题填涂区域中的至少一个,通过二值化处理和膨胀腐蚀处理定位考号区域,通过神经网络处理定位选择题填涂区域。
在此步骤中,根据不同区域的结构特征,对不同区域使用不同的方法进行定位,从而可以提升对各个待识别区域的识别结果的准确度。
举例来说,考号区域的结构特征可以是:以列为单位,每一列代表一位考号;填涂区域上方有手写考号区域,两个区域之间存在一条直线;填涂区域的每一行之间没有直线;填涂区域的最下方直线可有可无。因此,根据前述结构特征,通过二值化处理和膨胀腐蚀处理定位考号区域。
又如,选择题的填涂区域的结构特征可以是,规则排布的子区域,每一题的填涂区域结构相似,选项数量较少,所以可以通过神经网络处理定位选择题填涂区域。
在一种可能的实现方式中,待识别区域可以包括考号区域、选择题填涂区域、选做题填涂区域。而考号区域的形式可以根据实际需要进行选择,例如,考号区域可以包括填涂和条形码两种样式。
对于选择题,可以通过图形学的处理,在答题卡图像中提取出待识别的子区域,利用深度神经网络识别所述子区域,挑选出所有子区域中是数字的那部分,再经过一系列的异常情况处理,最终确定该候选区域内数字的位置,从而得到每个题目的位置。
对于考号填涂区域,可以将候选区二值化,在二值化图像中提取横线,根据得到的横线位置,判断考号填涂区域在图像Y轴上的坐标。通过一定的阈值,对二值化图像做膨胀腐蚀操作,仅保留考生填涂的痕迹,从而得到填涂区域在图像X轴上的坐标。如果考号是以条形码的形式出现,可以不进行定位处理,直接将候选区输入Zbar库进行识别。
步骤A50:根据模板文件及对待识别区域的定位结果,对完成定位的待识别区域执行识别处理。
在此步骤中,对已经完成定位的待识别区域,可以使用经过训练的神经网络进行识别,或者提取选项的位置特征进行识别,可以根据实际需要,选择合适的方法执行识别处理,对此不作限定。
在一种可能的实现方式中,已完成定位的待识别区域类型包括:条形码考号、填涂考号、单选题、多选择题。其中,填涂考号的一列对应一位考号,相当于一个选择题,因此填涂考号和选择题可以使用相同的识别处理。对于不同类型的待识别区域,可以选择合适的处理方式分别对其进行识别。
对于条形码考号,对条形码待识别区域执行二值化操作,二值化阈值记为K,K∈[3,255],K的初始值为3,将二值化后的图像输入zbar接口,如果识别失败,则令K=K+step(step取值可调整),重新执行二值化操作并输入zbar接口。直至成功识别出条码或K>255时停止。
对客观题区域图像进行横向和纵向膨胀腐蚀,减少未填涂选项的黑色像素点个数,避免印刷过重对识别造成干扰。
另一方面,可以提取选项的填涂大小,并使用最小方差划分算法计算阈值,消除空白选项。
另一方面,可以提取非空白选项的填涂灰度,再次使用最小方差划分算法计算阈值,找出正确填涂的选项。
通过上述方法,可以不依赖答题卡本身的定位点或者同步头信息,实现答题卡待识别区域的定位与识别,并且广泛适用于各种答题卡。
另一方面,上述方法,利用图像处理技术及深度学习进行题号定位,可以加强对客观题区域定位的准确性,从而提高了客观题区域的定位效率,可以避免完全依赖定位点或同步头的问题,或者可以减小制卡、扫描设备自身精密度带来的影响。
另一方面,上述方法的模型结合卷积神经网络,对印刷体题号数字进行特征学习,使模型具有快速识别分类能力。另外,上述方法使用最小方差划分法来计算阈值,可以有效分离出填涂与未填涂的选项,可以有效分离正常填涂与擦除不干净的选项,从而提高识别准确率。
在一种可能的实现方式中,上述方法还包括:将识别结果以及识别出的异常情况信息保存至文档。
在一种可能的实现方式中,通过二值化处理和膨胀腐蚀处理定位考号区域包括:
步骤A41:将考号区域的图像反二值化,得到考号区域的反二值化图像。
步骤A42:通过膨胀腐蚀处理保留考号区域的反二值化图像中的横线,获得横线的位置并确定横线的第一坐标。
步骤A43:将横线的第一坐标划分为多组,将第一坐标值位于第一预设范围内的横线设为填涂区域的上边界,将第一坐标值位于第二预设范围内的横线设为填涂区域的下边界。
步骤A44:如果位于第二预设范围内的横线数量低于预设值,则从下向上扫描考号区域的反二值化图像中的的每一行,直至找到第一个符合第一预设特征的行。
举例来说,如果考号区域的每一位考号纵向排列,则可以选择横线在X轴上的坐标作为第一坐标。又如,如果考号区域的每一位考号横向排列,则可以选择横线在Y轴上的坐标作为第一坐标。
需要说明的是,第一预设范围和第二预设范围可以根据实际需要进行选择,只要能够定位出填涂区域的上边界和下边界即可。例如,可以选择第一坐标值中最大值的三分之一作为第一预设范围,选择第一坐标值中的最大值的三分之二至第一坐标值的最大值作为第二预设范围。
通过上述方法,可以确定考号区域中的上边界和下边界。
在一种可能的实现方式中,第一预设特征至少包括:灰度值相同的连续像素点的数量低于第一预设值,并且与相邻像素点灰度值不同的像素点个数大于或等于考号的位数的四倍。
具体的,如图11所示,图11为本说明书一个或多个实施例的考号填涂区域的结构示意图;考号填涂区域与手写考号之间会有一条直线,因此可以通过此特征确定出括号填涂区域的上边界。而填涂区域下方,可能会出现没有任何横线的情况,在较多情况下填涂区域下方为空白,或者仅有少数的文字。所以由下向上扫描的过程可以找到最后一行填涂区域(以每位考号是竖向为例)。
具体的,向上扫描的过程,相当于从空白区域,进入填涂区域。空白区域有很长的连续白色像素点,相邻像素之间基本都是白色。而填涂区域,由于文字、括号等的存在,不会出现很长的连续白色像素点;在文字部分所处区域,相邻像素点颜色不同的情况会频繁出现。
如果位于第二预设范围内的横线数量低于预设值,那么从下向上的扫描过程中,可以认为是从空白区域进入填涂区域。空白区域的特点是具有连续的白色像素点;填涂区域的特点是,由于文字、括号等的存在,填涂区域内相邻像素点的颜色几乎相同,较长的连续白色像素点区域较少。因此,从空白区域进入填涂区域的过程中,可以使用灰度值相同的连续像素点的数量低于第一预设值这一特征进行定位;而文字,括号等的存在,使得相邻像素点颜色相同的像素数量减少,因而可以使用与相邻像素点灰度值不同的像素点个数大于或等于考号的位数的四倍这一特征。
需要说明的是,在每一行像素中,填涂选项(以带中括号的选项为例,例如“[3]”这一形式)的每个边界上的像素具有两个相邻像素,一个为白色像素,一个为黑色像素,所以每个选项的一行像素中,至少存在四个与相邻像素点灰度值不同的像素点。
因此,通过上述第一预设特征,可以定位到填涂区域的下边界(或者,可以定位到从下往上,第一个填涂区域出现的位置)。
需要说明的是,第一预设特征可以根据实际需要进行选择,并不仅限于本说明书中所列举出的特征。
需要说明的是,第一预设值的具体数值可以根据实际需要进行选择,例如根据图像DPI、允许的偏移范围等进行确定,对此不作限定。
在一种可能的实现方式中,上述方法还包括,提取考号区域的反二值化图像中的填涂块,根据填涂块的位置,得到填涂块的第二坐标。如果填涂块的第二坐标获取异常,则分别自左向右和自右向左进行列扫描,各自找到第一个符合第二预设特征的列,分别作为左右边界。其中,第二预设特征至少包括:灰度值相同的连续像素点的数量低于第二预设值,并且与相邻像素点灰度值不同的像素点个数位于第三预设范围。
需要说明的是,填涂块的第二坐标可以是填涂块的X轴坐标,也可以是填涂块的Y轴坐标,具体选取何种类型的坐标作为填涂块的第二坐标可以根据实际需要进行选择,对此不作限定,只要能够根据填涂块的第二坐标定位出填涂块的位置即可。
如果考号区域中的填涂块出现填涂块数量异常的情况,则可能导致填涂块的第二坐标获取异常。在填涂块的第二坐标获取异常的情况下,可以分别自左向右和自右向左进行列扫描,各自找到第一个符合第二预设特征的列,分别作为左右边界。
可以根据实际需要来选择合适的特征作为第二预设特征,只要能够定位出考号区域中的填涂块的位置即可,对此不作限定,例如,可以选取灰度值相同的连续像素点的数量低于第二预设值作为第二预设特征,也可以选取与相邻像素点灰度值不同的像素点个数位于第三预设范围作为第二预设特征。
需要说明的是,第二预设值和第三预设范围可以根据实际需要进行选择。例如,第二预设值可以是一个固定的数值,也可以根据答题卡的不同进行调整;第三预设范围可以是根据经验预设的具体数值范围,也可以根据答题卡的不同进行调整。
通过上述方法,可以避免出现填涂不符合规范或者未填涂导致的考号区域定位异常的情况。
在一种可能的实现方式中,通过神经网络处理定位选择题填涂区域包括:对选择题候选区的图像做反二值化处理,提取选择题候选区的图像中的待处理轮廓,根据待处理轮廓划分出待识别子区域;将待识别子区域输入至卷积神经网络中进行分类;根据卷积神经网络的分类结果,识别出待识别子区域内每个题目所在的位置。
需要说明的是,选择题候选区中,每题均有对应的题号,该题号下具有提供的选项,因此识别出题号的轮廓后,可以将该轮廓或该轮廓及其周围轮廓所在的区域作为待识别子区域,对该待识别子区域的识别,即可定位该题号所对应的题目所在的位置。
在一种可能的实现方式中,根据模板文件及对待识别区域的定位结果,对完成定位的待识别区域执行识别处理包括:
步骤A511:判断待识别区域的定位结果是否为条形码考号。
步骤A512:如果判断结果为是,则确定条形码待识别区域。
步骤A513:对条形码待识别区域进行带有预设二值化阈值的二值化处理并获得条形码待识别区域的二值化图像。
步骤A514:对条形码待识别区域的二值化图像进行识别,如果识别失败,则调整预设二值化阈值,再次识别条形码待识别区。
步骤A515:如果预设二值化阈值的调整超出预设范围,则停止识别条形码待识别区。
通过上述步骤,完成对条形码考号的识别。
在一种可能的实现方式中,判断待识别区域的定位结果是否为条形码考号,如果判断结果为否,则继续进行下一步骤。例如,判断待识别区域的定位结果是否为选择题的填涂区域,或者判断待识别区域的定位结果是否为考号区域的填涂块,对于下一步骤的具体内容可以根据实际需要进行选择,对此不作限定。
在一种可能的实现方式中,根据模板文件及对待识别区域的定位结果,对完成定位的待识别区域执行识别处理包括:
步骤A521:提取完成定位的待识别区域中各个选项的填涂大小,将其放入第一数组中,并将第一数组进行排序。
步骤A522:将排序后的第一数组划分为第一子数组和第二子数组。其中,所述第一子数组和第二子数组的方差和符合第一预设规则。
步骤A523:判断所述第一子数组和所述第二子数组是否符合第二预设规则。
如果判断结果为是,则判断待识别区域出现全部涂满的情况。
如果判断结果为否,则判断待识别区域出现全未涂的情况。
需要说明的是,对第一预设规则和第二预设规则的设置,可以根据实际需要进行选择,只要能够提升对填涂和未填涂的选项的识别的准确度即可。例如,第一预设规则可以是第一子数组和第二子数组的方差和最小,或者平方根的差值最小;第二预设规则可以是第一子数组和第二子数组的平均值差值位于预设范围内,或者第一子数组和第二子数组的立方和的差值位于预设范围内。
举例来说,对于第一子数组和第二子数组的划分,采用“最小方差和”划分算法,即使得划分出来的两个子数组,其各自的方差a1,a2满足在所有的划分情况下a1+a2最小。例如:对于第一数组{1,2,3,11,12,14},有多种划分方法:划分为{1}和{2,3,4,11,12,14},或者划分为{1,11}和{2,3,12,14}等。而方差和最小的划分方法是划分为{1,2,3}和{11,12,14}。
进行上述步骤之后,计算第一子数组的平均值b1,第二子数组的平均值b2,如果b2、b1的值相近,则认为出现了全涂或者全未涂的情况。根据不同的情况,设定不同的阈值X,可以认为填涂大小大于X的为候选项。
需要说明的是,填涂大小是指选项区域内非白色像素点的个数。上述步骤,通过对第一数组的处理,可以将将填涂和未填涂的选项分开;通过对第二数组的处理,可以增加一层判断,提升对填涂和未填涂的选项的识别的准确度。
需要说明的是,本说明书中一个或多个实施例中的步骤并无必然的先后关系,可以根据实际需要选择步骤的执行顺序。
本说明书一个或多个实施例提供一种无定位点答题卡识别方法,如图2所示,图2为本说明书一个或多个实施例的无定位点答题卡识别方法的另一种流程示意图。接下来,结合图3至图9,对图2中所示出的方法进行说明。其中,图3为本说明书一个或多个实施例的定位待识别区域的流程示意图;图4为本说明书一个或多个实施例的识别已定位区域的流程示意图;图5为本说明书一个或多个实施例的考号填涂区域的候选区域的示意图;图6为本说明书一个或多个实施例的提取填涂块的结果示意图;图7为本说明书一个或多个实施例的提取横线的结果示意图;图8为本说明书一个或多个实施例的定位考号填涂区域后的结果示意图;图9为本说明书一个或多个实施例的选择题题号区域经过反二值化操作的结果示意图;图10为本说明书一个或多个实施例的选择题的定位结果示意图。
图2中所示出的无定位点答题卡识别方法包括:
步骤S101,读取答题卡图像以及对应的模板文件。所述模板文件可以视为答题卡的设计文件,记录了答题卡中各个区域的标准位置。解析模板文件,获得答题卡定位与识别所需要各区域标准位置。
步骤S102,图像旋转校正。
通过此步骤,可以允许答题卡在其制作与扫描过程中,存在因设备原因引起的图像倾斜。在进行定位与识别之前,可以通过傅里叶变换和霍夫直线检测,得到图像的倾斜角度,并加以校正。
步骤S103,提取待识别区候选区域。
除步骤S102中所述图像异常外,实际所得的答题卡图像与模板文件相比较,还可能有所偏移、缩放,因此步骤S101中获得的各区域位置只是一个粗略位置,并不能准确定位到实际的图像中。在实际定位时,可以根据大概位置,向上下左右四个方向扩展一定的距离,得到待识别区域的候选区(待识别区候选区域),如图5、图9所示。
步骤S104,定位待识别区域。
对步骤S103得到的待识别区候选区域,进行精准定位,主要包括考号填涂区域和选择题的定位,包括:
步骤S41,对于考号填涂区域进行定位。此步骤包括:
步骤S411,获取考号填涂区域中横线的位置。
如图5,考号填涂区域,具有以下特征:
A:以列为单位,每一列代表一位考号。
B:填涂区域上方有手写考号区域,两个区域之间存在一条直线。
C:填涂区域的每一行之间没有直线。
D:填涂区域的最下方直线可有可无。
针对满足以上特征的考号填涂区域,首先将该区域图像反二值化,使得原图像中颜色较深的像素点变为白色,颜色较浅的像素点变为黑色,该操作有利于之后使用OpenCV的开源方法cvFindContours提取图像中的轮廓。通过特定的膨胀腐蚀,保留候选区反二值化图像中的横线,得到横线位置,如图7。
步骤S412,获取考号填涂区域的上边界和下边界。
根据横线的Y轴坐标Yi,将所得到的横线,分为三组。
取第一组中Y值最大的横线为填涂区域的上边界,取第三组中Y值最小的横线为填涂区域的下边界。如果不存在第三组直线,则需要从下向上扫描反二值化图像的每一行,直至找到第一个符合以下特征的行:
没有连续N个灰度值相同的像素点,其中,N可根据实际情况进行调整,该值与图像DPI、允许的偏移范围均有关。
cout1≥4*len,其中,“cout1”表示与相邻像素点灰度值不同的像素点个数,“len”表示考号的位数。
将该行作为考号填涂区域的下边界。
步骤S413,对考号填涂区域的异常进行处理。
对候选区的反二值化图像做特定的膨胀腐蚀操作,使得图像中仅保留考生填涂的部分,如图6,由于考号填涂区域是以列为单位,每列对应一位考号,因此对于正常填涂的图像,每一列均有一个填涂块,提取到每一列的填涂块,便得到了填涂区域每一列的X轴坐标。如果考生填涂不符合规范或者未填涂,提取的填涂块数量将不符合预期,此时将抛出异常,同时执行以下异常处理:
分别自左向右和自右向左进行列扫描,各自找到第一个符合以下特征的列,分别作为左右边界:
特征A:没有连续M个灰度值相同的像素点,其中,M的值可调整,具体设定依据可以参考N的设定依据。
特征B:40≤cout2≤60,其中,“cout2”表示与相邻像素点灰度值不同的像素点个数
至此,将得到如图8所示的考号填涂区域的精准定位。
步骤S42,对于选择题填涂区域进行定位。此步骤包括:
步骤S421,对选择题候选区图像做反二值化操作,如图9。使用OpenCV开源的cvFindContours方法提取图像中的轮廓,每一个轮廓对应的图像视为一个子区域。
步骤S422,将子图像输入到卷积神经网络做分类。所述卷积神经网络所支持的分类包含以下5类:
分类a:数字0–9。
分类b:数字10–19。
分类c:数字20及以上。
分类d:未填涂的选项块,以及对应原图中汉字等黑色像素点稀疏的干扰项。
分类e:已填涂的选项框,以及对应原图中黑色像素比较多的干扰项。
S423,统计所有子区域的分类情况,剔除上述d、e两类子区域,保留上述a、b、c三类子区域,得到当前候选区域内每个题目所在的位置,如图10所示。
步骤S105,识别已定位的区域。
对于条形码考号,对条形码待识别区域执行二值化操作,二值化阈值记为K,K∈[3,255],K的初始值为3,将二值化后的图像输入zbar接口,如果识别失败,则令K=K+step(step取值可调整),重新执行二值化操作并输入zbar接口。直至成功识别出条码或K>255时停止。
对于填涂考号和选择题区域,执行以下步骤:
步骤S501,读取已经精确定位的各选项的位置。
步骤S502,对选项区域进行小规模横向和纵向腐蚀,以减少未填涂选项的黑色像素点个数,以避免印刷过重造成的干扰。
步骤S503,提取各个选项的填涂大小,填涂大小是指该选项区域内非白色像素点的个数,将其放入数组中,并将数组排序。此步骤可以充分利用填涂一致性,对所有的客观题进行整体考虑。
然后使用最小方差划分算法计算出阈值。最小方差划分算法是指,对于排序好的数组,求出一个划分,使得划分出来的两个子数组的方差和最小。这是一种十分简洁高效的二分算法,能很好的将填涂和未填涂的选项分开。
但是,为了避免出现对全涂和全未涂情况的错误识别,可以增加一层判断,比较划分成的两个子数组的平均值差值,如果差值较小,则认为出现全涂和全未涂的情况;再比较数组的整体平均值,如果平均值较大,则认为是全涂情况,阈值可设为0,如果平均值较小,则认为是全未涂的情况,可将阈值设为数组的最大值;如果差值较大,则将阈值设为第一个子数组的最大值。
利用计算好的阈值,对各题各选项进行遍历,将大于阈值的选项作为候选项。
步骤S504,剔除掉考生擦除不干净的选项。提取候选项的填涂灰度,填涂灰度是指该选项区域内非白色像素点的像素平均值,计算填涂灰度是剔除掉白色像素点能有效避免填涂大小不一造成的干扰;将其存入数组中,并将其排序;
再次使用最小方差划分算法,求出填涂灰度的阈值;为了避免无擦除不干净的选项的情况,再加一层判断;如果划分成的两个数组的平均值差值较小,则直接认为不存在擦除不干净的选项出现,将阈值设为255;如果差值较大,则将阈值设为划分出的第二个数组的最小值。再遍历候选项,小于阈值的则认为是考生的填涂选项。
步骤S106,将识别结果以及识别出的异常情况信息保存至文档。
通过上述方法,可以不依赖答题卡本身的定位点或者同步头信息,实现答题卡待识别区域的定位与识别,并且广泛适用于各种答题卡。
另一方面,上述方法,利用图像处理技术及深度学习进行题号定位,可以加强对客观题区域定位的准确性,从而提高了客观题区域的定位效率,可以避免完全依赖定位点或同步头的问题,或者可以减小制卡、扫描设备自身精密度带来的影响。
另一方面,上述方法的模型结合卷积神经网络,对印刷体题号数字进行特征学习,使模型具有快速识别分类能力。上述方法使用最小方差划分法来计算阈值,可以有效分离出填涂与未填涂的选项,可以有效分离正常填涂与擦得不干净的选项,从而提高识别准确率。
本说明书的一个或多个实施例还提供一种无定位点答题卡识别装置,包括:
图像获取模块,用于获取答题卡图像以及模板文件,所述模板文件具有答题卡中各个关键区域的预期位置。
校正模块,用于检测所述答题卡图像的的旋转角度并将所述答题卡图像旋转至标准样式。
提取模块,用于从所述答题卡图像中提取待识别候选区域,所述待识别候选区域的面积大于或等于待识别区域。
定位模块,用于根据所述待识别区域的结构特征定位所述待识别候选区域中的待识别区域;其中,所述待识别区域包括考号区域、选择题填涂区域中的至少一个,通过二值化处理和膨胀腐蚀处理定位所述考号区域,通过神经网络处理定位所述选择题填涂区域。
识别模块,用于根据模板文件及对所述待识别区域的定位结果,对完成定位的所述待识别区域执行识别处理。
通过上述装置,可以不依赖答题卡本身的定位点或者同步头信息,实现答题卡待识别区域的定位与识别,并且广泛适用于各种答题卡。
本说明书的一个或多个实施例还提供一种无定位点答题卡识别装置,包括:
图像获取模块。本模块用于获取真实待识别的答题卡电子扫描图像。
图像校正模块。本模块基于本发明提出的方法,输入所述答题卡题号扫描图像,对答题卡进行预处理操作,包括反二值化、膨胀腐蚀等处理。
定位待识别区域模块。本模块定位预处理后的图像,并根据设定条件筛选过滤,得到单位题号定位结果。
识别已定位区域模块。本模块基于预训练卷积神经网络模型,识别具有定位结果的图像,得到题号识别结果。
通过上述装置,可以不依赖答题卡本身的定位点或者同步头信息,实现答题卡待识别区域的定位与识别,并且广泛适用于各种答题卡。
另一方面,上述装置,利用图像处理技术及深度学习进行题号定位,可以加强对客观题区域定位的准确性,从而提高了客观题区域的定位效率,可以避免完全依赖定位点或同步头的问题,或者可以减小制卡、扫描设备自身精密度带来的影响。
另一方面,上述装置的模型结合卷积神经网络,对印刷体题号数字进行特征学习,使模型具有快速识别分类能力。另外,上述方法使用最小方差划分法来计算阈值,可以有效分离出填涂与未填涂的选项,可以有效分离正常填涂与擦得不干净的选项,从而提高识别准确率。
本说明书一个或多个实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如上任意一项所述的方法。
本说明书一个或多个实施例还提供了一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一所述方法。
需要说明的是,如无特殊说明,本说明书一个或多个实施例中提到的X轴或Y轴的方向可以理解为平面坐标轴中的X轴所指方向或Y轴所指方向,可以根据本说明书的一个或多个实施以及附图得出X轴或Y轴所指含义。
需要说明的是,本说明书一个或多个实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本说明书一个或多个实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成的方法。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述实施例中相应的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
图12示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,图12为本说明书一个或多个实施例的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上的本说明书一个或多个实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本说明书一个或多个实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本说明书一个或多个实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本说明书一个或多个实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本说明书一个或多个实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本说明书一个或多个实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (8)
1.一种无定位点答题卡识别方法,其特征在于,包括:
获取答题卡图像以及模板文件,所述模板文件具有答题卡中各个关键区域的预期位置;
检测所述答题卡图像的的旋转角度并将所述答题卡图像旋转至标准样式;
从所述各个关键区域中提取待识别候选区域,所述待识别候选区域的面积大于或等于待识别区域;
根据所述待识别区域的结构特征定位所述待识别候选区域中的待识别区域;其中,所述待识别区域包括考号区域、选择题填涂区域中的至少一个,通过二值化处理和膨胀腐蚀处理定位所述考号区域,通过神经网络处理定位所述选择题填涂区域;
根据模板文件及对所述待识别区域的定位结果,对完成定位的所述待识别区域执行识别处理;
其中,所述通过二值化处理和膨胀腐蚀处理定位所述考号区域包括:
将所述考号区域的图像反二值化,得到所述考号区域的反二值化图像;
通过膨胀腐蚀处理保留所述考号区域的反二值化图像中的横线,获得横线的位置并确定横线的第一坐标;
将横线的第一坐标划分为多组,将第一坐标值位于第一预设范围内的横线设为填涂区域的上边界,将第一坐标值位于第二预设范围内的横线设为填涂区域的下边界;
如果位于第二预设范围内的横线数量低于预设值,则从下向上扫描所述考号区域的反二值化图像中的的每一行,直至找到第一个符合第一预设特征的行;所述第一预设特征至少包括,灰度值相同的连续像素点的数量低于第一预设值,并且与相邻像素点灰度值不同的像素点个数大于或等于考号的位数的四倍。
2.根据权利要求1所述的方法,其特征在于,还包括:
提取所述考号区域的反二值化图像中的填涂块,根据所述填涂块的位置,得到所述填涂块的第二坐标;
如果所述填涂块的第二坐标获取异常,则分别自左向右和自右向左进行列扫描,各自找到第一个符合第二预设特征的列,分别作为左右边界;
其中,所述第二预设特征至少包括:灰度值相同的连续像素点的数量低于第二预设值,并且与相邻像素点灰度值不同的像素点个数位于第三预设范围。
3.根据权利要求1所述的方法,其特征在于,通过神经网络处理定位所述选择题填涂区域包括:
对所述选择题候选区的图像做反二值化处理,提取所述选择题候选区的图像中的待处理轮廓,根据所述待处理轮廓划分出待识别子区域;
将所述待识别子区域输入至卷积神经网络中进行分类;
根据所述卷积神经网络的分类结果,识别出所述待识别子区域内每个题目所在的位置。
4.根据权利要求1所述的方法,其特征在于,根据模板文件及对所述待识别区域的定位结果,对完成定位的所述待识别区域执行识别处理包括:
判断所述待识别区域的定位结果是否为条形码考号;
如果判断结果为是,则确定条形码待识别区域;
对所述条形码待识别区域进行带有预设二值化阈值的二值化处理并获得所述条形码待识别区域的二值化图像;
对所述条形码待识别区域的二值化图像进行识别,如果识别失败,则调整所述预设二值化阈值,再次识别所述条形码待识别区;
如果所述预设二值化阈值的调整超出预设范围,则停止识别所述条形码待识别区。
5.根据权利要求1所述的方法,其特征在于,根据模板文件及对所述待识别区域的定位结果,对完成定位的所述待识别区域执行识别处理包括:
提取完成定位的所述待识别区域中各个选项的填涂大小,将其放入第一数组中,并将所述第一数组进行排序;
将排序后的所述第一数组划分为第一子数组和第二子数组;
其中,所述第一子数组和第二子数组的方差和最小;
判断所述第一子数组和所述第二子数组的平均值差值是否位于预设范围内;
如果判断结果为是,则判断所述待识别区域出现全部涂满的情况;
如果判断结果为否,则判断所述待识别区域出现全未涂的情况。
6.一种无定位点答题卡识别装置,其特征在于,包括:
图像获取模块,用于获取答题卡图像以及模板文件,所述模板文件具有答题卡中各个关键区域的预期位置;
校正模块,用于检测所述答题卡图像的的旋转角度并将所述答题卡图像旋转至标准样式;
提取模块,用于从所述答题卡图像中提取待识别候选区域,所述待识别候选区域的面积大于或等于待识别区域;
定位模块,用于根据所述待识别区域的结构特征定位所述待识别候选区域中的待识别区域;其中,所述待识别区域包括考号区域、选择题填涂区域中的至少一个,通过二值化处理和膨胀腐蚀处理定位所述考号区域,通过神经网络处理定位所述选择题填涂区域;
识别模块,用于根据模板文件及对所述待识别区域的定位结果,对完成定位的所述待识别区域执行识别处理;
其中,所述通过二值化处理和膨胀腐蚀处理定位所述考号区域包括:
将所述考号区域的图像反二值化,得到所述考号区域的反二值化图像;
通过膨胀腐蚀处理保留所述考号区域的反二值化图像中的横线,获得横线的位置并确定横线的第一坐标;
将横线的第一坐标划分为多组,将第一坐标值位于第一预设范围内的横线设为填涂区域的上边界,将第一坐标值位于第二预设范围内的横线设为填涂区域的下边界;
如果位于第二预设范围内的横线数量低于预设值,则从下向上扫描所述考号区域的反二值化图像中的的每一行,直至找到第一个符合第一预设特征的行;所述第一预设特征至少包括,灰度值相同的连续像素点的数量低于第一预设值,并且与相邻像素点灰度值不同的像素点个数大于或等于考号的位数的四倍。
7.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任意一项所述的方法。
8.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行权利要求1至5任一所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010287514.5A CN111626280B (zh) | 2020-04-13 | 2020-04-13 | 一种无定位点答题卡识别方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010287514.5A CN111626280B (zh) | 2020-04-13 | 2020-04-13 | 一种无定位点答题卡识别方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111626280A CN111626280A (zh) | 2020-09-04 |
CN111626280B true CN111626280B (zh) | 2021-09-07 |
Family
ID=72258840
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010287514.5A Active CN111626280B (zh) | 2020-04-13 | 2020-04-13 | 一种无定位点答题卡识别方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111626280B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112818765B (zh) * | 2021-01-18 | 2023-09-19 | 中科院成都信息技术股份有限公司 | 一种图像填涂识别方法、装置、系统、以及存储介质 |
CN113283431B (zh) * | 2021-07-26 | 2021-11-26 | 江西风向标教育科技有限公司 | 一种答题卡选项区域识别方法及系统 |
CN113673428A (zh) * | 2021-08-20 | 2021-11-19 | 上海鹿鹭网络科技有限公司 | 一种答题卡图片中自动识别的方法 |
CN113705438A (zh) * | 2021-08-27 | 2021-11-26 | 河北风口飞网络科技有限公司 | 一种基于多种数据采集形式的考评、阅卷方法及系统 |
CN114283434B (zh) * | 2021-11-17 | 2024-05-28 | 淮阴工学院 | 一种基于机器视觉的答题卡识别方法 |
CN114494017B (zh) * | 2022-01-25 | 2023-04-07 | 北京至简墨奇科技有限公司 | 根据比例尺进行图像dpi调整的方法和装置、设备及介质 |
CN118672793B (zh) * | 2024-08-26 | 2024-11-05 | 紫光摩度教育科技有限公司 | 一种试卷混扫方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6552829B1 (en) * | 1996-11-08 | 2003-04-22 | Ncs Pearson, Inc. | Optical scanning device having a calibrated pixel output and method for calibrating such a device |
EP2614832A1 (en) * | 2007-02-12 | 2013-07-17 | A1M Pharma AB | Diagnosis and treatment of preeclampsia |
CN106650608A (zh) * | 2016-10-31 | 2017-05-10 | 广东工业大学 | 一种无定位点试卷中矩形定位框的识别方法 |
CN108537218A (zh) * | 2018-04-12 | 2018-09-14 | 湖南诚壹文化产业有限公司 | 一种答题卡的识别处理方法及装置 |
CN109460762A (zh) * | 2018-10-19 | 2019-03-12 | 南京理工大学 | 一种基于图像识别的答题卡评分方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5140139A (en) * | 1989-11-13 | 1992-08-18 | Cognitronics Corporation | Preparing mark/read documents with markable boxes and locating the boxes from the document scan data |
US20140032973A1 (en) * | 2012-07-26 | 2014-01-30 | James K. Baker Revocable Trust | System and method for robust pattern analysis with detection and correction of errors |
CN105426844B (zh) * | 2015-11-20 | 2018-09-18 | 广州未名中智教育科技有限公司 | 一种答题卡识别方法 |
CN108171297B (zh) * | 2018-01-24 | 2022-01-14 | 谢德刚 | 一种答题卡识别方法 |
CN109684980B (zh) * | 2018-09-19 | 2022-12-13 | 腾讯科技(深圳)有限公司 | 自动阅卷方法及装置 |
CN109635798B (zh) * | 2018-12-06 | 2022-02-25 | 科大讯飞股份有限公司 | 一种信息提取方法及装置 |
-
2020
- 2020-04-13 CN CN202010287514.5A patent/CN111626280B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6552829B1 (en) * | 1996-11-08 | 2003-04-22 | Ncs Pearson, Inc. | Optical scanning device having a calibrated pixel output and method for calibrating such a device |
EP2614832A1 (en) * | 2007-02-12 | 2013-07-17 | A1M Pharma AB | Diagnosis and treatment of preeclampsia |
CN106650608A (zh) * | 2016-10-31 | 2017-05-10 | 广东工业大学 | 一种无定位点试卷中矩形定位框的识别方法 |
CN108537218A (zh) * | 2018-04-12 | 2018-09-14 | 湖南诚壹文化产业有限公司 | 一种答题卡的识别处理方法及装置 |
CN109460762A (zh) * | 2018-10-19 | 2019-03-12 | 南京理工大学 | 一种基于图像识别的答题卡评分方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111626280A (zh) | 2020-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111626280B (zh) | 一种无定位点答题卡识别方法和装置 | |
CN111814722B (zh) | 一种图像中的表格识别方法、装置、电子设备及存储介质 | |
CN111598074B (zh) | 边缘检测方法和装置、电子设备和存储介质 | |
CN112507782B (zh) | 文本图像的识别方法及装置 | |
Mohammad et al. | Optical character recognition implementation using pattern matching | |
CN101425142B (zh) | 页面倾斜角度的确定方法和装置 | |
CN109919037B (zh) | 一种文本定位方法及装置、文本识别方法及装置 | |
CN111368638A (zh) | 电子表格的创建方法、装置、计算机设备和存储介质 | |
CN106875546A (zh) | 一种增值税发票的识别方法 | |
CN110647882A (zh) | 图像校正方法、装置、设备及存储介质 | |
CN111626238A (zh) | 文本识别方法、电子设备及存储介质 | |
CN110598566A (zh) | 图像处理方法、装置、终端和计算机可读存储介质 | |
US11651604B2 (en) | Word recognition method, apparatus and storage medium | |
US12039763B2 (en) | Image processing method and device, electronic apparatus and storage medium | |
WO2021190155A1 (zh) | 文本行中的空格识别方法、装置、电子设备及存储介质 | |
CN112926564A (zh) | 图片分析方法、系统、计算机设备和计算机可读存储介质 | |
WO2019232870A1 (zh) | 手写字训练样本获取方法、装置、计算机设备及存储介质 | |
CN111737478A (zh) | 文本检测方法、电子设备及计算机可读介质 | |
CN111104883A (zh) | 作业答案提取方法、装置、设备及计算机可读存储介质 | |
CN112926421B (zh) | 图像处理方法和装置、电子设备和存储介质 | |
JP6353893B2 (ja) | 携帯端末装置のカメラにより撮影される紙面画像から記事をスクラップするための方法、プログラム、及び装置 | |
CN111144270A (zh) | 基于神经网络的手写文本工整度的评测方法与评测装置 | |
CN110321887A (zh) | 文档图像处理方法、文档图像处理装置及存储介质 | |
CN113837119B (zh) | 一种基于灰度图像识别易混淆字符的方法及设备 | |
CN110895849A (zh) | 冠字号切割定位方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |