CN117649672B - 基于主动学习与迁移学习的字体类别视觉检测方法和*** - Google Patents
基于主动学习与迁移学习的字体类别视觉检测方法和*** Download PDFInfo
- Publication number
- CN117649672B CN117649672B CN202410122672.3A CN202410122672A CN117649672B CN 117649672 B CN117649672 B CN 117649672B CN 202410122672 A CN202410122672 A CN 202410122672A CN 117649672 B CN117649672 B CN 117649672B
- Authority
- CN
- China
- Prior art keywords
- scene
- font
- image
- data set
- accuracy
- 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
- 238000013526 transfer learning Methods 0.000 title claims abstract description 33
- 238000001514 detection method Methods 0.000 title claims abstract description 25
- 230000000007 visual effect Effects 0.000 title claims abstract description 23
- 238000012549 training Methods 0.000 claims abstract description 56
- 238000000034 method Methods 0.000 claims abstract description 43
- 238000012360 testing method Methods 0.000 claims abstract description 24
- 238000007781 pre-processing Methods 0.000 claims abstract description 16
- 238000012937 correction Methods 0.000 claims description 18
- 230000009466 transformation Effects 0.000 claims description 17
- 238000012795 verification Methods 0.000 claims description 17
- 230000011218 segmentation Effects 0.000 claims description 14
- 238000010586 diagram Methods 0.000 claims description 12
- 238000000605 extraction Methods 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 7
- 238000004422 calculation algorithm Methods 0.000 claims description 4
- 238000013515 script Methods 0.000 claims description 4
- 230000003190 augmentative effect Effects 0.000 claims description 3
- 238000005520 cutting process Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 3
- 238000002474 experimental method Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012706 support-vector machine Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 238000002679 ablation Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000011179 visual inspection Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/191—Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
- G06V30/19173—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/0464—Convolutional networks [CNN, ConvNet]
-
- 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
- G06N3/091—Active learning
-
- 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
- G06N3/096—Transfer learning
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/16—Image preprocessing
- G06V30/1607—Correcting image deformation, e.g. trapezoidal deformation caused by perspective
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/18—Extraction of features or characteristics of the image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/191—Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
- G06V30/19147—Obtaining sets of training patterns; Bootstrap methods, e.g. bagging or boosting
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Character Discrimination (AREA)
Abstract
本发明公开了基于主动学习与迁移学习的字体类别视觉检测方法和***,获取三种场景下的数据集,对数据集进行预处理并划分;基于迁移学习,利用预训练模型的对三种场景下的测试集中的字体图像进行分析并且得到相应的预测结果;采用主动学习策略,计算对应场景下的预测结果的置信度和准确率,当对应场景的准确率小于该场景的预设的准确率阈值时,选择该场景下置信度大于该场景下预设的置信度阈值但是标记错误的样本进行人工标注后,放入该场景的训练集中进行模型再训练,直至该场景的准确率大于或等于该场景的预设的准确率阈值;重复上述过程,直至三种场景的准确率均大于或等于对应场景的预设的准确率阈值。提高模型的扩展、泛化能力和准确性。
Description
技术领域
本发明属于计算机视觉技术领域,特别是涉及基于主动学习与迁移学习的字体类别视觉检测方法和***。
背景技术
在数字化时代,字体作为信息传递的主要形式之一,广泛应用于文本处理、广告设计等众多领域。尽管字体识别在数字化时代具有广泛的应用前景和实际价值,但相关的研究并不多,并且由于不同字体类型之间存在细微差别和变体,以及字体图像中存在噪声和干扰,字体识别任务面临着挑战。
目前主要的字体识别方法有三种,一种是使用传统的基于特征提取和机器学***均灰度特征对字体进行分类。此外还有其他研究人员通过小波分解、局部线性嵌入(LLE)等方式获取特征进行字体识别。第二种是基于深度学***均池化降采样,并通过添加3个跳过连接,增强了模型的泛化能力。最后一种是基于迁移学***均识别准确率达到99.83%。
然而,目前提出的方法仅适用于单一场景下的文本图片,如果包含待测字体的图像具有更复杂的背景或者属于训练集中未参与的字体类别,利用传统的方法提取特征容易受到场景与环境的限制;而深度学习或者迁移学习需要在训练样本中增加该字体类别,并对整个模型重新训练,模型的扩展能力较差。针对目前存在的这些问题,亟需一套新的字体类别视觉检测方法。
发明内容
针对以上技术问题,本发明提供基于主动学习与迁移学习的字体类别视觉检测方法和***。
本发明解决其技术问题采用的技术方案是:
基于主动学习与迁移学习的字体类别视觉检测方法,所述方法包括以下步骤:
S100、获取数据集,数据集包括拍摄图片、文档截取图片和标准字符图片,对数据集进行预处理,得到单个拍摄的字体图像、单个文档中的字体图像和单个字符图像,将预处理后的数据集进行划分,得到三种场景下的训练集、验证集和测试集;
S200、基于迁移学习,利用预训练模型的特征提取能力对三种场景下的测试集中的字体图像进行分析并且得到三种场景下相应的预测结果;
S300、采用主动学习策略,计算对应场景下的预测结果的置信度和准确率,当对应场景的准确率小于该场景的预设的准确率阈值时,选择该场景下置信度大于该场景下预设的置信度阈值但是标记错误的样本进行人工标注,将标注后的样本放入该场景的训练集中对预训练模型进行再训练,更新预训练模型的参数,直至该场景的准确率大于或等于该场景的预设的准确率阈值;
S400、重复S300,直至三种场景的准确率均大于或等于对应场景的预设的准确率阈值。
优选地,S100中对数据集进行预处理包括:
S110、对数据集中的标准字符图片进行预处理:对标准字符图片进行数据增强处理扩充标准字体字样数据集,
S120、对数据集中的文档截取图片进行预处理:将文档截取图片转换为灰度图像后进行二值化,采用闭运算操作填充文字中的小孔和断裂;采用水平垂直投影法将从文档中截取的图片分割成单个字符,得到文字分割后的文档截取图像数据集;
S130、对数据集中的拍摄图片进行预处理:对拍摄图像采用透视变换进行文档矫正,将矫正后的拍摄图片转换为灰度图像后进行二值化,采用闭运算操作填充文字中的小孔和断裂,采用水平垂直投影法将矫正后的拍摄图片分割成单个字符,得到通过文档校正和文字分割后的拍摄图片数据集。
优选地,S110具体为:
通过自定义的脚本利用字体文件生成了额外的字体图片来扩充标准字体字样数据集:将汉字列表文件和字体文件作为输入数据;创建一个大小为2000×2000像素的白色背景的RGB图像;在位置(200,200)处绘制一个大小为800×800像素的文本;将图像转换为灰度图像,并通过阈值将非白色区域转换为黑色,以突出文本;为了去除不包含字体信息的大量白色像素点,并确保文本完全显示在白色背景上,对图像进行裁剪,使文本边界与背景边界相差200个像素点;调整图像大小为467×467像素,与“标准字体字样”中的图像大小保持一致,并使用插值算法减少调整大小过程中的失真和锯齿现象,以保留图像的细节和质量。
优选地,S120具体为:
将文档截取图片转换为灰度图像后将图片进行二值化,使文字部分的像素值为0,背景部分的像素值为255;
利用水平投影法,根据峰值图确定行数并将每一行分割出来;
采用垂直投影法确定列数,将每个字符分割出来。
优选地,S130中对拍摄图像采用透视变换进行文档矫正,具体为:
选择原二维图像中的四个点,根据透视变换公式,得到变换后四个点的坐标,再根据这四个点的坐标确定投影在新平面上的图像。
优选地,S100中将预处理后的数据集进行划分,得到三种场景下的训练集、验证集和测试集,包括:
第一种场景下的数据集分配为:将标准字体字样数据集的80%、10%和10%的数据作为第一种场景下的训练集、验证集和测试集;
第二种场景下的数据集分配为:将标准字体字样数据集的80%、10%和通过文字分割后的文档截取图像数据集作为第二种场景下的训练集、验证集和测试集;
第三种场景下的数据集分配为:将标准字体字样数据集的80%、10%和通过文档校正和文字分割后的手机拍摄图片数据集作为第三种场景下的训练集、验证集和测试集。
优选地,S300中采用主动学习策略,计算对应场景下的预测结果的置信度和准确率,具体为:
对于一个样本,预训练模型预测为类别/>的概率表示为/>,置信度通过以下公式计算:
;
其中,表示在所有类别的预测概率中取最大值。
优选地,第一种场景中置信度高于第一种场景的预设置信度阈值但标记错误的样本中最低的置信度作为第二种场景和第三种场景的置信度阈值。
优选地,预训练模型为InceptionResnetV2模型。
基于主动学习与迁移学习的字体类别视觉检测***,包括拍摄装置和上位机,拍摄装置用于拍摄包含文字的图片作为数据集的一部分并发送至上位机,上位机用于执行一种基于主动学习与迁移学习的字体类别视觉检测方法,完成字体检测。
上述基于主动学习与迁移学习的字体类别视觉检测方法和***,使用多场景的数据集,基于迁移学习,利用预训练模型强大的特征提取能力对字体图像测试集进行分析并且得到不同场景的预测结果,接着采用主动学习策略,计算不同场景的预测结果的置信度和准确率,当对应场景的准确率不满足预设的条件时,利用主动学习的反馈循环机制,在对应场景中选择置信度高但标记错误的样本进行人工标注,然后将标注后的样本放入迁移学习模型中进行再训练,提高模型的扩展能力、泛化能力和准确性。
附图说明
图1为本发明一实施例中基于主动学习与迁移学习的字体类别视觉检测方法的流程图;
图2为本发明另一实施例中基于主动学习与迁移学习的字体类别视觉检测方法的流程图;
图3为本发明一实施例中文档中截取的句子图片示意图;
图4为本发明一实施例中拍摄图片示意图;其中,(a)为从左拍摄的图片,(b)为从右拍摄的图片,(c)为从上侧拍摄的图片,(d)为从下侧拍摄的图片;
图5为本发明一实施例中“标准字体字样”中的字体图像与本申请生成的字体图像对比示意图;其中,(a)为CNWT中的宋体图像,(b)为本申请生成的宋体图像;
图6为本发明一实施例中水平垂直投影示意图;其中,(a)为原图,(b)为水平峰值图,(c)为垂直峰值图;
图7为本发明一实施例中闭运算操作前后分割对比图;其中,(a)为闭运算前的分割图,(b)为闭运算后的分割图;
图8为本发明一实施例中基于透视变换的文档矫正的示意图;其中,(a)为矫正示意图,(b)为手动选择4个点示意图,(c)为文档矫正结果示意图;
图9为本发明一实施例中基于主动学习与迁移学习的字体类别视觉检测***结构图。
具体实施方式
为了使本技术领域的人员更好地理解本发明的技术方案,下面结合附图对本发明作进一步的详细说明。
在一个实施例中,如图1和图2所示,基于主动学习与迁移学习的字体类别视觉检测方法,所述方法包括以下步骤:
S100、获取数据集,数据集包括拍摄图片、文档截取图片和标准字符图片,对数据集进行预处理,得到单个拍摄的字体图像、单个文档中的字体图像和单个字符图像,将预处理后的数据集进行划分,得到三种场景下的训练集、验证集和测试集。
在一个实施例中,S100中对数据集进行预处理包括:
S110、对数据集中的标准字符图片进行预处理:对标准字符图片进行数据增强处理扩充标准字体字样数据集,
S120、对数据集中的文档截取图片进行预处理:将文档截取图片转换为灰度图像后进行二值化,采用闭运算操作填充文字中的小孔和断裂;采用水平垂直投影法将从文档中截取的图片分割成单个字符,得到文字分割后的文档截取图像数据集;
S130、对数据集中的拍摄图片进行预处理:对拍摄图像采用透视变换进行文档矫正,将矫正后的拍摄图片转换为灰度图像后进行二值化,采用闭运算操作填充文字中的小孔和断裂,采用水平垂直投影法将矫正后的拍摄图片分割成单个字符,得到通过文档校正和文字分割后的拍摄图片数据集。
具体地,在本实施例中,构建了三个数据库。第一个数据库称之为优化艺术字体数据库(Optimizing the Art Font Database,OAFD),该数据集包含4种常见字体类别,包括仿宋字体、黑体、楷体字体、宋体字体,每个字体类别下又包含五种更细致的类别。共20种类别,每种类别有63张字体图片。将这些数据称之为“标准字体字样”。为了表述方便,给每一种字体命名,如表1所示。
表1 二十种字体样式及对应的命名
第二个数据库来自于文档中截取的句子或段落图片,如图3所示,图片中每一个单独的字符都是标准字体字样中的字符。
第三个数据库来自于手机拍摄的图片。如图4所示,手机拍摄的图片中往往存在多行文字,并且存在文档倾斜的问题。
综上所述,本申请已有的数据集有三个部分,分别来自于标准字体字样、文档中截取的句子或段落图片和手机拍摄的图片,它们各自存在的问题及对应的处理方法如表2所示。标准字体字样中每一个字体类别的图片数量较少,模型很难从仅有的63张图片中提取到字体的全部特征,所以需要对标准字体字样进行数据增强处理。文档中截取的句子或段落图片由很多单个标准字体字符组成,而模型只能识别单个汉字图片,所以需要进行文字分割处理。手机拍摄的图片往往是多行文字的且存在角度倾斜等问题,在对手机拍摄的图片进行字体识别之前,需要进行包括文档矫正和文字分割处理。
表2 数据集存在的问题及处理方法
在一个实施例中,S110具体为:
通过自定义的脚本利用字体文件生成了额外的字体图片来扩充标准字体字样数据集:将汉字列表文件和字体文件作为输入数据;创建一个大小为2000×2000像素的白色背景的RGB图像;在位置(200,200)处绘制一个大小为800×800像素的文本;将图像转换为灰度图像,并通过阈值将非白色区域转换为黑色,以突出文本;为了去除不包含字体信息的大量白色像素点,并确保文本完全显示在白色背景上,对图像进行裁剪,使文本边界与背景边界相差200个像素点;调整图像大小为467×467像素,与“标准字体字样”中的图像大小保持一致,并使用插值算法减少调整大小过程中的失真和锯齿现象,以保留图像的细节和质量。
具体地,通过这种方式,我们生成的字体图像与标准字体字样中的字体图像具有相同的大小和视觉特征,如图5所示。
在一个实施例中,S120具体为:
将文档截取图片转换为灰度图像后将图片进行二值化,使文字部分的像素值为0,背景部分的像素值为255;
利用水平投影法,根据峰值图确定行数并将每一行分割出来;
采用垂直投影法确定列数,将每个字符分割出来。
具体地,本文采用水平垂直投影法将矫正后的手机拍摄图片以及从文档中截取的图片分割成单个字符。投影法是对二值化图片的像素分布直方图进行分析,即水平投影反应的是水平方向上文字区域像素个数,垂直投影反应的是垂直方向上文字区域像素个数。由于手机拍摄图片容易受到光线等因素的影响,造成字符的清晰度不高,为了使得后续的处理更加高效和准确,我们降低了图像的曝光度并将图像转换为灰度图像。然后为了避免背景像素点的影响,我们将图片进行了二值化,使文字部分的像素值为0,背景部分的像素值为255。通过水平投影,统计每一行中像素值为0的像素点个数。如图6所示,水平投影种有2个峰值,对应原图中的两行,垂直投影中有3个峰值,对应原图中的两列。
然而,中文汉字大多数是由偏旁和部首组成,直接使用垂直投影法会将一个字的分割成偏旁和部首两个字,因此,采用闭运算,来填充文字中的小孔和断裂,以保持文字的完整性和连贯性,然后再使用水平垂直投影法进行分割。闭运算操作前后分割对比图如图7所示。
在一个实施例中,S130中对拍摄图像采用透视变换进行文档矫正,具体为:
选择原二维图像中的四个点,根据透视变换公式,得到变换后四个点的坐标,再根据这四个点的坐标确定投影在新平面上的图像。
具体地,由于手机拍摄时,离镜头近的地方画面大,离镜头远的地方画面小,这样造成的图像形变是空间形变,本实施例中采用透视变换对手机拍摄图片进行矫正。在变换的过程中,首先选择原二维图像中的四个点,根据透视变换公式,能够得到变换后四个点的坐标,然后根据这四个点的坐标确定投影在新平面上的图像,矫正变换示意图以及文档矫正结果如图8所示。
在一个实施例中,S100中将预处理后的数据集进行划分,得到三种场景下的训练集、验证集和测试集,包括:
第一种场景下的数据集分配为:将标准字体字样数据集的80%、10%和10%的数据作为第一种场景下的训练集、验证集和测试集;
第二种场景下的数据集分配为:将标准字体字样数据集的80%、10%和通过文字分割后的文档截取图像数据集作为第二种场景下的训练集、验证集和测试集;
第三种场景下的数据集分配为:将标准字体字样数据集的80%、10%和通过文档校正和文字分割后的手机拍摄图片数据集作为第三种场景下的训练集、验证集和测试集。
具体地,由于“标准字体字样”可以通过字体文件生成,而文档中截取的图片需要文字分割操作以及手机拍摄图片需要人工拍摄,并且需要进行文档矫正和文字分割操作。为了减少准备数据的成本,针对三种场景下的字体识别,本实施例均使用“标准字体字样”作为训练集和验证集。表3展示了三种场景下的数据集分配情况。
表3 数据集分配情况
S200、基于迁移学习,利用预训练模型的特征提取能力对三种场景下的测试集中的字体图像进行分析并且得到三种场景下相应的预测结果。
在一个实施例中,预训练模型为InceptionResnetV2模型。
具体的,为了寻找一个合适的预训练模型,本文对ST01、HT01、KT01、FS01四种标准字体的数据集在场景1下进行了实验。在实验过程中,我们采用迁移学习方法,在ResNet152、ResNet152V2、ResNet101V2、InceptionV3和InceptionResNetV2模型下进行训练,最后在测试集上计算准确率。实验结果如表4所示,展示了这5种模型在字体识别准确率方面的表现。
表4 四种标准字体在不同模型下的准确率比较
从表4中可以看出,基于迁移学习的InceptionResnetV2模型取得了最高的准确率。相比之下,其他模型的识别准确率略低一些。这表明InceptionResNetV2模型在字体类型辨识任务中具有更强的特征提取能力,能够更好地捕捉字体的细微特征和样式。
S300、采用主动学习策略,计算对应场景下的预测结果的置信度和准确率,当对应场景的准确率小于该场景的预设的准确率阈值时,选择该场景下置信度大于该场景下预设的置信度阈值但是标记错误的样本进行人工标注,将标注后的样本放入该场景的训练集中对预训练模型进行再训练,更新预训练模型的参数,直至该场景的准确率大于或等于该场景的预设的准确率阈值。
在一个实施例中,S300中采用主动学习策略,计算对应场景下的预测结果的置信度和准确率,具体为:
对于一个样本,预训练模型预测为类别/>的概率表示为/>,置信度通过以下公式计算:
;
其中,表示在所有类别的预测概率中取最大值。
具体地,在以往的研究中,人们研究的对象往往是单一的,即对于一个训练好的模型,测试集需要和训练集具有相同的分布,才能有较好的预测效果。如果要预测一个新的场景图片,需要大量标记好的训练集重新训练,然而,训练集的收集以及标注成本是很高的,主动学习帮我们解决了这一问题。在训练集中,每个样本带给模型训练的信息是不同的,即每个样本带给模型训练的贡献是有大有小的,主动学习能够筛选出对模型训练贡献大的样本提交给专家进行标注,然后放入到模型中进行训练。
主动学习的筛选方式最常见的是不确定性抽样。不确定性可以用置信度表示,即模型对于预测结果的可信程度。
在一个实施例中,第一种场景中置信度高于第一种场景的预设置信度阈值但标记错误的样本中最低的置信度作为第二种场景和第三种场景的置信度阈值。
具体地,由于本文的字体识别模型中,场景1(对应第一种场景)的测试集均是有标签的,所以选择置信度高但标记错误的样本,能够纠正模型的错误预测,并引入更准确的标签信息。根据场景1,选择置信度高但标记错误的样本中最低的置信度作为一个置信度分界点用于场景2(对应第二种场景)和场景3(对应第三种场景)的抽样。在场景2和场景3中,通过标记置信度高的样本,能够优先选择对模型改进最有帮助的样本,从而减少人工标注成本。
S400、重复S300,直至三种场景的准确率均大于或等于对应场景的预设的准确率阈值。
为了更好地说明加入主动学习的优势,我们分别对见过的字体类别和未见过的(训练集中未出现的)字体类别进行了消融实验。由于场景2和场景3类似,并且场景3更复杂,所以我们仅场景1和场景3进行了实验,即单个字符图像和手机拍摄图像。实验结果如表5所示。
表5 场景1和场景3字体识别准确率
根据表5的结果,传统的迁移学习方法对手机拍摄的图像基本上没有识别效果,因为手机拍摄图像和生成的图像分布不同。但是加入主动学习之后,成功解决了这一问题,并且对于分布相同的情况下,识别准确率也有所提高。
接下来,本申请将进一步探索本申请用到的方法和单独使用迁移学习方法在识别训练集中未出现过的字体类别时的性能差异。在这一实验中,将专注于识别那些在训练集中未见过的字体类别。这些未见过的类别对模型来说是全新的,模型没有接触到它们的特征和样本。首先,使用迁移学习训练好的模型对未见过的字体进行预测,然后筛选出置信度大于0.93的数据进行人工标注,并将标注好的数据按照8:1:1划分为训练集、验证集和测试集,并将其合并到原始数据集中。接着对模型进行微调并重新训练,经过10次训练后,对未标注的字体进行预测,其结果如表6所示,展示了本申请的方法对未见过的3种字体的识别情况。
表6 本申请的方法对未见过类别的字体识别准确率(%)
根据表6的结果可以观察到,加入主动学***均准确率已经达到了92.7%。证实了主动学习策略在解决未见过类别的字体识别问题上具有一定的优势。
基于主动学习与迁移学习的字体类别视觉检测***,包括拍摄装置和上位机,拍摄装置用于拍摄包含文字的图片作为数据集的一部分并发送至上位机,上位机用于执行上述基于主动学习与迁移学习的字体类别视觉检测方法,完成字体检测。
具体地,本文设计的字体类别视觉检测***由拍摄装置(手机)、计算机、字体识别软件组成。首先通过将单个字符或者文档中截取的句子或者手机拍摄的文本图片传输到计算机中,利用提前编写好的字体识别软件,对输入的文本图片进行字体识别,识别结果反馈在软件界面中,为字体设计者提供方便。该***能满足多场景的字体识别需求,如标准字体库中的单个字符、截取的文档中的某个句子以及手机拍摄的文本图片。整体***的结构如图9所示。
该***中图像数据的获取通过本申请开发的字体视觉识别***,当看到想要识别的字体时,用手机拍摄下来,然后通过云传输,上传到电脑中。
电脑中有本申请编写好的字体识别软件,使用该软件前,用户可以点击上方的“说明”了解软件的使用方法,然后用户可以选择自己需要的识别类型。能够实时检测输入图片所属的字体类别。
上述基于主动学***均识别准确率达到了92.7%。
以上对本发明所提供的基于主动学习与迁移学习的字体类别视觉检测方法和***进行了详细介绍。本发明中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (8)
1.基于主动学习与迁移学习的字体类别视觉检测方法,其特征在于,所述方法包括以下步骤:
S100、获取数据集,数据集包括拍摄图片、文档截取图片和标准字符图片,对数据集进行预处理,得到单个拍摄的字体图像、单个文档中的字体图像和单个字符图像,将预处理后的数据集进行划分,得到三种场景下的训练集、验证集和测试集;
S200、基于迁移学习,利用预训练模型的特征提取能力对三种场景下的测试集中的字体图像进行分析并且得到三种场景下相应的预测结果;
S300、采用主动学习策略,计算对应场景下的预测结果的置信度和准确率,当对应场景的准确率小于该场景的预设的准确率阈值时,选择该场景下置信度大于该场景下预设的置信度阈值但是标记错误的样本进行人工标注,将标注后的样本放入该场景的训练集中对预训练模型进行再训练,更新预训练模型的参数,直至该场景的准确率大于或等于该场景的预设的准确率阈值;
S300中采用主动学习策略,计算对应场景下的预测结果的置信度和准确率,具体为:
对于一个样本,预训练模型预测为类别/>的概率表示为/>,置信度通过以下公式计算:
;
其中,表示在所有类别的预测概率中取最大值;
第一种场景中置信度高于第一种场景的预设置信度阈值但标记错误的样本中最低的置信度作为第二种场景和第三种场景的置信度阈值;
S400、重复S300,直至三种场景的准确率均大于或等于对应场景的预设的准确率阈值。
2.根据权利要求1所述的方法,其特征在于,S100中对数据集进行预处理包括:
S110、对数据集中的标准字符图片进行预处理:对标准字符图片进行数据增强处理扩充标准字体字样数据集,
S120、对数据集中的文档截取图片进行预处理:将文档截取图片转换为灰度图像后进行二值化,采用闭运算操作填充文字中的小孔和断裂;采用水平垂直投影法将从文档中截取的图片分割成单个字符,得到文字分割后的文档截取图像数据集;
S130、对数据集中的拍摄图片进行预处理:对拍摄图像采用透视变换进行文档矫正,将矫正后的拍摄图片转换为灰度图像后进行二值化,采用闭运算操作填充文字中的小孔和断裂,采用水平垂直投影法将矫正后的拍摄图片分割成单个字符,得到通过文档校正和文字分割后的拍摄图片数据集。
3.根据权利要求2所述的方法,其特征在于,S110具体为:
通过自定义的脚本利用字体文件生成了额外的字体图片来扩充标准字体字样数据集:将汉字列表文件和字体文件作为输入数据;创建一个大小为2000×2000像素的白色背景的RGB图像;在位置(200,200)处绘制一个大小为800×800像素的文本;将图像转换为灰度图像,并通过阈值将非白色区域转换为黑色,以突出文本;为了去除不包含字体信息的大量白色像素点,并确保文本完全显示在白色背景上,对图像进行裁剪,使文本边界与背景边界相差200个像素点;调整图像大小为467×467像素,与“标准字体字样”中的图像大小保持一致,并使用插值算法减少调整大小过程中的失真和锯齿现象,以保留图像的细节和质量。
4.根据权利要求3所述的方法,其特征在于,S120具体为:
将文档截取图片转换为灰度图像后将图片进行二值化,使文字部分的像素值为0,背景部分的像素值为255;
利用水平投影法,根据峰值图确定行数并将每一行分割出来;
采用垂直投影法确定列数,将每个字符分割出来。
5.根据权利要求4所述的方法,其特征在于,S130中对拍摄图像采用透视变换进行文档矫正,具体为:
选择原二维图像中的四个点,根据透视变换公式,得到变换后四个点的坐标,再根据这四个点的坐标确定投影在新平面上的图像。
6.根据权利要求5中所述的方法,其特征在于,S100中将预处理后的数据集进行划分,得到三种场景下的训练集、验证集和测试集,包括:
第一种场景下的数据集分配为:将标准字体字样数据集的80%、10%和10%的数据作为第一种场景下的训练集、验证集和测试集;
第二种场景下的数据集分配为:将标准字体字样数据集的80%、10%和通过文字分割后的文档截取图像数据集作为第二种场景下的训练集、验证集和测试集;
第三种场景下的数据集分配为:将标准字体字样数据集的80%、10%和通过文档校正和文字分割后的手机拍摄图片数据集作为第三种场景下的训练集、验证集和测试集。
7.根据权利要求1所述的方法,其特征在于,预训练模型为InceptionResnetV2模型。
8.基于主动学习与迁移学习的字体类别视觉检测***,其特征在于,包括拍摄装置和上位机,拍摄装置用于拍摄包含文字的图片作为数据集的一部分并发送至上位机,上位机用于执行权利要求1至7中任一项所述的方法,完成字体检测。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410122672.3A CN117649672B (zh) | 2024-01-30 | 2024-01-30 | 基于主动学习与迁移学习的字体类别视觉检测方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410122672.3A CN117649672B (zh) | 2024-01-30 | 2024-01-30 | 基于主动学习与迁移学习的字体类别视觉检测方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117649672A CN117649672A (zh) | 2024-03-05 |
CN117649672B true CN117649672B (zh) | 2024-04-26 |
Family
ID=90045517
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410122672.3A Active CN117649672B (zh) | 2024-01-30 | 2024-01-30 | 基于主动学习与迁移学习的字体类别视觉检测方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117649672B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118196399B (zh) * | 2024-05-16 | 2024-07-23 | 创意信息技术股份有限公司 | 一种基于主动学习的目标检测模型优化方法及装置 |
Citations (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108376244A (zh) * | 2018-02-02 | 2018-08-07 | 北京大学 | 一种自然场景图片中的文本字体的识别方法 |
CN108459999A (zh) * | 2018-02-05 | 2018-08-28 | 杭州时趣信息技术有限公司 | 一种字体设计方法、***、设备及计算机可读存储介质 |
CN109462610A (zh) * | 2018-12-24 | 2019-03-12 | 哈尔滨工程大学 | 一种基于主动学习和迁移学习的网络入侵检测方法 |
CN109784237A (zh) * | 2018-12-29 | 2019-05-21 | 北京航天云路有限公司 | 基于迁移学习的残差网络训练的场景分类方法 |
WO2019174130A1 (zh) * | 2018-03-14 | 2019-09-19 | 平安科技(深圳)有限公司 | 票据识别方法、服务器及计算机可读存储介质 |
US10489682B1 (en) * | 2017-12-21 | 2019-11-26 | Automation Anywhere, Inc. | Optical character recognition employing deep learning with machine generated training data |
CN110516554A (zh) * | 2019-07-31 | 2019-11-29 | 杭州电子科技大学 | 一种多场景多字体中文文字检测识别方法 |
WO2019232874A1 (zh) * | 2018-06-04 | 2019-12-12 | 平安科技(深圳)有限公司 | 汉字模型训练方法、汉字识别方法、装置、设备及介质 |
WO2019232849A1 (zh) * | 2018-06-04 | 2019-12-12 | 平安科技(深圳)有限公司 | 汉字模型训练方法、手写字识别方法、装置、设备及介质 |
CN111191786A (zh) * | 2019-12-20 | 2020-05-22 | 南京航空航天大学 | 一种基于主动学习的迁移学习算法 |
CN112418216A (zh) * | 2020-11-18 | 2021-02-26 | 湖南师范大学 | 一种复杂自然场景图像中的文字检测方法 |
CN112580507A (zh) * | 2020-12-18 | 2021-03-30 | 合肥高维数据技术有限公司 | 一种基于图像矩矫正的深度学习文本字符检测方法 |
CN112990196A (zh) * | 2021-03-16 | 2021-06-18 | 北京大学 | 基于超参数搜索和二阶段训练的场景文字识别方法及*** |
CN113408418A (zh) * | 2021-06-18 | 2021-09-17 | 西安电子科技大学 | 一种书法字体与文字内容同步识别方法及*** |
CN114037948A (zh) * | 2021-10-08 | 2022-02-11 | 中铁第一勘察设计院集团有限公司 | 基于迁移主动学习的车载道路点云要素矢量化方法与装置 |
CN114724157A (zh) * | 2022-04-21 | 2022-07-08 | 南京大学 | 一种基于改进深度学习ocr的工业文本检测识别方法 |
CN115457555A (zh) * | 2022-05-31 | 2022-12-09 | 民生科技有限责任公司 | 通用场景文字识别数据的自动生成方法及*** |
CN115496204A (zh) * | 2022-10-09 | 2022-12-20 | 南京邮电大学 | 一种跨域异质场景下的面向联邦学习的评测方法及装置 |
CN116958771A (zh) * | 2023-07-28 | 2023-10-27 | 北京元境数字科技有限公司 | 一种计算机视觉识别***及方法 |
WO2024016516A1 (zh) * | 2022-07-18 | 2024-01-25 | 浙大城市学院 | 文献数据集上知识图谱实体标注错误识别方法和*** |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11657602B2 (en) * | 2017-10-30 | 2023-05-23 | Monotype Imaging Inc. | Font identification from imagery |
US11610115B2 (en) * | 2018-11-16 | 2023-03-21 | Nvidia Corporation | Learning to generate synthetic datasets for training neural networks |
CN110135530B (zh) * | 2019-05-16 | 2021-08-13 | 京东方科技集团股份有限公司 | 转换图像中汉字字体的方法及***、计算机设备及介质 |
CN113792850B (zh) * | 2021-09-09 | 2023-09-01 | 北京百度网讯科技有限公司 | 字体生成模型训练方法、字库建立方法、装置及设备 |
-
2024
- 2024-01-30 CN CN202410122672.3A patent/CN117649672B/zh active Active
Patent Citations (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10489682B1 (en) * | 2017-12-21 | 2019-11-26 | Automation Anywhere, Inc. | Optical character recognition employing deep learning with machine generated training data |
CN108376244A (zh) * | 2018-02-02 | 2018-08-07 | 北京大学 | 一种自然场景图片中的文本字体的识别方法 |
CN108459999A (zh) * | 2018-02-05 | 2018-08-28 | 杭州时趣信息技术有限公司 | 一种字体设计方法、***、设备及计算机可读存储介质 |
WO2019174130A1 (zh) * | 2018-03-14 | 2019-09-19 | 平安科技(深圳)有限公司 | 票据识别方法、服务器及计算机可读存储介质 |
WO2019232874A1 (zh) * | 2018-06-04 | 2019-12-12 | 平安科技(深圳)有限公司 | 汉字模型训练方法、汉字识别方法、装置、设备及介质 |
WO2019232849A1 (zh) * | 2018-06-04 | 2019-12-12 | 平安科技(深圳)有限公司 | 汉字模型训练方法、手写字识别方法、装置、设备及介质 |
CN109462610A (zh) * | 2018-12-24 | 2019-03-12 | 哈尔滨工程大学 | 一种基于主动学习和迁移学习的网络入侵检测方法 |
CN109784237A (zh) * | 2018-12-29 | 2019-05-21 | 北京航天云路有限公司 | 基于迁移学习的残差网络训练的场景分类方法 |
CN110516554A (zh) * | 2019-07-31 | 2019-11-29 | 杭州电子科技大学 | 一种多场景多字体中文文字检测识别方法 |
CN111191786A (zh) * | 2019-12-20 | 2020-05-22 | 南京航空航天大学 | 一种基于主动学习的迁移学习算法 |
CN112418216A (zh) * | 2020-11-18 | 2021-02-26 | 湖南师范大学 | 一种复杂自然场景图像中的文字检测方法 |
CN112580507A (zh) * | 2020-12-18 | 2021-03-30 | 合肥高维数据技术有限公司 | 一种基于图像矩矫正的深度学习文本字符检测方法 |
CN112990196A (zh) * | 2021-03-16 | 2021-06-18 | 北京大学 | 基于超参数搜索和二阶段训练的场景文字识别方法及*** |
CN113408418A (zh) * | 2021-06-18 | 2021-09-17 | 西安电子科技大学 | 一种书法字体与文字内容同步识别方法及*** |
CN114037948A (zh) * | 2021-10-08 | 2022-02-11 | 中铁第一勘察设计院集团有限公司 | 基于迁移主动学习的车载道路点云要素矢量化方法与装置 |
CN114724157A (zh) * | 2022-04-21 | 2022-07-08 | 南京大学 | 一种基于改进深度学习ocr的工业文本检测识别方法 |
CN115457555A (zh) * | 2022-05-31 | 2022-12-09 | 民生科技有限责任公司 | 通用场景文字识别数据的自动生成方法及*** |
WO2024016516A1 (zh) * | 2022-07-18 | 2024-01-25 | 浙大城市学院 | 文献数据集上知识图谱实体标注错误识别方法和*** |
CN115496204A (zh) * | 2022-10-09 | 2022-12-20 | 南京邮电大学 | 一种跨域异质场景下的面向联邦学习的评测方法及装置 |
CN116958771A (zh) * | 2023-07-28 | 2023-10-27 | 北京元境数字科技有限公司 | 一种计算机视觉识别***及方法 |
Non-Patent Citations (4)
Title |
---|
Explicit Aspect Annotation via Transfer and Active Learning;Daniela Onita;《IEEE Access》;20230322;1-11 * |
Photovoltaic Panel Defect Detection Method Combining High-Pass Filter and MSRCR Algorithm with Improved Region Growth;Dingyin Xiao等;《2023 42nd Chinese Control Conference (CCC)》;20230918;1-6 * |
基于域相关性与流形约束的多源域迁移学习分类算法;刘振;杨俊安;刘辉;王伟;;计算机应用研究;20160531(第02期);351-356 * |
基于迁移学习的高分辨率遥感影像场景分类研究;周黎鸣;陈璐;刘金明;左宪禹;葛强;陈小潘;;河南大学学报(自然科学版);20200716(第04期);68-75 * |
Also Published As
Publication number | Publication date |
---|---|
CN117649672A (zh) | 2024-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6843086B2 (ja) | 画像処理システム、画像においてマルチラベル意味エッジ検出を行う方法、および、非一時的コンピューター可読記憶媒体 | |
CN109492643B (zh) | 基于ocr的证件识别方法、装置、计算机设备及存储介质 | |
Zhang et al. | Ensnet: Ensconce text in the wild | |
CN108664996B (zh) | 一种基于深度学习的古文字识别方法及*** | |
CN108229397B (zh) | 基于Faster R-CNN的图像中文本检测方法 | |
WO2019192397A1 (zh) | 一种任意形状的场景文本端到端识别方法 | |
CN108376244B (zh) | 一种自然场景图片中的文本字体的识别方法 | |
CN103578116B (zh) | 用于跟踪对象的设备和方法 | |
CN110580699A (zh) | 基于改进Faster RCNN算法的病理图像细胞核检测方法 | |
CN117649672B (zh) | 基于主动学习与迁移学习的字体类别视觉检测方法和*** | |
CN109033978B (zh) | 一种基于纠错策略的cnn-svm混合模型手势识别方法 | |
CN110766020A (zh) | 一种面向多语种自然场景文本检测与识别的***及方法 | |
GB2547760A (en) | Method of image processing | |
CN112686219B (zh) | 手写文本识别方法及计算机存储介质 | |
CN115862045B (zh) | 基于图文识别技术的病例自动识别方法、***、设备及存储介质 | |
CN114596566A (zh) | 文本识别方法及相关装置 | |
CN113158977B (zh) | 改进FANnet生成网络的图像字符编辑方法 | |
CN114897782A (zh) | 基于生成式对抗网络的胃癌病理切片图像分割预测方法 | |
CN113807218A (zh) | 版面分析方法、装置、计算机设备和存储介质 | |
CN113592807A (zh) | 一种训练方法、图像质量确定方法及装置、电子设备 | |
CN117253110A (zh) | 一种基于扩散模型的目标检测模型泛化能力提升方法 | |
CN117152625A (zh) | 一种基于CoordConv和YOLOv5的遥感小目标识别方法、***、设备及介质 | |
CN111582057A (zh) | 一种基于局部感受野的人脸验证方法 | |
Chen et al. | Scene text recognition based on deep learning: a brief survey | |
CN114399782A (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 |