CN114241492A - 一种识别作文稿纸的手写文本识别并复现文本结构的方法 - Google Patents
一种识别作文稿纸的手写文本识别并复现文本结构的方法 Download PDFInfo
- Publication number
- CN114241492A CN114241492A CN202111551666.2A CN202111551666A CN114241492A CN 114241492 A CN114241492 A CN 114241492A CN 202111551666 A CN202111551666 A CN 202111551666A CN 114241492 A CN114241492 A CN 114241492A
- Authority
- CN
- China
- Prior art keywords
- text
- picture
- line
- position information
- probability
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Cheminformatics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Character Input (AREA)
Abstract
本发明公开了一种识别作文稿纸的手写文本识别并复现文本结构的方法,包括:使用拍摄设备拍取一页手写作文图片,初步进行调整;对图片进行特定预处理操作,将原始图片进行文本矫正,得到待识别的图片;将待识别的图片利用使用特定数据集进行训练的文字检测算法模型检测每一行的手写文本区域,同时获取每一个文本区域在图像中位置信息;对于检测到的每一行文本区域,使用特定数据集进行训练的文本识别算法模型快速识别出手写的文本内容;结合文本区域在图像中位置信息和文本内容信息进行分析,从而还原真实的作文文本内容和结构。利用该方法可以精确快速识别出待识别目标的真实文本内容,用于后续的NLP相关操作,从而对作文进行批改。
Description
技术领域
本发明涉及文本识别技术领域,尤其涉及一种识别作文稿纸的手写文本识别并复现文本结构的方法。
背景技术
对于日益成熟的人工智能技术应用,目前,智能阅卷技术也发展越来越好,这也得益于手写字体识别领域发展以及识别能达到很高的精度。同时针对特殊的垂直领域的手写字体识别通用的OCR并不能满足要求,都需要对该垂直领域的数据进行一系列特殊的操作,从而达到真实内容数字化。
针对阅卷中重要的一部分:作文的文本识别,主要是对手写字体的识别,但同时中文作文通用的写作稿纸是带有格子信息的,英文作文的通用的写作稿纸是带有横线的,格子以及横线等干扰信息影响着文本识别的精度。目前大部分技术是对格子等干扰信息进行去除,即对原始图片进行特殊的预处理操作进行手写文本与干扰信息的分离,再进行文本的识别,此方法大大变慢了识别速度以及一定程度对文本位置特征进行了修改,不利于后续内容的复现。本领域的现有技术存在以下缺陷:
(1)现有OCR识别技术主要针对打印文本的检测和识别,精度可以达到非常高,而对于手写文本的识别效果差强人意,而且手写的文本过于多样,传统OCR识别在该垂直领域效果较差,有效提高手写识别精度。
(2)对预测图片需要进行过多的预处理操作,既需要去掉格子或横线来提高精度,能够大大降低识别速度。通过深度学习的泛化能力,即使针对基于格子、非贴合文本、横线等干扰项,进行文本识别
(3)现有OCR服务调用接口都是对文本进行识别,偏向于通用识别,而对于手写作文识别领域的识别后的内容不做文本特征结构分析,识别出文本不能作为复现的真实内容和整体结构。
发明内容
有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是提供一种识别作文稿纸的手写文本识别并复现文本结构的方法,该方法对移动设备拍摄的手写作文稿纸图片进行带格子和横线干扰信息的端到端文本识别,即不经过对原图片进行特征预处理而识别出文本,同时通过文本位置的特征信息进行文本分析归类,从而复现真实的作文内容。利用该方法可以精确快速识别出待识别目标的真实文本内容,用于后续的NLP相关操作,从而对作文进行批改。
为实现上述目的,本发明提供了一种识别作文稿纸的手写文本识别并复现文本结构的方法,包括以下步骤:
步骤1:使用拍摄设备拍取一页手写作文图片,初步进行调整;
步骤2:对图片进行特定预处理操作,将原始图片进行文本矫正,得到待识别的图片;
步骤3:将待识别的图片利用使用特定数据集进行训练的文字检测算法模型检测每一行的手写文本区域,同时获取每一个文本区域在图像中位置信息;
步骤4:对于检测到的每一行文本区域,使用特定数据集进行训练的文本识别算法模型快速识别出手写的文本内容;
步骤5:结合步骤3与步骤4文本区域在图像中位置信息和文本内容信息进行分析,从而还原真实的作文文本内容和结构。
进一步的,所述步骤1拍摄的作文图片局限于中文的作文和英文的作文,作文的稿纸包括但不限于格子、横线、白纸的稿纸模板。
进一步的,所述步骤2对图片进行特定预处理操作,将原始图片进行文本矫正,具体为:
步骤2-1、对原始图片进行高斯滤波操作;
步骤2-2、对步骤2-1得到的图片进行灰度操作;
步骤2-3、对步骤2-2得到的图片进行Canny边缘检测,得到格子或横线以及手写文本的大致边缘轮廓;
步骤2-4、对步骤2-3的带的图片进行霍夫变换检测直线,即对每个边缘像素(x,y),根据公式:
ρ=x0 cos(θ)+y0sin(θ)
获得对应的ρ值,得到每个边缘像素的曲线后,通过计算所在的平面中各交点所在的曲线数量来检测出直线,定义曲线数量阈值为d,即在某点相交的曲线数量大于该阈值,才认为该点在图像中对应一条直线,并记录该直线信息(θ,ρ),θ表示水平方向偏转角度,范围(0,180];
步骤2-5、计算每条直线的角度,在有格子的情况下,对于竖直的直线即大于45°或小于135°的直接去掉,同时对于相对多数量的直线进行加权平均,得到的角度即为需要调整的角度θ;
步骤2-6:对步骤2-5得到θ,当θ∈[0°,45°]时,图片顺时针旋转θ;当θ∈[135°,180°]时,图片逆时针旋转180°-θ;最后,矫正得到的图片即为待识别的图片。
进一步的,所述步骤3的特定数据集由计算机生成,特定数据集的主要特征是以水平方向上的文本行作为标注特征。
进一步的,所述步骤3的文字检测算法模型包括但不限于DBNet、SAST、EAST、YOLOx网络模型,骨干网络使用ResNet50,训练方法在数据输入是对图片0.3概率进行数据增强,增强方法如下:
步骤3-1、设置有0.3的概率进行图片亮度调整:将RGB图片转换成HLS空间,随机改变L通道参数的值,即令L*random([0.8,1.2]);
步骤3-2、设置有0.3的概率进行图片模糊处理:对于每个像素点均值μ=0,高斯核大小(5,5)和高斯函数标准差σ=1.5;
步骤3-3、设置有0.3的概率进行图片添加噪点操作,随机生成每个位置数值在该范围[-10,10]的三维矩阵,并和图片矩阵进行相加操作。
进一步的,所述步骤3将待识别的图片经过文字检测算法模型后得到的结果为每一文本行的矩形框在图像中像素位置信息,同时记录得到每一文本行区域位置信息组;所述矩形框在图像中像素位置信息的表现形式为像素坐标点的位置与原图片大小相结合,显示每一行的手写文本区域信息形式不限于使用以下表示方法:矩形框的四角坐标、左上角像素坐标加右下角像素坐标、左上角像素坐标加水平方向框的长度和垂直方向框的长度。
进一步的,所述步骤4检测到的每一行文本区域为步骤3文字检测算法模型得到的每一文本行区域位置信息组。
进一步的,所述步骤4使用的特定数据集进行训练的文本识别算法模型包括但不限于CRNN、STAR-Net、CharNet x网络模型,骨干网络使用ResNet32,训练时模型识别得到的特征经过CTC来计算loss,训练方法在数据输入是对图片0.3概率进行数据增强,增强方法如下:
步骤4-1、设置有0.2的概率进行图片亮度调整:将RGB图片转换成HLS空间,随机改变L通道参数的值,即令L*random([0.8,1.2]);
步骤4-2、设置有0.2的概率进行图片模糊处理:对于每个像素点均值μ=0,高斯核大小(5,5)和高斯函数标准差σ=1.5;
步骤4-3、设置有0.2的概率进行图片添加噪点操作,随机生成每个位置数值在该范围[-10,10]的三维矩阵,并和图片矩阵进行相加操作;
步骤4-4、设置有0.2的概率进行图片裁剪操作,水平方向不做裁剪,垂直方向裁剪crop_values范围为[height*0.02,height*0.1],最终获取图片:下边界裁剪image[top_crop:h,0:width]或上边界裁剪image[0:h-top_crop,0:width];
步骤4-5、设置有0.2的概率进行图片裁剪操作颜色翻转操作,即生成值为255的与图片大小一致的三维矩阵,将该矩阵减去图片矩阵得到的新矩阵为新的图片;
步骤4-6、设置有0.2的概率进行图片透视变换操作,四个顶点的像素位置随机增加或减去几个像素,该范围为trans[0,10],即
左上角顶点(x1+random(trans),y1+random(trans))
右上角顶点(x2-random(trans),y2+random(trans))
右下角顶点(x3+random(trans),y3-random(trans))
左下角顶点(x4-random(trans),y4-random(trans))
将得到的新顶点进行透视变换操作,得到新的图片。
进一步的,所述步骤4的文本识别算法模型识别的图片为由步骤3中的每一文本行区域位置信息组在原图所截取的图片组,识别的每一张图片即为每一行的手写文本内容。
进一步的,所述步骤5结合步骤3与步骤4文本区域在图像中位置信息和文本内容信息进行分析,从而还原真实的作文文本内容和结构,分析方法为:
假设原始图片大小shape为(width,heigth),每一个表达文本区域位置信息由矩形框的四角坐标(x0,y0)表示,左上角(x1,y1),右上角(x2,y2),右下角(x3,y3),左下角(x4,y4);
步骤5-1、经过CRNN识别得到文本,对文本内容进行中英文的判断,即判断出现中文字符的个数len_ch以及英文字符的个数len_en进行对比,当len_ch占大多数时则认为该识别文章为中文的文章,否则则为英文;
步骤5-2、若为中文:则文本结构归类为标题、段起始行以及段内容行;若为英文:则文本结构归类为段起始行以及段内容行;
步骤5-3、遍历所有文本区域位置信息,将左上角的x1作为特征值进行排序得到x1_sort_list;
步骤5-4、将得到的基于x1的排序结果下x1_sort_list进行文本结构归类,归类方法如下:假设一开始变量threshold的范围为[min(x1_sort_list)-z,min(x1_sort_list)+z],z决定threshold的感兴趣区域的选取,该值由实验测试统计得出;遍历排序结果,当某一文本区域位置信息的x1属于该threshold范围内,则归为一类,当出现不在该范围内,则当前遍历的x1重新作为变量threshold的决定因子,此时threshold的范围为[x1-z,x1+z],重复该操作,直至全部归类完成;同时使用K-means算法基于x1值进行分类。
本发明的有益效果是:
1.本发明方法完整,使用的模型算法都能够进行快速预测,大大提高处理速度。
2.本发明鲁棒性高,由于数据增强的使用,使得模型算啊能应对许多情况下拍摄的图片进行处理,并拥有很高的精度。
3.本发明针对手写作文识别领域,同时完成文本结构的分析,使得可以数字化复现的真实学生写的作文,可用于后续处理。
以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。
附图说明
图1是本发明的方法流程图。
具体实施方式
如图1所示,本发明提供了一种识别作文稿纸的手写文本识别并复现文本结构的方法,包括以下步骤:
步骤1:使用拍摄设备拍取一页手写作文图片,初步进行调整;
步骤2:对图片进行特定预处理操作,将原始图片进行文本矫正,得到待识别的图片;
步骤3:将待识别的图片利用使用特定数据集进行训练的文字检测算法模型检测每一行的手写文本区域,同时获取每一个文本区域在图像中位置信息;
步骤4:对于检测到的每一行文本区域,使用特定数据集进行训练的文本识别算法模型快速识别出手写的文本内容;
步骤5:结合步骤3与步骤4文本区域在图像中位置信息和文本内容信息进行分析,从而还原真实的作文文本内容和结构。
在步骤1中,所述使用拍摄设备拍取一页手写作文图片,拍摄环境与光源阴暗程度对后续操作无影响,拍摄的作文图片局限于中文的作文和英文的作文,作文的稿纸包括但不限于格子、横线、白纸等稿纸模板。输入程序并对该图片进行特定的初步预处理操作,即需要把用户拍摄图片不规范且不统一的图片进行规范化,即上传时调整整体文本方向,压缩图片到指定大小范围。
在步骤2中,所述对图片进行特定预处理操作,并将原始图片进行文本矫正,操作如下。
步骤2.1对原始图片进行高斯滤波操作。
步骤2.2对步骤2.1得到的图片进行灰度操作。
步骤2.3对步骤2.2得到的图片进行Canny边缘检测,得到格子或横线以及手写文本的大致边缘轮廓。
步骤2.4对步骤2.3的带的图片进行霍夫变换检测直线,即对每个边缘像素(x,y),根据公式:
ρ=x0 cos(θ)+y0sin(θ)
获得对应的ρ值,得到每个边缘像素的曲线后,通过计算所在的平面中各交点所在的曲线数量来检测出直线。定义曲线数量阈值为d(该阈值由真实情况统计而定),即在某点相交的曲线数量大于该阈值,才认为该点在图像中对应一条直线,并记录该直线信息(θ,ρ),θ表示水平方向偏转角度,范围(0,180]。
步骤2.5计算每条直线的角度,在有格子的情况下,对于竖直的直线即大于45°或小于135°的直接去掉,同时对于相对多数量的直线进行加权平均,得到的角度即为需要调整的角度θ。
步骤2.6:对步骤2.5得到θ,当θ∈[0°,45°]时,图片顺时针旋转θ。
当θ∈[135°,180°]时,图片逆时针旋转180°-θ,矫正得到的图片即为待识别的图片。
在步骤3中,所述利用使用特定数据集进行训练的文字检测算法模型检测每一行的手写文本区域,特定数据集为由计算机生成。
本实施例中,特定数据集的主要特征是以水平方向上的文本行作为标注特征,即无论上下也具有文本时,检测到的文本区域为水平方向上相连接的文本。同时数据包含真实情况采集的数据和经过生成的数据。
本实施例中,为减少人工批注成本,使用特定的生成方法,同时后续在训练时进行数据增强操作。特定的生成数据方法:
步骤3.1.1使用大量手写中文英文字体,通过预定的文本内容一个字一个字生成图片,每个字体的大小(font_size)、角度(font_angle)、文字中心点(font_center)上都有在一定的范围内随机抖动生成的图片。字体大小由背景图片格子或横线而决定。
步骤3.1.2将经过预定文本内容生成的图片与背景图片进行合成,背景图片为不同明暗环境的通用的中英文作文稿纸,同时按照页边距(margin)、字间距(word_spacing)、行间距(line_spacing)变量参数操作。具体参数由背景图片格子或横线而决定。
步骤3.1.3每生成一行则记录每一行填入的矩形位置信息作为标签。
本实施例中,针对生成的图片,生成的数据包含标题形式、段开头形式、段内容形式的手写作文图片,段内容形式的数据占比0.9,其余各为0.05。每一合成图片有多个标签,及一张图片中具有多行文本,匹配真实数据下的情况,识别数据包含标点字符。
本实施例中,所述文字检测算法模型使用但不限于DBNet、SAST、EAST、YOLOx等网络模型。骨干网络使用ResNet50。训练方法在数据输入是对图片0.3概率进行数据增强,增强方法如下:
步骤3.2.1设置有0.3的概率进行图片亮度调整:将RGB图片转换成HLS空间,随机改变L通道参数的值,即令L*random([0.8,1.2])
步骤3.2.2设置有0.3的概率进行图片模糊处理:对于每个像素点均值μ=0,高斯核大小(5,5)和高斯函数标准差σ=1.5。
步骤3.2.3设置有0.3的概率进行图片添加噪点操作,随机生成每个位置数值在该范围[-10,10]的三维矩阵,并和图片矩阵进行相加操作,数据增强操作随机组合得到新图片用于训练。
本实施例中,待识别图像经过文字检测模型算法后得到的结果为每一文本行的矩形框在图像中像素位置信息,同时记录得到每一文本行区域位置信息组。所述矩形框在图像中像素位置信息,其表现形式为像素坐标点的位置与原图片大小相结合的,现实每一行的手写文本区域信息形式不限于使用以下表示方法:矩形框的四角坐标(x0,y0)、左上角像素坐标(ltop_x,ltop_y)加右下角像素坐标(rbottom_x,rbottom_y)、左上角像素坐标(ltop_x,ltop_y)加水平方向框的长度(width)和垂直方向框的长度(height)。
在步骤4中,所述对于检测到的每一行文本区域为步骤3图片文本检测模型得到的每一文本行区域位置信息组。
本实施例中,所述特定数据集的主要特征为:具有格子或横线或空白的背景加手写字体。批注信息为纯文本信息,即是否有格子或横线并不影响文本识别。同时数据包含真实情况采集的数据和经过生成的数据。
本实施例中,通过使用特定的数据生成方法,可以很方便的同时后续在训练时进行数据增强操作。特定的生成数据方法:
步骤4.1.1与步骤3.1.1一致
步骤4.1.2将经过预定文本内容生成的图片与背景图片进行合成,背景图片为单行的格子、横线或空白图片,同时按照字间距(word_spacing)变量参数操作以及结合生成的文字图片的文字个数对格子图片进行裁剪,得到中文0到25个字的单行手写文本在格子或横线或空白背景上的图片,英文则是0到15个单词。
步骤4.1.3每生成一行则记录每一行填入的矩形位置信息作为标签。
本实施例中,针对生成的图片,生成的数据中文文本字数在18到20占比为0.9,其余情况为0.1,英文文本单词数9-12个占比为0.8,其余为0.2。识别数据包含标点字符。
本实施例中,所述文字识别算法模型使用但不限于CRNN、STAR-Net、CharNetx等网络模型。骨干网络使用ResNet32,训练时模型识别得到的特征经过CTC来计算loss。训练方法在数据输入是对图片0.3概率进行数据增强,增强方法如下:
步骤4.2.1设置有0.2的概率进行图片亮度调整:将RGB图片转换成HLS空间,随机改变L通道参数的值,即令L*random([0.8,1.2])
步骤4.2.2设置有0.2的概率进行图片模糊处理:对于每个像素点均值μ=0,高斯核大小(5,5)和高斯函数标准差σ=1.5。
步骤4.2.3设置有0.2的概率进行图片添加噪点操作,随机生成每个位置数值在该范围[-10,10]的三维矩阵,并和图片矩阵进行相加操作。
步骤4.2.4设置有0.2的概率进行图片裁剪操作,水平方向不做裁剪,因为会导致文本缺失,垂直方向裁剪crop_values范围为[height*0.02,height*0.1],最终获取图片:下边界裁剪image[top_crop:h,0:width]或上边界裁剪image[0:h-top_crop,0:width]。
步骤4.2.4设置有0.2的概率进行图片裁剪操作颜色翻转操作,即生成值为255的与图片大小一致的三维矩阵,将该矩阵减去图片矩阵得到的新矩阵为新的图片。
步骤4.2.5设置有0.2的概率进行图片透视变换操作,四个顶点的像素位置随机增加或减去几个像素,该范围为trans[0,10],即
左上角顶点(x1+random(trans),y1+random(trans))
右上角顶点(x2-random(trans),y2+random(trans))
右下角顶点(x3+random(trans),y3-random(trans))
左下角顶点(x4-random(trans),y4-random(trans))
将得到的新顶点进行透视变换操作,得到新的图片。
本实施例中,在实际中使用时算法模型识别的图片为由步骤3中的每一文本行区域位置信息组在原图所截取的图片组,此时识别的每一张图片及为每一行的手写文本内容。识别出出手写的文本内容与位置信息相关联。
在步骤5中,所述结合步骤3与步骤4文本区域在图像中位置信息和文本内容信息进行分析,从而还原真实的作文文本内容和结构。分析方法如下:
假设原始图片大小shape为(width,heigth),每一个表达文本区域位置信息由矩形框的四角坐标(x0,y0)表示,左上角(x1,y1),右上角(x2,y2),右下角(x3,y3),左下角(x4,y4)
步骤5.1,经过CRNN识别得到文本,对文本内容进行中英文的判断,即判断出现中文字符的个数len_ch以及英文字符的个数len_en进行对比,当len_ch占大多数时则认为该识别文章为中文的文章,否则则为英文。
步骤5.2若为中文:则文本结构归类为标题、段起始行以及段内容行。若为英文:则文本结构归类为段起始行以及段内容行。
步骤5.3遍历所有文本区域位置信息,将左上角的x1作为特征值进行排序得到x1_sort_list。
步骤5.4将得到的基于x1的排序结果下x1_sort_list进行文本结构归类,归类方法如下:假设一开始变量threshold的范围为[min(x1_sort_list)-z,min(x1_sort_list)+z],z决定threshold的感兴趣区域的选取,该值由实验测试统计得出。遍历排序结果,当某一文本区域位置信息的x1属于该threshold范围内,则归为一类,当出现不在该范围内,则当前遍历的x1重新作为变量threshold的决定因子,此时threshold的范围为[x1-z,x1+z],重复该操作,直至全部归类完成。同时可以使用K-means算法基于x1值进行分类。
本实施例中,中文复现的内容不仅包含手写文字信息,还有标题,段落的文本结构特征。英文作文包含手写文字信息以及段落结构特征。通过这些信息复现手写作文的整体文本、标题、段落用于后续操作。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思做出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
Claims (10)
1.一种识别作文稿纸的手写文本识别并复现文本结构的方法,其特征在于,包括以下步骤:
步骤1:使用拍摄设备拍取一页手写作文图片,初步进行调整;
步骤2:对图片进行特定预处理操作,将原始图片进行文本矫正,得到待识别的图片;
步骤3:将待识别的图片利用使用特定数据集进行训练的文字检测算法模型检测每一行的手写文本区域,同时获取每一个文本区域在图像中位置信息;
步骤4:对于检测到的每一行文本区域,使用特定数据集进行训练的文本识别算法模型快速识别出手写的文本内容;
步骤5:结合步骤3与步骤4文本区域在图像中位置信息和文本内容信息进行分析,从而还原真实的作文文本内容和结构。
2.如权利要求1所述的一种识别作文稿纸的手写文本识别并复现文本结构的方法,其特征在于:所述步骤1拍摄的作文图片局限于中文的作文和英文的作文,作文的稿纸包括但不限于格子、横线、白纸的稿纸模板。
3.如权利要求1所述的一种识别作文稿纸的手写文本识别并复现文本结构的方法,其特征在于,所述步骤2对图片进行特定预处理操作,将原始图片进行文本矫正,具体为:
步骤2-1、对原始图片进行高斯滤波操作;
步骤2-2、对步骤2-1得到的图片进行灰度操作;
步骤2-3、对步骤2-2得到的图片进行Canny边缘检测,得到格子或横线以及手写文本的大致边缘轮廓;
步骤2-4、对步骤2-3的带的图片进行霍夫变换检测直线,即对每个边缘像素(x,y),根据公式:
ρ=x0cos(θ)+y0sin(θ)
获得对应的ρ值,得到每个边缘像素的曲线后,通过计算所在的平面中各交点所在的曲线数量来检测出直线,定义曲线数量阈值为α,即在某点相交的曲线数量大于该阈值,才认为该点在图像中对应一条直线,并记录该直线信息(θ,ρ),θ表示水平方向偏转角度,范围(0,180];
步骤2-5、计算每条直线的角度,在有格子的情况下,对于竖直的直线即大于45°或小于135°的直接去掉,同时对于相对多数量的直线进行加权平均,得到的角度即为需要调整的角度θ;
步骤2-6:对步骤2-5得到θ,当θ∈[0°,45°]时,图片顺时针旋转θ;当θ∈[135°,180°]时,图片逆时针旋转180°-θ;最后,矫正得到的图片即为待识别的图片。
4.如权利要求1所述的一种识别作文稿纸的手写文本识别并复现文本结构的方法,其特征在于:所述步骤3的特定数据集由计算机生成,特定数据集的主要特征是以水平方向上的文本行作为标注特征。
5.如权利要求1所述的一种识别作文稿纸的手写文本识别并复现文本结构的方法,其特征在于:所述步骤3的文字检测算法模型包括但不限于DBNet、SAST、EAST、YOLOx网络模型,骨干网络使用ResNet50,训练方法在数据输入是对图片0.3概率进行数据增强,增强方法如下:
步骤3-1、设置有0.3的概率进行图片亮度调整:将RGB图片转换成HLS空间,随机改变L通道参数的值,即令L*random([0.8,1.2]);
步骤3-2、设置有0.3的概率进行图片模糊处理:对于每个像素点均值μ=0,高斯核大小(5,5)和高斯函数标准差σ=1.5;
步骤3-3、设置有0.3的概率进行图片添加噪点操作,随机生成每个位置数值在该范围[-10,10]的三维矩阵,并和图片矩阵进行相加操作。
6.如权利要求1所述的一种识别作文稿纸的手写文本识别并复现文本结构的方法,其特征在于:所述步骤3将待识别的图片经过文字检测算法模型后得到的结果为每一文本行的矩形框在图像中像素位置信息,同时记录得到每一文本行区域位置信息组;所述矩形框在图像中像素位置信息的表现形式为像素坐标点的位置与原图片大小相结合,显示每一行的手写文本区域信息形式不限于使用以下表示方法:矩形框的四角坐标、左上角像素坐标加右下角像素坐标、左上角像素坐标加水平方向框的长度和垂直方向框的长度。
7.如权利要求1所述的一种识别作文稿纸的手写文本识别并复现文本结构的方法,其特征在于:所述步骤4检测到的每一行文本区域为步骤3文字检测算法模型得到的每一文本行区域位置信息组。
8.如权利要求1所述的一种识别作文稿纸的手写文本识别并复现文本结构的方法,其特征在于:所述步骤4使用的特定数据集进行训练的文本识别算法模型包括但不限于CRNN、STAR-Net、CharNet x网络模型,骨干网络使用ResNet32,训练时模型识别得到的特征经过CTC来计算loss,训练方法在数据输入是对图片0.3概率进行数据增强,增强方法如下:
步骤4-1、设置有0.2的概率进行图片亮度调整:将RGB图片转换成HLS空间,随机改变L通道参数的值,即令L*random([0.8,1.2]);
步骤4-2、设置有0.2的概率进行图片模糊处理:对于每个像素点均值μ=0,高斯核大小(5,5)和高斯函数标准差σ=1.5;
步骤4-3、设置有0.2的概率进行图片添加噪点操作,随机生成每个位置数值在该范围[-10,10]的三维矩阵,并和图片矩阵进行相加操作;
步骤4-4、设置有0.2的概率进行图片裁剪操作,水平方向不做裁剪,垂直方向裁剪crop_values范围为[height*0.02,height*0.1],最终获取图片:下边界裁剪image[top_crop:h,0:width]或上边界裁剪image[0:h-top_crop,0:width];
步骤4-5、设置有0.2的概率进行图片裁剪操作颜色翻转操作,即生成值为255的与图片大小一致的三维矩阵,将该矩阵减去图片矩阵得到的新矩阵为新的图片;
步骤4-6、设置有0.2的概率进行图片透视变换操作,四个顶点的像素位置随机增加或减去几个像素,该范围为trans[0,10],即
左上角顶点(x1+random(trans),y1+random(trans))
右上角顶点(x2-random(trans),y2+random(trans))
右下角顶点(x3+random(trans),y3-random(trans))
左下角顶点(x4-random(trans),y4-random(trans))
将得到的新顶点进行透视变换操作,得到新的图片。
9.如权利要求1所述的一种识别作文稿纸的手写文本识别并复现文本结构的方法,其特征在于:所述步骤4的文本识别算法模型识别的图片为由步骤3中的每一文本行区域位置信息组在原图所截取的图片组,识别的每一张图片即为每一行的手写文本内容。
10.如权利要求1所述的一种识别作文稿纸的手写文本识别并复现文本结构的方法,其特征在于:所述步骤5结合步骤3与步骤4文本区域在图像中位置信息和文本内容信息进行分析,从而还原真实的作文文本内容和结构,分析方法为:
假设原始图片大小shape为(width,heigth),每一个表达文本区域位置信息由矩形框的四角坐标(x0,y0)表示,左上角(x1,y1),右上角(x2,y2),右下角(x3,y3),左下角(x4,y4);
步骤5-1、经过CRNN识别得到文本,对文本内容进行中英文的判断,即判断出现中文字符的个数len_ch以及英文字符的个数len_en进行对比,当len_ch占大多数时则认为该识别文章为中文的文章,否则则为英文;
步骤5-2、若为中文:则文本结构归类为标题、段起始行以及段内容行;若为英文:则文本结构归类为段起始行以及段内容行;
步骤5-3、遍历所有文本区域位置信息,将左上角的x1作为特征值进行排序得到x1_sort_list;
步骤5-4、将得到的基于x1的排序结果下x1_sort_list进行文本结构归类,归类方法如下:假设一开始变量threshold的范围为[min(x1_sort_list)-z,min(x1_sort_list)+z],z决定threshold的感兴趣区域的选取,该值由实验测试统计得出;遍历排序结果,当某一文本区域位置信息的x1属于该threshold范围内,则归为一类,当出现不在该范围内,则当前遍历的x1重新作为变量threshold的决定因子,此时threshold的范围为[x1-z,x1+z],重复该操作,直至全部归类完成;同时使用K-means算法基于x1值进行分类。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111551666.2A CN114241492A (zh) | 2021-12-17 | 2021-12-17 | 一种识别作文稿纸的手写文本识别并复现文本结构的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111551666.2A CN114241492A (zh) | 2021-12-17 | 2021-12-17 | 一种识别作文稿纸的手写文本识别并复现文本结构的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114241492A true CN114241492A (zh) | 2022-03-25 |
Family
ID=80757884
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111551666.2A Pending CN114241492A (zh) | 2021-12-17 | 2021-12-17 | 一种识别作文稿纸的手写文本识别并复现文本结构的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114241492A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114821601A (zh) * | 2022-04-14 | 2022-07-29 | 北京知云再起科技有限公司 | 一种基于深度学习的端到端英文手写体文本检测识别技术 |
CN115690806A (zh) * | 2022-10-11 | 2023-02-03 | 杭州瑞成信息技术股份有限公司 | 一种基于图像数据处理的非结构化文档格式识别方法 |
-
2021
- 2021-12-17 CN CN202111551666.2A patent/CN114241492A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114821601A (zh) * | 2022-04-14 | 2022-07-29 | 北京知云再起科技有限公司 | 一种基于深度学习的端到端英文手写体文本检测识别技术 |
CN115690806A (zh) * | 2022-10-11 | 2023-02-03 | 杭州瑞成信息技术股份有限公司 | 一种基于图像数据处理的非结构化文档格式识别方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111814722B (zh) | 一种图像中的表格识别方法、装置、电子设备及存储介质 | |
CN111723585A (zh) | 一种风格可控的图像文本实时翻译与转换方法 | |
CN111310760B (zh) | 结合局部先验特征和深度卷积特征的甲骨刻辞文字检测方法 | |
CN112712273B (zh) | 一种基于骨架相似度的手写体汉字美观度评判方法 | |
CN113158977B (zh) | 改进FANnet生成网络的图像字符编辑方法 | |
CN111626292B (zh) | 一种基于深度学习技术的楼宇指示标识的文字识别方法 | |
CN112364834A (zh) | 一种基于深度学习和图像处理的表格识别的还原方法 | |
CN106980857B (zh) | 一种基于碑帖的毛笔字分割识别方法 | |
CN112446259A (zh) | 图像处理方法、装置、终端和计算机可读存储介质 | |
CN112446262A (zh) | 文本分析方法、装置、终端和计算机可读存储介质 | |
CN114241492A (zh) | 一种识别作文稿纸的手写文本识别并复现文本结构的方法 | |
CN114463770A (zh) | 一种用于普遍试卷题目的智能切题方法 | |
CN113065396A (zh) | 基于深度学习的扫描档案图像的自动化归档处理系统及方法 | |
CN113901952A (zh) | 一种基于深度学习的印刷体与手写体分开文字识别方法 | |
CN110443235B (zh) | 一种智能纸质试卷总分识别方法及系统 | |
CN116824608A (zh) | 基于目标检测技术的答题卡版面分析方法 | |
CN111652117A (zh) | 一种对多文档图像分割的方法及介质 | |
CN109271882B (zh) | 一种区分颜色的手写体汉字提取方法 | |
CN115100657A (zh) | 电气cad图纸扫描图的字符与带宽度的线条识别方法 | |
CN110766001B (zh) | 基于cnn和rnn的银行卡卡号定位与端到端识别方法 | |
CN111898402A (zh) | 一种智能排版系统 | |
CN118135584A (zh) | 一种基于深度学习的手写表单自动识别方法和系统 | |
CN108062548B (zh) | 一种盲文方自适应定位方法及系统 | |
CN111046770A (zh) | 一种照片档案人物自动标注方法 | |
CN117576699A (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 |