CN110363049B - 图形元素检测识别和类别确定的方法及装置 - Google Patents
图形元素检测识别和类别确定的方法及装置 Download PDFInfo
- Publication number
- CN110363049B CN110363049B CN201810315013.6A CN201810315013A CN110363049B CN 110363049 B CN110363049 B CN 110363049B CN 201810315013 A CN201810315013 A CN 201810315013A CN 110363049 B CN110363049 B CN 110363049B
- Authority
- CN
- China
- Prior art keywords
- hash
- image
- target
- graphic element
- feature
- 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
- 238000000034 method Methods 0.000 title claims abstract description 210
- 238000001514 detection method Methods 0.000 claims abstract description 280
- 230000006870 function Effects 0.000 claims description 194
- 238000012549 training Methods 0.000 claims description 169
- 238000000605 extraction Methods 0.000 claims description 153
- 238000011176 pooling Methods 0.000 claims description 68
- 238000004364 calculation method Methods 0.000 claims description 35
- 238000003860 storage Methods 0.000 claims description 27
- 238000012512 characterization method Methods 0.000 claims description 18
- 238000013528 artificial neural network Methods 0.000 claims description 17
- 238000013507 mapping Methods 0.000 claims description 14
- 210000002569 neuron Anatomy 0.000 claims description 9
- 230000002457 bidirectional effect Effects 0.000 claims description 7
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 101150060512 SPATA6 gene Proteins 0.000 description 314
- 230000008569 process Effects 0.000 description 30
- 238000013527 convolutional neural network Methods 0.000 description 18
- 238000012545 processing Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 15
- 238000004590 computer program Methods 0.000 description 13
- 230000000306 recurrent effect Effects 0.000 description 7
- 238000013461 design Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 239000000284 extract Substances 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011022 operating instruction Methods 0.000 description 2
- 238000012015 optical character recognition Methods 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000009966 trimming Methods 0.000 description 1
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/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
- G06F18/24137—Distances to cluster centroïds
- G06F18/2414—Smoothing the distance, e.g. radial basis function networks [RBFN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- 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/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- 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/40—Document-oriented image-based pattern recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30176—Document
-
- 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/28—Character recognition specially adapted to the type of the alphabet, e.g. Latin alphabet
- G06V30/287—Character recognition specially adapted to the type of the alphabet, e.g. Latin alphabet of Kanji, Hiragana or Katakana characters
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种图形元素检测识别方法,包括:获取目标图像,目标图像中包含待检测识别的目标图形元素;根据目标图像,确定目标图形元素出现在目标图像中的位置信息;根据目标图形元素出现在目标图像中的位置信息,提取目标图形元素所在的区域图像。该方法能够有效减少计算量,并且提升端到端的识别精度。本申请还公开了一种图形元素类别确定方法,包括:获取目标图像,目标图像中包含待确定类别的目标图形元素;根据目标图像,确定目标图形元素所在的区域图像;根据目标图形元素所在的区域图像,确定目标图形元素的类别。该方法能够确定图像中的图形元素的类别的方法,满足人们的使用需求。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种图形元素检测识别和类别确定的方法及装置。
背景技术
随着计算机技术的发展,文件量越来越大,海量的图像文件中也蕴含了各种各样的图形元素,传递着丰富多彩的信息。在进行文档分析、艺术设计或自动化文档处理时,往往需要获取图形元素所传递的信息,尤其是图形元素所对应的类别的信息。为了自动获取这些图形元素所传递的信息,多种图形元素检测和识别技术也应运而生。
在相关技术中,对图形元素的检测和识别过程往往是分别进行的。因此,亟需一种能够在统一框架下进行图形元素检测和识别的方法。
发明内容
本申请实施例提供一种图形元素检测识别方法及装置,旨在能够在统一框架下进行图形元素检测和识别。
本申请实施例还提供一种图形元素类别确定方法及装置,旨在确定图形元素的类别信息。
本申请实施例采用下述技术方案:
第一方面,本申请实施例提供一种图形元素检测识别方法,包括:
获取目标图像,所述目标图像中包含待检测识别的目标图形元素;
根据所述目标图像,生成与所述目标图像相对应的第一特征图;
根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果;
根据目标检测框体的位置信息和所述第一特征图,确定所述目标图形元素出现在所述目标图像中的位置信息,所述目标检测框体中包含有目标图形元素;
根据所述目标图形元素出现在所述目标图像中的位置信息,确定所述目标图形元素所在的区域图像。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果,包括:
根据所述第一特征图,确定得到检测候选区域的位置信息;
根据所述第一特征图和所述检测候选区域的位置信息,生成预设宽高比的多个检测框体,并确定所述多个检测框体的位置信息以及各检测框体中是否包含目标图形元素的判别结果。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,根据目标检测框体的位置信息和所述第一特征图,确定所述目标图形元素出现在所述目标图像中的位置信息包括:
根据目标检测框体的位置信息和所述第一特征图,生成所述第一特征图中的特征子图,所述特征子图与所述目标检测框体的位置信息相对应;
根据所述特征子图,确定所述目标图形元素出现在所述目标图像中的位置信息。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,根据目标检测框体的位置信息和所述第一特征图,生成所述第一特征图中的特征子图,包括:
按照预设高度,将所述第一特征图上对应所述目标检测框体的区域平均划分为多个网格区域;
对每个网格区域内的特征值进行池化操作,得到所述特征子图;所述特征子图的高度为所述预设高度,所述特征子图的宽高比与所述目标检测框体的宽高比相同。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,所述池化操作为平均池化或者最大池化;
则对每个网格区域内的特征值进行池化操作,具体为:
取网格区域内的特征值的平均值或者最大值,作为所述特征子图中与所述网格区域相对应的特征值。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,根据所述特征子图,确定所述目标图形元素出现在所述目标图像中的位置信息,包括:
根据所述特征子图,利用双向循环神经网络层BRNN确定所述特征子图的特征序列中每一个位置上的类别概率,并根据所述类别概率确定所述目标图形元素出现在所述目标图像中的位置信息。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,根据所述目标图像,生成与所述目标图像相对应的第一特征图的步骤,由图像特征化单元执行;
根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果的步骤,由元素检测单元执行;
根据目标检测框体的位置信息和所述第一特征图,生成所述第一特征图中的特征子图的步骤,由区域池化单元执行;
所述图像特征化单元、所述元素检测单元和所述区域池化单元构成元素检测识别模块。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,所述方法还包括:
基于ImageNet图像数据集,训练所述图像特征化单元;
采用真实标注的第一目标检测框体的位置信息作为所述区域池化单元的输入,根据损失函数的计算结果对所述元素检测识别模块的参数进行调整;
当满足第一预设条件时,采用所述元素检测单元生成第二目标检测框体的位置信息,根据所述损失函数的计算结果对所述元素检测识别模块的参数进行调整,直至满足第二预设条件。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,所述损失函数为检测损失函数与连接时序分类损失函数的加权和;其中,所述检测损失函数用于反映所述第一目标检测框体与所述第二目标检测框体的位置信息之间的差异,所述连接时序分类损失函数用于反映利用所述元素检测识别模块识别出的目标图形元素构成的序列与真实序列之间的差异。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,在根据所述目标图形元素出现在所述目标图像中的位置信息,确定所述目标图形元素所在的区域图像之后,所述方法还包括:
根据所述目标图形元素所在的区域图像,确定所述目标图形元素的类别。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,根据所述目标图形元素所在的区域图像,确定所述目标图形元素的类别,包括:
提取所述区域图像的深层特征表示,并将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码;
根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标图形元素的类别;所述哈希编码库中存储有图形元素的元素类别信息与预设哈希编码的对应关系。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,提取所述区域图像的深层特征表示的步骤,由特征提取单元执行;
将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码的步骤,由哈希编码单元执行;
所述特征提取单元和所述哈希编码单元构成元素特征提取模块。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,所述方法还包括:
基于训练样本图像及其所对应的元素类别信息,对所述特征提取单元进行初始化,使得所述特征提取单元输出所述训练样本图像的深层特征表示;
基于初始化的特征提取单元输出的深层特征表示,训练哈希编码函数,使得所述哈希编码函数将高维度的所述深层特征表示映射到低维度的哈希空间;
将训练好的所述哈希编码函数写入哈希编码单元中的哈希层,用于将高维度的所述深层特征表示降维至所述哈希编码的长度,所述哈希层的神经元个数与所述哈希编码的码长相等;
根据所述哈希编码单元输出的哈希编码,计算损失函数,所述损失函数用于反映第一距离与第二距离之间的差距;所述第一距离为元素类别信息相同的训练样本图像的哈希编码间的汉明距离,所述第二距离为元素类别信息不同的训练样本图像的哈希编码间的汉明距离;
根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,基于训练样本图像及其所对应的元素类别信息,对所述特征提取单元进行初始化,包括:
根据所述特征提取单元输出的目标图像的深层特征表示,计算所述目标图像属于各类别的概率,所述目标图像为所述训练样本图像中任一图像;
根据所述训练样本图像中各目标图像属于各类别的概率,计算交叉熵误差函数,得到梯度信息;
将所述梯度信息在所述特征提取单元中反向传播,以调整所述特征提取单元的参数。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,基于初始化的所述特征提取单元输出的深层特征表示,训练哈希编码函数,包括:
采用哈希编码函数,对所述特征提取单元输出的深层特征表示进行线性映射,并将线性映射的结果通过符号函数转化为多个二值编码,以将所述深层特征表示映射到{-1,+1}的二值空间;
根据第三距离和第四距离调整所述哈希编码函数的参数,使得所述第三距离和第四距离之间的差距最小;所述第三距离为元素类别信息相同的任意两个训练样本数据的哈希编码间的汉明距离之和,所述第四距离为元素类别信息不相同的任意两个训练样本数据的哈希编码间的汉明距离之和。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,所述损失函数为三元排序损失函数;
则根据所述哈希编码单元输出的哈希编码,计算损失函数,包括:
根据所述训练样本图像及其所对应的元素类别信息,确定图像三元组;其中,所述图像三元组中第一张图像和第二张图像的元素类别信息相同,第一张图像和第三张图像的元素类别信息不同;
根据第五距离以及第六距离,计算所述三元排序损失函数;所述第五距离为第一张图像与第二张图像的哈希编码间的汉明距离,所述第六距离为第一张图像与第三张图像的哈希编码间的汉明距离;
则根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数,包括:
根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数,使得对任意所述训练样本图像,所述第五距离小于所述第六距离。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,在根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索之前,所述方法还包括:
建立所述哈希编码库;
所述建立所述哈希编码库的步骤,包括:
获取图形元素数据集合中各类别元素的哈希编码;
将元素类别信息相同的各图形元素的哈希编码的均值,作为与元素类别信息相对应的预设哈希编码;
将所述元素类别信息和所述预设哈希编码相对应地存储在所述哈希编码库中。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,包括:
计算所述目标图形元素的哈希编码与所述哈希编码库中的任一预设哈希编码之间的汉明距离;
则根据满足预设条件的元素类别信息确定所述目标图形元素的类别,包括:
当所述汉明距离小于预设阈值时,根据该汉明距离所对应的预设哈希编码确定所对应的元素类别信息;
将该预设哈希编码所对应的元素类别信息确定为所述目标图形元素的类别。
优选的,本申请实施例第一方面提供的图形元素检测识别方法中,所述目标图形元素具体化为文字字体。
第二方面,本申请实施例提供了一种汉字字体检测识别方法,包括:
获取目标图像,所述目标图像中包含待检测识别的目标汉字字体;
根据所述目标图像,生成与所述目标图像相对应的第一特征图;
根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标汉字字体的判别结果;
根据目标检测框体的位置信息和所述第一特征图,确定所述目标汉字字体出现在所述目标图像中的位置信息,所述目标检测框体中包含有目标汉字字体;
根据所述目标汉字字体出现在所述目标图像中的位置信息,确定所述目标汉字字体所在的区域图像。
第二方面,本申请实施例提供了一种文字字体检测识别方法,包括:
获取目标图像,所述目标图像中包含待检测识别的目标文字字体;
根据所述目标图像,生成与所述目标图像相对应的第一特征图;
根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标文字字体的判别结果;
根据目标检测框体的位置信息和所述第一特征图,确定所述目标文字字体出现在所述目标图像中的位置信息,所述目标检测框体中包含有目标文字字体;
根据所述目标文字字体出现在所述目标图像中的位置信息,确定所述目标文字字体所在的区域图像。
第四方面,本申请实施例提供了一种图形元素类别确定方法,包括:
确定目标图像中待确定类别的目标图形元素所在的区域图像;
提取所述区域图像的深层特征表示,并将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码;
根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标图形元素的类别,所述哈希编码库中存储有图形元素的元素类别信息与预设哈希编码的对应关系。
优选的,本申请实施例第四方面提供的图形元素类别确定方法中,提取所述区域图像的深层特征表示的步骤,由特征提取单元执行;
将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码的步骤,由哈希编码单元执行;
所述特征提取单元和所述哈希编码单元构成元素特征提取模块。
优选的,本申请实施例第四方面提供的图形元素类别确定方法中,所述方法还包括:
基于训练样本图像及其所对应的元素类别信息,对所述特征提取单元进行初始化,使得所述特征提取单元输出所述训练样本图像的深层特征表示;
基于初始化的特征提取单元输出的深层特征表示,训练哈希编码函数,使得所述哈希编码函数将高维度的所述深层特征表示映射到低维度的哈希空间;
将训练好的所述哈希编码函数写入哈希编码单元中的哈希层,用于将高维度的所述深层特征表示降维至所述哈希编码的长度,所述哈希层的神经元个数与所述哈希编码的码长相等;
根据所述哈希编码单元输出的哈希编码,计算损失函数,所述损失函数用于反映第一距离与第二距离之间的差距;所述第一距离为元素类别信息相同的训练样本图像的哈希编码间的汉明距离,所述第二距离为元素类别信息不同的训练样本图像的哈希编码间的汉明距离;
根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数。
优选的,本申请实施例第四方面提供的图形元素类别确定方法中,基于训练样本图像及其所对应的元素类别信息,对所述特征提取单元进行初始化,包括:
根据所述特征提取单元输出的目标图像的深层特征表示,计算所述目标图像属于各类别的概率,所述目标图像为所述训练样本图像中任一图像;
根据所述训练样本图像中各目标图像属于各类别的概率,计算交叉熵误差函数,得到梯度信息;
将所述梯度信息在所述特征提取单元中反向传播,以调整所述特征提取单元的参数。
优选的,本申请实施例第四方面提供的图形元素类别确定方法中,基于初始化的所述特征提取单元输出的深层特征表示,训练哈希编码函数,包括:
采用哈希编码函数,对所述特征提取单元输出的深层特征表示进行线性映射,并将线性映射的结果通过符号函数转化为多个二值编码,以将所述深层特征表示映射到{-1,+1}的二值空间;
根据第三距离和第四距离调整所述哈希编码函数的参数,使得所述第三距离和第四距离之间的差距最小;所述第三距离为元素类别信息相同的任意两个训练样本数据的哈希编码间的汉明距离之和,所述第四距离为元素类别信息不相同的任意两个训练样本数据的哈希编码间的汉明距离之和。
优选的,本申请实施例第四方面提供的图形元素类别确定方法中,所述损失函数为三元排序损失函数;
则根据所述哈希编码单元输出的哈希编码,计算损失函数,包括:
根据所述训练样本图像及其所对应的元素类别信息,确定图像三元组;其中,所述图像三元组中第一张图像和第二张图像的元素类别信息相同,第一张图像和第三张图像的元素类别信息不同;
根据第五距离以及第六距离,计算所述三元排序损失函数;所述第五距离为第一张图像与第二张图像的哈希编码间的汉明距离,所述第六距离为第一张图像与第三张图像的哈希编码间的汉明距离;
则根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数,包括:
根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数,使得对任意所述训练样本图像,所述第五距离小于所述第六距离。
优选的,本申请实施例第四方面提供的图形元素类别确定方法中,在根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索之前,所述方法还包括:
建立所述哈希编码库;
所述建立所述哈希编码库的步骤,包括:
获取图形元素数据集合中各类别元素的哈希编码;
将元素类别信息相同的各图形元素的哈希编码的均值,作为与元素类别信息相对应的预设哈希编码;
将所述元素类别信息和所述预设哈希编码相对应地存储在所述哈希编码库中。
优选的,本申请实施例第四方面提供的图形元素类别确定方法中,根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,包括:
计算所述目标图形元素的哈希编码与所述哈希编码库中的任一预设哈希编码之间的汉明距离;
则根据满足预设条件的元素类别信息确定所述目标图形元素的类别,包括:
当所述汉明距离小于预设阈值时,根据该汉明距离所对应的预设哈希编码确定所对应的元素类别信息;
将该预设哈希编码所对应的元素类别信息确定为所述目标图形元素的类别。
优选的,本申请实施例第四方面提供的图形元素类别确定方法中,所述目标图形元素具体化为文字字体。
第五方面,本申请实施例还提供一种汉字字体类别确定方法,包括:
确定目标图像中待确定类别的目标汉字字体所在的区域图像;
提取所述区域图像的深层特征表示,并将所述深层特征表示转换为与所述目标汉字字体所对应的哈希编码;
根据所述目标汉字字体所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标汉字字体的类别;所述哈希编码库中存储有汉字字体的元素类别信息与预设哈希编码的对应关系。
第六方面,本申请实施例还提供一种文字字体类别确定方法,包括:
确定目标图像中待确定类别的目标文字字体所在的区域图像;
提取所述区域图像的深层特征表示,并将所述深层特征表示转换为与所述目标文字字体所对应的哈希编码;
根据所述目标文字字体所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标文字字体的类别;所述哈希编码库中存储有文字字体的元素类别信息与预设哈希编码的对应关系。
第七方面,本申请实施例还提供一种图形元素检测识别装置,包括:
目标图像获取模块,用于获取目标图像,所述目标图像中包含待检测识别的目标图形元素;
特征图生成模块,用于根据所述目标图像,生成与所述目标图像相对应的第一特征图;
元素检测模块,用于根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果;
元素识别模块,用于根据目标检测框体的位置信息和所述第一特征图,确定所述目标图形元素出现在所述目标图像中的位置信息,所述目标检测框体中包含有目标图形元素;
区域图像确定模块,用于根据所述目标图形元素出现在所述目标图像中的位置信息,确定所述目标图形元素所在的区域图像。
第八方面,本申请实施例还提供一种电子设备,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
获取目标图像,所述目标图像中包含待检测识别的目标图形元素;
根据所述目标图像,生成与所述目标图像相对应的第一特征图;
根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果;
根据目标检测框体的位置信息和所述第一特征图,确定所述目标图形元素出现在所述目标图像中的位置信息,所述目标检测框体中包含有目标图形元素;
根据所述目标图形元素出现在所述目标图像中的位置信息,确定所述目标图形元素所在的区域图像。
第九方面,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
获取目标图像,所述目标图像中包含待检测识别的目标图形元素;
根据所述目标图像,生成与所述目标图像相对应的第一特征图;
根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果;
根据目标检测框体的位置信息和所述第一特征图,确定所述目标图形元素出现在所述目标图像中的位置信息,所述目标检测框体中包含有目标图形元素;
根据所述目标图形元素出现在所述目标图像中的位置信息,确定所述目标图形元素所在的区域图像。
第十方面,本申请实施例还提供一种图形元素类别确定装置,包括:
区域图像确定模块,用于确定目标图像中待确定类别的目标图形元素所在的区域图像;
特征提取模块,用于提取所述区域图像的深层特征表示;
哈希编码模块,用于将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码;
检索模块,用于根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标图形元素的类别,所述哈希编码库中存储有图形元素的元素类别信息与预设哈希编码的对应关系。
第十一方面,本申请实施例还提供一种电子设备,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
确定目标图像中待确定类别的目标图形元素所在的区域图像;
提取所述区域图像的深层特征表示,并将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码;
根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标图形元素的类别,所述哈希编码库中存储有图形元素的元素类别信息与预设哈希编码的对应关系。
第十二方面,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
确定目标图像中待确定类别的目标图形元素所在的区域图像;
提取所述区域图像的深层特征表示,并将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码;
根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标图形元素的类别,所述哈希编码库中存储有图形元素的元素类别信息与预设哈希编码的对应关系。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
本申请实施例给出的技术方案,在获取包含有待检测识别的目标图形元素的目标图像的基础上,根据目标图像,生成与目标图像相对应的第一特征图。进而根据第一特征图进行目标图形元素的检测:生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果。在此基础上,还基于第一特征图进行目标图形元素的识别:根据目标检测框体(包含有目标图形元素的检测框体)的位置信息和第一特征图,确定目标图形元素出现在目标图像中的位置信息,从而能够进一步确定目标图形元素所在的区域图像,完成对目标图形元素的检测和识别。采用这种方式检测识别目标图像中的目标图形元素,利用同一个第一特征图进行目标图形元素的检测和识别,能够有效减少计算量,并且提升端到端的识别精度。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种图形元素类别确定方法的流程示意图;
图2为本申请实施例提供的图形元素类别确定方法中具体过程的流程示意图;
图3为本申请实施例提供的图形元素类别确定方法的又一种流程示意图;
图4为本申请实施例中可采用的元素检测识别模块的结构示意图;
图5为本申请实施例中可采用的元素特征提取模块的结构示意图;
图6为本申请实施例中元素特征提取模块的训练流程示意图;
图7为本申请实施例中图形元素检测识别方法的流程示意图;
图8为本申请实施例中图形元素类别确定装置的结构示意图;
图9为本申请实施例中图形元素检测识别装置的结构示意图;
图10为本申请实施例提供的一种电子设备;
图11为本申请实施例提供的又一种电子设备;
图12为本申请实施例中基于元素检测识别模块确定位置信息的流程示意图;
图13为本申请实施例中训练元素检测识别模块的流程示意图;
图14为本申请实施例中训练元素特征提取模块的流程示意图;
图15为本申请实施例中预训练特征提取单元的流程示意图;
图16为本申请实施例中预训练特征提取单元时采用的训练样本图像的示例。
具体实施方式
为了方便理解本申请实施例,在此先介绍本申请中引入的几个要素。
深度卷积神经网络(Convolutional Neural Network,CNN):是人工神经网络的一种,由一系列卷积层、非线性激活层、池化层、归一化层、全连接层等基本单元连接构成。
损失层(Loss Layer):在训练网络时,通过损失层中定义的损失函数衡量网络输出与真实值之间的误差,输出损失值。
反向传播(Back Propagation):通过回传由损失值计算得到的梯度信息更新网络参数,减少损失层的误差使得网络收敛。
特征映射(Feature Map):由卷积层、池化层、全连接层或网络中的其他层输出的特征表示。
哈希编码(Hash Code):将样本表示成的一串固定长度的二值编码,通常使用0/1或-1/+1表示其中的每个bit。
哈希函数(Hash Function):将样本的高维表示映射到低维的二值空间,使得相似的样本具有相似的二值码,通过Hamming距离度量二值码之间的相似性。
特征图(Feature Map):由卷积层、池化层、全连接层或网络中的其他层输出的特征表示。
超参数(Hyper Parameter):算法框架的参数,与模型参数不同,通常根据经验人工进行设置。
循环神经网络(Recurrent Neural Network,RNN):是一种节点定向连接成环的人工神经网络。这种网络的内部状态可以展示动态时序行为,可以利用它内部的记忆来处理任意的输入序列。
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请实施例所适用的图形元素,可以是文字的字体、乐谱上的标记符号、卡通人物造型等各种图形类元素。采用本申请实施例所提供的图形元素检测识别方法,能够有效减少检测识别出目标图形元素的计算量,并且提升端到端的识别精度。采用本申请实施例所提供的图形元素类别确定方法,能够在识别出目标元素的基础上,进一步确定出这些目标图形元素的类别,满足用户的使用需求。
还需要说明的是,本申请实施例所提供的图形元素检测识别方法和图形元素类别确定方法,既可以分别单独实施,也可以组合实施。例如,在采用图形元素检测识别方法从目标图像中检测识别出目标图形元素后,如果还需要进一步确定目标图形元素的类别信息,可以继而实施图形元素类别确定方法,根据目标图形元素所在的区域图像,确定目标图形元素的类别。又例如,在实施图形元素类别确定方法之前,既可以采用相互独立的元素检测网络和元素识别网络识别出目标图形元素,也可以采用本申请实施例中的图形元素检测识别方法,根据目标图像,确定目标图形元素所在的区域图像。
以下结合附图,详细说明本申请各实施例提供的技术方案。
参见图1所示,本申请实施例提供了一种图形元素类别确定方法,包括:
S001:获取目标图像,目标图像中包含待确定类别的目标图形元素;
S003:根据目标图像,确定目标图形元素所在的区域图像;
S005:根据目标图形元素所在的区域图像,确定目标图形元素的类别。
其中,参见图2所示,步骤S005,根据目标图形元素所在的区域图像,确定目标图形元素的类别的实施,可以具体包括:
S501:提取区域图像的深层特征表示;
S503:将深层特征表示转换为与目标图形元素所对应的哈希编码;
S105:根据目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定目标图形元素的类别;哈希编码库中存储有图形元素的元素类别信息与预设哈希编码的对应关系。
步骤S001~步骤S003的实施,可以采用本申请实施例提供的图形元素检测识别方法,具体的,可以执行步骤S101,利用训练好的元素检测识别模块,确定待确定类别的目标图形元素所在的区域图像,参见图3所示。具体实施时,可以采用图7示例的图形元素检测识别方法的流程进行,后续将举例说明详细的实施过程。
在本申请实施例中,可以理解到,待确定类别的目标图形元素所在的区域图像,可以是多张,也可以是一张,根据用户需求而定。需要说明的是,目标图形元素所在的区域图像中,通常为仅包含通过元素检测识别模块识别出、并且需要确定元素类型信息的目标图形元素本身。例如,若图形元素为文字字体,目标图形元素所在的区域图像可以理解为仅包含某个文字的图像。若用户希望确定某一张文档图像中多个文字的字体,则可将该文档图像作为目标图像输入元素检测识别模块(在此应用场景下,可具体化为文字检测识别模型),以便确定出该文档图像中所有文字所在的区域图像(可以理解到,每张区域图像上仅包含该文档图像中的一个文字)。
后续将结合元素检测识别模块的结构和工作过程示例,详细阐述步骤S101的具体实施过程。
在执行步骤S501~步骤S503时,参见图3所示,可以执行步骤S103,根据区域图像,通过训练好的元素特征提取模块得到目标图形元素所对应的哈希编码;其中,元素特征提取模块用于提取区域图像的深层特征表示,并将深层特征表示转换为与目标图形元素所对应的哈希编码。
在本申请实施例中,可以通过元素特征提取模块,将包含有目标图形元素的区域图像以哈希编码的形式表达,用紧致且有判别性的二值特征反映目标图形元素的类别信息。相对于单纯采用深度卷积神经网络以深层特征表示的形式反映区域图像的特征而言,由于哈希编码具有维度低的特点,利用哈希编码进行检索可以提高检索速度,从而更高效的确定目标图形元素的类别信息。
后续将结合元素特征提取模块的结构和工作过程示例,详细阐述步骤S103的具体实施过程。
S105:根据目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定目标图形元素的类别;哈希编码库中存储有图形元素的元素类别信息与预设哈希编码的对应关系。
可以理解到,在执行步骤S105根据目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索之前,可以采用以下步骤先建立哈希编码库:
获取图形元素数据集合中各类别元素的哈希编码;
将元素类别信息相同的各图形元素的哈希编码的均值,作为与元素类别信息相对应的哈希编码;
将元素类别信息和哈希编码相对应地存储在哈希编码库中。
需要说明的是,所采用的图形元素数据集合中,各图形元素的元素类别信息应该均已进行标注,如此方能成为确定其他图形元素(可以理解为未包含在图形元素数据集合中的图形元素,如步骤S101中待确定类别的目标图形元素)的类别的依据。
另外,能够理解到,在获取图形元素数据集合(可以具体化为字体数据库)中各类别元素的哈希编码时,同样可以借助已训练好的元素特征提取模块,获得图形元素数据集合中各类别图形元素的哈希编码。在此基础上,可以进一步计算同一类图形元素下所有样本(也就是图形元素数据集合中该类图形元素)的哈希编码的均值,显然,这些作为样本的图形元素的元素类别信息相同。具体地,可以采用以下公式进行计算:
其中,bi表示某类共N个图形元素中第i个图形元素的哈希编码,表现为向量、数组形式。通过对均值取正负号即可得到二值化的哈希编码。
在得到计算结果后,将该哈希编码的均值作为与该类图形元素的元素类别信息相对应的预设哈希编码,相对应的存储在哈希编码库中,从而可以在进行检索时根据预设哈希编码找到相对应的元素类别信息。
具体地,在执行步骤S105根据目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索时,可先计算目标图形元素的哈希编码与哈希编码库中的任一预设哈希编码之间的汉明距离。当二者的汉明距离满足一定预设条件,例如小于预设阈值时,可以理解为,目标图形元素的哈希编码与这一预设哈希编码的对应位不同的数量足够少,目标图形元素与该预设哈希编码所对应的元素类别最接近,因而可根据该汉明距离所对应的预设哈希编码确定所对应的元素类别信息,进而根据该预设哈希编码所对应的元素类别信息确定目标图形元素的类别。
能够理解到,当目标图形元素的哈希编码与预设哈希编码之间的汉明距离小于预设阈值时,可能会存在多个满足这一条件的预设哈希编码。此时,可以将所有满足条件的所有或者预设数量个(优选取汉明距离最小的预设数量个)预设哈希编码对应的元素类别信息推送给用户,供用户选择;也可以将使得汉明距离最小的预设哈希编码所对应的元素类别信息作为目标图形元素的类别。
除此之外,根据目标图形元素的哈希编码与预设哈希编码之间的汉明距离确定元素类别信息时,预设条件还可以是汉明距离最小,从而将使得汉明距离最小的预设哈希编码所对应的元素类别信息确定为目标图形元素的类别。
本申请实施例给出的上述实施例,在确定待确定类别的目标图形元素所在的区域图像的基础上,可以利用训练好的元素特征提取模块得到所述目标图形元素所对应的哈希编码。本申请实施例通过将区域图像的高维度的深层特征表示转换为低维度的哈希编码在预设的哈希编码库中进行检索,在节省存储开销的同时提高了检索速度,能够对各种图形类元素进行高精度的检索,提高了文档分析、艺术设计和自动化文档处理等方面的效率。
可以理解到,本申请实施例基于深度卷积神经网络构建元素特征提取模块(可以理解为一种机器学习模型),与人工设计特征相比能够获得图像更深层次的语义特征,使用深度卷积神经网络提取的深层特征表示在目标检测、图像分类和图像分割等方面都表现出了更加优越的性能;同时,哈希编码将图像的高维特征映射到二值空间中,生成一个低维的哈希编码来表示一类样本,降低对存储空间和计算速度的要求。
本申请实施例还提供了一种图形元素检测识别方法,参见图7所示,可以具体包括以下步骤:
S201:获取目标图像,目标图像中包含待检测识别的目标图形元素;
S203:根据目标图像,确定目标图形元素出现在目标图像中的位置信息;
S205:根据目标图形元素出现在目标图像中的位置信息,提取目标图形元素所在的区域图像。
能够理解,上述方法可以利用元素检测识别模块执行。元素检测识别模块的作用,一方面在于对目标图像进行检测,以确定目标图像中是否包含有目标图形元素,并给出目标图像中的位置信息;另一方面,还可以在此基础上进一步识别出目标图像各个位置上出现的是否是目标图形元素,从而能够从目标图像中提取出目标图形元素所在的区域图像。在此基础上,如果需要,可以结合本申请实施例提供的图形元素类别确定方法,进一步确定目标图形元素的类别。
上述用于确定目标图形元素所在的区域图像的元素检测识别模块,可以采用一个用于元素检测和识别(可以具体化为文字的检测和识别)的卷积神经网络。与相关技术中彼此独立的文字检测网络和文字识别网络不同的是,本申请实施例中所采用的元素检测识别模块将文字检测网络和文字识别网络合并到一个统一的框架中,使得两个任务能够共享部分网络层,并且能够进行端到端的统一训练。采用这种方式搭建元素检测识别模块,在有效减少计算量的同时,还能进一步提升端到端的识别精度。与此同时,本申请实施例中还提出一个训练该元素检测识别模块的训练方法,使得训练过程能够更加平稳、高效,从而进一步提高了模型收敛速度和模型识别精度。能够理解,采用本申请实施例中给出的元素检测识别模块及其训练方法,可以构建适用于各种图形元素的具体模型,例如文字检测识别模型等。基于此的文字检测识别模型能够适用于自然场景、扫描文档等多种图像场景下的文字检测和识别,并且能够识别中文、英文等多种语言。以下将举例详细说明。
在一种实施例中,元素检测识别模块中可具体包括图像特征化单元、元素检测单元、区域池化单元和元素识别单元,参见图4所示。其中,可以采用图像特征化单元实现元素检测和识别的前置功能——将图像转化为特征图,可以采用元素检测单元构成元素检测子网络进行元素的检测,将区域池化单元和元素识别单元理解为元素识别子网络中的组成部分以实现元素的识别。
上述元素检测识别模块,提出了一个能够同时进行元素检测、元素识别的神经网络框架,使得元素检测和元素识别两个任务的信息能够相互作用,促进端到端识别精度的提升。同时,能够同时进行元素检测、元素识别模型训练的端到端训练方式,进一步提高模型收敛速度和模型识别精度。并且,元素检测、元素识别两个任务间共享部分网络层的方式,不仅能够在很大程度上减少计算量,并且能够提升端到端的元素识别精度。
以下将结合元素检测识别模块的结构示意图说明步骤S203的具体实施过程。
在执行步骤S203根据目标图像,(通过训练好的元素检测识别模块)确定目标图形元素出现在目标图像中的位置信息时,可具体包括以下步骤,参见图12所示:
步骤S2031:根据目标图像,生成与目标图像相对应的第一特征图。也可以理解为,将目标图像输入图像特征化单元,利用图像特征化单元输出与目标图像相对应的第一特征图。
可以理解到,将待处理的图片(也就是目标图像)输入元素检测识别模块后,首先输入图像特征化单元,经过该单元中一系列的卷积层和池化层处理后,输出相应的特征图。需要说明的是,该部分卷积层和池化层(构成图像特征化单元)即为元素检测和元素识别这两个子网络共享的网络层,该部分输出的特征图即为上述两个子网络共享的特征图,也就是上述“第一特征图”。
步骤S2033,根据第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果。也可以理解为,将第一特征图输入元素检测单元,利用元素检测单元输出根据第一特征图生成的多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果。
需要说明的是,得到的第一特征图(也就是图像特征化单元输出的共享特征图)将分别输入到元素检测和元素识别这两个的子网络中,即图4中虚线框所示。在一种实施例中,对于元素检测子网(具体为元素检测单元),可以采用一种基于全卷积的检测方法R-FCN(Region-based Fully Convolutional Network)实现。该元素检测子网络的输出就是检测到的检测框体、检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果。可以理解到,检测框体通常可以采用矩形框的形式。
参见图4所示,元素检测单元可具体包括区域建议子单元和区域池化子单元。则在具体实施步骤S2033时,可以先将第一特征图输入区域建议子单元,利用区域建议子单元得到检测候选区域的位置信息;然后,将第一特征图和检测候选区域的位置信息输入区域池化子单元,利用区域池化子单元生成预设宽高比的多个检测框体,并确定多个检测框体的位置信息以及各检测框体中是否包含目标图形元素的判别结果。
具体地,本申请实施例利用元素检测单元采用R-FCN方法进行元素检测,该方法可分为两个步骤进行:区域建议和区域分类。相应地,在该检测子网络中,图4中的共享特征图(即第一特征图)将分为两路,一路输入到区域建议网络(Region Proposal Network,简称RPN,也就是上述区域建议子单元)中产生候选区域(相当于得到检测候选区域的位置信息),一路输入到区域池化层中(也就是上述区域池化子单元)输出最终的检测结果,包括对检测候选区域的分类结果和区域坐标回归结果,具体体现为生成预设宽高比的多个检测框体,并确定多个检测框体的位置信息以及各检测框体中是否包含目标图形元素的判别结果。
需要说明的是,上述R-FCN方法是一种具有普适性的物体检测方法,若将本申请实施例应用于文字检测和识别领域,由于文字区域与一般的物体相比,宽高比更具多样性,因此,可将R-FCN方法中预设的待回归区域(即锚矩形,Anchors)的宽高比设置为2:1、5:1和8:1等,以便满足文字检测和识别的需要。此外,为了能够检测出图片中倾斜的文本行,可以在R-FCN方法中预设多角度的待回归区域(即锚矩形,Anchors),并在回归文本行区域坐标时加入角度值的回归。
步骤S2035:根据目标检测框体的位置信息和第一特征图,生成第一特征图中的特征子图。也可以理解为,将目标检测框体的位置信息和第一特征图输入区域池化单元,利用区域池化单元生成第一特征图中的特征子图;目标检测框体中包含有目标图形元素,特征子图与目标检测框体的位置信息相对应。
能够理解到,对于包含有目标图形元素的检测框体(称为目标检测框体),元素识别子网络根据这些目标检测框体及其相关信息,可以利用区域池化单元进一步在共享特征图(即第一特征图)上将相对应目标检测框体的区域提取出来,形成若干的特征子图(特征子图可以理解为对第一特征图上对应于目标检测框体的部分进行尺寸调整后的特征图,因此,特征子图与目标检测框体的位置信息相对应),输入到元素识别单元中。在本申请实施例中,对于元素识别子网,可以采用序列识别的方法卷积递归神经网络CRNN(Convolutional Recurrent Neural Network),对输入的若干特征子图进行识别。因此,在识别过程中,元素识别子网络的输入为图像(具体化为输入到区域池化单元的第一特征图),输出为检测到的目标图形元素所在区域及对应识别出的元素内容(具体化为元素识别单元的输出)。
具体地,实施步骤S2035将目标检测框体的位置信息和第一特征图输入区域池化单元,利用区域池化单元生成第一特征图中的特征子图时,可以先按照预设高度,将第一特征图上对应目标检测框体的区域平均划分为多个网格区域;然后,对每个网格区域内的特征值进行池化操作,得到特征子图;特征子图的高度为预设高度,特征子图的宽高比与目标检测框体的宽高比相同。
具体地,池化操作可以取为平均池化或者最大池化。则相对应地,对每个网格区域内的特征值进行池化操作时,可具体为取网格区域内的特征值的平均值或者最大值,作为特征子图中与网格区域相对应的特征值。
若在文字检测和识别领域实施本申请实施例,对于通过文字检测模块(相当于元素检测单元)检测到的水平或倾斜的文本区域(相当于目标检测框体),需要进行角度矫正(如必要),并处理成相同高度,以便输入到文字识别子网(相当于区域池化单元和元素识别单元构成的元素识别子网络)中进行处理。与相关技术所采用的方法不同的是,在本申请实施例提出的统一框架中,并没有直接在原图(即原始的目标图像本身)上对文本区域(相当于目标检测框体)进行裁剪和大小调整,而是采用区域池化单元在共享特征图(也就是第一特征图)上进行该操作。区域池化单元根据检测得到的矩形框(也就是目标检测框体),在共享的特征图上将相应的区域提取出来,进而生成若干的文本行特征子图。
具体地,对于某一目标检测框体,区域池化单元(可具体化为池化层)将共享特征图上对应区域内的共享特征进行池化操作(例如平均池化或最大池化),按照预设高度H,生成高度固定为H、宽高比不变的特征子图。这里的H是该池化层的超参数,也就是在元素检测识别模块开始训练学习过程之前已经设定数值的参数,不会随着模型的训练学习而改变,对于不同的目标检测框也都固定不变。假设目标检测框的大小为h×w(表示该目标检测框的高度为h,宽度为w),则该池化层将共享特征图上对应该检测框的区域平均划分为H×(w×H)/h个网格区域,每个网格区域的大小为h/H×h/H,然后将每个网络区域内的特征值进行池化计算(例如取平均值或取最大值),最终得到一个大小为H×(w×H)/h的特征子图。能够理解到,经过区域池化单元得到的特征子图的高度为预设高度H,特征子图的宽高比与目标检测框体的宽高比相同。
由此可见,区域池化单元(具体化为区域池化层)能够根据目标检测框体的位置信息,将不同尺寸大小的元素所在区域从神经网络特征图(也就是第一特征图)上提取出来,并能够在保证宽高比的情况下输出固定高度的元素区域特征子图。
本申请实施例提供的元素检测识别模块中,通过设计区域池化单元(可具体化为介于元素检测单元和元素识别单元之间的区域池化层),使得元素识别单元能够和元素检测单元、图像特征化单元一同训练。并且,通过将图像特征化单元输出的共享特征图(即第一特征图)除输出到元素检测单元之外,还直接输出到元素识别单元,因此无需为元素识别单元再进行一次对目标图像生成第一特征图的前向计算,因而能够有效地提高端到端的元素识别速度。
步骤S2037:根据特征子图,确定目标图形元素出现在目标图像中的位置信息。也可以理解为,根据特征子图,利用元素识别单元确定目标图形元素出现在目标图像中的位置信息。
具体地,可以将元素识别单元设计为一个训练好的双向循环神经网络层BRNN(Bidirectional RNN),则实施步骤S2037根据特征子图,利用元素识别单元确定目标图形元素出现在目标图像中的位置信息时,可以利用双向循环神经网络层BRNN确定特征子图的特征序列中每一个位置上的类别概率,并根据类别概率确定目标图形元素出现在目标图像中的位置信息。
需要说明的是,经过区域池化层(相当于区域池化单元),将得到若干特征子图,这些特征子图将输入到一个序列识别网络中进行识别。例如,可以采用卷积递归神经网络CRNN的方法进行识别。通常,该方法利用一个统一的框架同时完成特征提取、序列建模和识别环节。在本申请实施例中,特征提取环节已经通过共享网络(相当于图像特征化单元)完成,因此,区域池化层输出的特征子图可以直接输入到CRNN方法中的序列建模和识别网络中。具体地,可以在池化层(相当于区域池化单元)后接入一个双向的循环神经网络层(Bidirectional RNN)对序列中每一个位置上的类别概率进行预测,再将序列的预测结果转换成具体的元素内容,从而通过元素识别单元能够确定目标图形元素出现在目标图像中的位置信息。
以上举例说明了元素检测识别模块的结构和工作过程。可以理解到,在执行步骤S101根据目标图像,通过训练好的元素检测识别模块确定目标图形元素出现在目标图像中的位置信息之前,还需要训练元素检测识别模块(实质上可理解为一种机器学习模型)。当然,训练模型和使用模型的执行主体,在实际实施本申请实施例时,可以相同,也可以不同。具体地,训练元素检测识别模块的过程可包括以下步骤,参见图13:
S301:根据基于ImageNet图像数据集预训练(可以理解为对图像特征化单元进行初始化)得到的网络初始化图像特征化单元;图像特征化单元用于根据目标图像,生成与目标图像相对应的第一特征图;
S303:采用真实标注的第一目标检测框体的位置信息作为区域池化单元的输入,根据损失函数的计算结果对元素检测识别模块的参数进行调整;区域池化单元用于根据目标检测框体的位置信息和第一特征图,生成第一特征图中的特征子图;
S305:当满足第一预设条件时,采用元素检测单元生成的第二目标检测框体的位置信息(作为区域池化单元的输入),根据损失函数的计算结果对元素检测识别模块的参数进行调整,直至满足第二预设条件。元素检测单元用于根据第一特征图生成的多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果。
本申请实施例中提出的元素检测识别模块的网络框架可以直接进行反向传播计算,以端到端的训练方式进行模型参数优化。为促进训练的平稳进行,优选借助在ImageNet图像数据集上预训练的模型(网络)进行共享网络层(也就是图像特征化单元)的初始化。以元素检测识别模块具体化为文字检测识别模型为例,为促进模型收敛,在端到端的训练过程中,可以首先使用真实标注的文本行区域(相当于目标检测框体所对应的区域)作为文字区域池化层(相当于区域池化层)的输入,对整个模型进行训练。在满足第一预设条件时,例如训练周期达到5个,进一步使用网络框架中文字检测模块生成的检测框作为文字区域池化层的输入,根据损失函数的输出进行后续的迭代优化,直至满足条件。为了进一步提升模型收敛速度,保证训练过程稳定性,优选在该模型中的部分卷积层之后选择性的加入若干批量归一化层(Batch Normalization,简称BN),加入BN层的具体方案可根据需求而定。
进一步地,在训练元素检测识别模块的过程中,可将损失函数取为检测损失函数与连接时序分类损失函数的加权和;其中,检测损失函数用于反映第一目标检测框体与第二目标检测框体的位置信息之间的差异,连接时序分类损失函数用于反映利用元素检测识别模块识别出的目标图形元素构成的序列与真实序列之间的差异。
由于本申请实施例给出的元素检测识别模块整合了元素检测和元素识别这两个功能的子网络,因此,优选采用多任务学习的方法联合优化该统一框架中两个子网络的网络参数。具体地,对于每张输入图像(作为样本输入到图像特征化单元的图像)的整体损失函数定义如下:
其中,i表示一个检测训练批次中每个训练候选区域的索引,j表示一个识别训练批次中每个待训练文本行(相当于目标检测框体)的索引,表示第i个训练区域的检测损失函数,/>表示第j个训练文本行的连接时序分类(Connectionist TemporalClassification,CTC)损失函数,α和β是一个用于权衡两部分损失的超参数,α>0,β>0。具体到本申请实施例中,检测损失函数可取为R-FCN的损失函数。
以上举例介绍了图形元素检测识别方法的实施过程,以及实施该方法可以采用的元素检测识别模块的结构、工作过程以及训练过程。能够理解,在得到目标图形元素所在的区域图像之后,如还需要确定目标图形元素的类别,可以进一步实施本申请实施例提供的图形元素类别确定方法。也可以理解为,在执行步骤S101的基础上,进而执行步骤S103,(利用元素特征提取模块)提取区域图像的深层特征表示,并将高维度的深层特征表示转换为低维度的哈希编码。
可选的,元素特征提取模块可具体包括特征提取单元和哈希编码单元,则可以先将区域图像输入特征提取单元,利用特征提取单元提取区域图像的深层特征表示;然后,将深层特征表示输入哈希编码单元,利用哈希编码单元将深层特征表示转换为与目标图形元素所对应的哈希编码。由于哈希编码具有维度低的特点,采用低维的哈希编码来代表元素的类别并据此确定元素的类别,有利于降低对存储空间和计算速度的要求。
在一种实施例中,可以将深度卷积神经网络与哈希编码相结合,搭建一个包含特征提取单元和哈希编码单元的元素特征提取模块,具体地,可以构建一个能够依据元素的图像生成与元素的图像相对应的、紧致且有判别性的二值哈希编码的深度卷积神经网络。该模型由特征网络(相当于特征提取单元)和哈希网络(相当于哈希编码单元)构成了一个端到端的学习网络,参见图5所示,通过特征表示和哈希函数的学习来挖掘元素数据内在的分布和联系,将每一类元素表示为一个二值哈希编码,编码中的每一位可作为某一种元素字符属性,因此,相似元素间将含有相同元素字符属性的位数较多,也就是相应的哈希编码之间的距离将更小,因而可以通过哈希编码之间的距离度量元素的相似度,进而确定元素的类别。
在具体实施时,使用训练得到的元素特征提取模块(可以是一种深度卷积神经网络),可以对图形元素数据集合中每类元素下的所有训练样本图像生成一系列的二值哈希编码,进而将所有哈希编码的均值作为该类元素的哈希编码表示(相当于记录为预设哈希编码),由此可构建整个图形元素数据集合的哈希编码库。在使用元素特征提取模块进行检索时,可以计算待检索图像(也就是目标图形元素所在的区域图像)的哈希编码与哈希编码库中所有预设哈希编码的汉明距离,将满足一定条件,例如汉明距离小于一定预设阈值的元素类别作为检索候选结果返回。
基于此,本申请实施例在确定图形元素的类别时,一种可选的整体流程可表述如下:
首先使用深度卷积神经网络(相当于特征提取单元)学习元素图像的深层特征表示,并在网络中构建哈希层(相当于哈希编码单元),利用训练的哈希函数对深层特征表示生成二值哈希编码;与此同时,在整个图形元素数据集合上,使用上述网络建立元素的哈希编码库;在此基础上,将待检索元素的图像(相当于目标图形元素所在的区域图像)经过预处理后输入上述网络以得到相对应的哈希编码,继而在整个哈希编码库中检索与该哈希编码的汉明距离小于一定阈值的所有相似元素,最后返回检索结果,确定该元素的类别。
上述进行元素检索确定元素类别的方式,使用深度卷积神经网络免去了人工设计特征提取的过程,通过哈希方法生成待检索元素的紧致且有判别性的二值特征表示,在节省存储开销的同时还能极大提高检索速度,从而可对中英文等不同语言的多类字体、以及乐谱、卡通形象、交通标识等各类图形元素进行高精度的检索,从而有利于提高文档分析、艺术设计、自动化文档处理等多方面业务的作业效率。
可以理解到,在使用上述元素特征提取模块进行检索之前,还需要先训练元素特征提取模块。参见图14所示,训练元素特征提取模块的具体步骤,可以包括:
S401:基于训练样本图像及其所对应的元素类别信息,采用深度卷积神经网络预训练特征提取单元(可以理解为对特征提取单元进行初始化),使得特征提取单元输出训练样本图像的深层特征表示;特征提取单元用于提取区域图像的深层特征表示。
S403:基于经过预训练的特征提取单元输出的深层特征表示,训练哈希编码函数,使得哈希编码函数将高维度的深层特征表示映射到低维度的哈希空间;
S405:将训练好的哈希编码函数写入哈希编码单元中的哈希层,用于将高维度的深层特征表示降维至哈希编码的长度;哈希层的神经元个数与哈希编码的码长相等,所述哈希编码单元用于将深层特征表示转换为与目标图形元素所对应的哈希编码;
S407:根据哈希编码单元输出的哈希编码,计算损失函数,损失函数用于反映第一距离与第二距离之间的差距;第一距离为元素类别信息相同的训练样本图像的哈希编码间的汉明距离,第二距离为元素类别信息不同的训练样本图像的哈希编码间的汉明距离;
S409:根据损失函数的计算结果,调整特征提取单元和哈希编码单元中的参数。
总的来讲,上述元素特征提取模块的训练过程包含三个部分:预训练特征网络(对应步骤S401,特征网络相当于上述特征提取单元),使用哈希方法学习哈希函数(对应步骤S403)和微调整个神经网络(对应步骤S405~S409,整个神经网络包括特征提取单元和哈希编码单元),参见图6所示。
以下将结合图5、图6和图14举例介绍对元素特征提取模块的训练过程。
具体地,在对特征网络进行预训练时,执行步骤S401,基于训练样本图像,采用深度卷积神经网络预训练特征提取单元,使得特征提取单元输出训练样本图像的深层特征表示的步骤。具体可以包括以下步骤,参见图15所示:
S4011:根据特征提取单元输出的目标图像的深层特征表示,计算目标图像属于各类别的概率;目标图像为训练样本图像中任一图像;
S4013:根据训练样本图像中各目标图像属于各类别的概率,计算交叉熵误差函数,得到梯度信息;
S4015:将梯度信息在特征提取单元中反向传播,以调整特征提取单元的参数。
在具体实施时,首先,生成训练样本图像作为训练数据。以训练用于中文字体检索的文字特征提取模型为例,可以使用预制的1411类中文字体格式文件,生成具有多尺度、随机旋转角度和含有随机噪声的5千万张训练图像数据,包含数字、英文和中文共1万种字符,例如图16所示的样本图像。通过构建多尺度、随机旋转角度和含噪声的样本数据集对特征提取单元这一网络模型进行训练,使得特征提取单元能应对不同尺度和一定旋转角度的图像输入,且抗噪声能力强;同时,采用这种样本图像作为训练数据,对样本图像的预处理过程可以非常简单,例如,进行常规的降采样即可直接输入特征提取单元的模型。
在准备训练样本图像的基础上,可以进一步构建实现特征提取单元功能的特征网络,具体地,可以使用深度卷积神经网络,例如VGG网络、残差网络ResNet(全称ResidualNetwork,)、GoogleNet网络等。以下以VGG网络为例介绍特征表示学习的过程。可以理解到,本申请实施例的实施并不限于这种CNN网络。
参见图5所示,可以选取VGG网络全连接层FC7前的所有网络层(包括卷积层和池化层)作为特征网络,构成上述特征提取单元;将分类层FC8的特征映射输入损失层。以Softmax Loss为例(但不限于此种损失层),以xi表示第i个训练样本图像的FC8层特征输出,通过Softmax函数可以得到该训练样本图像属于c类字体的各个概率值:
对于n个训练样本图像,可以采用以下公式计算交叉熵误差函数:
在此基础上得到梯度信息并通过反向传播即可调整特征网络的参数,与特征网络参数实现预训练,其中当且仅当样本i属于类别d时为1,其他情况下均为0,/>是样本i通过Softmax函数计算出的属于类别d的概率。
需要说明的是,在执行步骤S403学习了哈希函数之后,可用哈希表达替换FC7的输出,输出到分类层FC8,作为softmax函数的输入,用softmax函数进行归一化,从而将对类别的判定结果以概率的形式的表达。利用深度卷积神经网络强大的学习能力,提取图像的深层语义特征,可以克服现有相关技术中利用图像人工设计特征而导致特征判别性不强的问题。
执行步骤S403基于经过预训练的特征提取单元输出的深层特征表示,训练哈希编码函数的过程,可以具体包括:
首先,利用哈希编码函数,对特征提取单元输出的深层特征表示进行线性映射,并将线性映射的结果通过符号函数转化为多个二值编码,以将深层特征表示映射到{-1,+1}的二值空间;
然后,根据第三距离和第四距离调整哈希编码函数的参数,使得第三距离和第四距离之间的差距最小;第三距离为元素类别信息相同的任意两个训练样本数据的哈希编码间的汉明距离之和,第四距离为元素类别信息不相同的任意两个训练样本数据的哈希编码间的汉明距离之和。
具体地,采用执行步骤S401预训练得到的特征网络(相当于特征提取单元),将训练样本图像通过其FC7层输出深层特征表示。在训练哈希函数时,哈希函数的学习目标就是要将FC7层输出的深层特征空间映射到{-1,+1}的二值空间。以表示FC7层输出的N个T维的特征数据,执行步骤S403需要学习一组哈希函数对特征数据P进行线性映射,S为哈希编码的码长。可以对映射结果通过符号函数转化为N个码长为S的二值编码,如以下公式所示:
B=sgn(WTP)=[b1,b2,…,bN]∈{-1,+1}S×N
在执行步骤S403训练哈希编码函数的过程中,为了保证训练的哈希编码的质量,需要对哈希编码进行判别性和稳定性约束。
判别性约束是指属于同一类元素的图像特征应该具有相似的哈希编码,属于不同类元素的图像特征的哈希编码应该尽可能的不相似,具体地,通过最小化g(B)来实现判别性约束:
其中,d(bi,bj)表示二值哈希编码之间的汉明距离。可以理解到,上述公式中,用表示第三距离,即元素类别信息相同的任意两个训练样本数据的哈希编码间的汉明距离之和;用/>表示第四距离,即元素类别信息不相同的任意两个训练样本数据的哈希编码间的汉明距离之和。则可通过最小化g(B),使得第三距离和第四距离之间的差距最小,训练哈希编码函数使之满足判别性约束。
由于执行步骤S403学习的哈希函数W是元素特征空间的超平面,学习哈希函数的过程实际上是利用超平面对元素特征空间进行划分的过程,因此可以使用在支持向量机(Support Vector Machine,简称SVM)中成功应用的统计学习理论来指导优化过程。具体来说,也就是在学习超平面的过程中应该保证超平面具有最大间隔(margin),这样能够有效保证二值哈希编码的稳定性。稳定性约束可以体现为以下公式:
其中W为待优化的哈希函数,ξij为第j个样本对第i个超平面wi的松弛变量,μ为惩罚因子,B为上一次迭代更新的二值编码即各个超平面对应的训练标签。通过最小化‖W‖2,可以最大化2/‖W‖,从而达到最大化超平面的最大间隔margin的目的。可以理解到,最大间隔margin越大,分类越稳定。
可以理解到,使用上述定义的两个损失函数(具体化为判别性约束函数和稳定性约束函数)用于哈希函数的迭代学习,以高维特征作为输入,利用元素标签信息监督学习,最后输出高维特征表示对应的低维二值哈希编码。使用哈希方法对元素图像的深层特征生成紧致的二值特征表示,可适用于多种图形元素,例如中英文等不同语言的字体,在节省存储开销的同时还能极大提高检索速度。除此之外,在元素特征提取模块的网络中构建哈希层,可以将图像深层特征学习和哈希函数学习融合为一个整体,能够深度挖掘图像特征表示与哈希编码的内在关系,提高图像检索准确率。
进一步地,执行步骤S405~S409,通过将上述两方面训练得到的特征提取模型(具体化为特征网络)和哈希编码函数进行联调,根据联调网络的损失函数对整个元素特征提取模块的网络参数进行调整,使得所学习到的哈希编码函数适用于做分类,从而更准确的表达元素的特征,更准确地进行元素类别的区分。
具体地,可以在预训练的特征网络(相当于特征提取单元)后面构建神经元个数为码长S的全连接层,也就是哈希层,参见图5所示,并将执行步骤S403学习得到的哈希编码函数写入该哈希层,用于将FC7层的输出特征(高维度的深度特征表示)从4096维降低至目标哈希编码的长度,因此哈希层的神经元个数与哈希编码的长度相同。在此基础上,在哈希层后面添加双曲正切激活层(Tanh),与哈希层共同组成哈希网络(相当于哈希编码单元),参见图5所示,用于将网络连续的特征输出映射到(-1,+1)范围内。
在对整个元素特征提取模块进行联调时,可定义损失函数为三元排序损失函数,使用三元排序损失(Triplet ranking Loss)对整个网络进行优化调整。具体地,可以根据哈希编码单元输出的哈希编码,计算损失函数,可包括以下步骤:
根据训练样本图像及其所对应的元素类别信息,确定图像三元组;其中,图像三元组中第一张图像和第二张图像的元素类别信息相同,第一张图像和第三张图像的元素类别信息不同;
根据第五距离以及第六距离,计算三元排序损失函数;第五距离为第一张图像与第二张图像的哈希编码间的汉明距离,第六距离为第一张图像与第三张图像的哈希编码间的汉明距离;
则执行步骤S409根据损失函数的计算结果,调整特征提取单元和哈希编码单元中的参数时,可具体包括:
根据损失函数的计算结果,调整特征提取单元和哈希编码单元中的参数,使得对任意训练样本图像,第五距离小于第六距离。
更具体地,上述三元排序损失函数可以表示为:
其中,使用三张训练样本图像构成的图像三元组(p,p+,p-)进行训练。在三元组中,第一张图像p和第二张图像p+为同一类别的样本,而第一张图像p和第三张图像p-为不同类别的样本。基于三元组的损失函数的训练目标是在训练得到的Hamming空间(汉明空间)中,设置正阈值ζ使得相似样本间的距离小于不相似样本间的距离,也就是第一张图像p与第二张图像p+的哈希编码间的汉明距离(记为第五距离)小于第一张图像p与第三张图像p-的哈希编码间的汉明距离(记为第六距离)。
可以理解到,通过执行步骤S405~S409的网络微调,使元素特征表示和哈希函数的学习过程有机结合,在统一框架下同时优化二者。将三元组排序损失加入深度卷积神经网络的损失层,不仅加强了神经网络的特征学习能力,也有效降低哈希函数中的二值化造成的量化误差,增强了哈希编码的表达能力。
以上着重阐述了图形元素类别确定方法实施中的各方面内容。
以图形元素具体化为文字字体为例。海量的文档图像中包含了上百种语言和上千种不同种类的字体。以中文为例,由于中文具有字符种类多、字体规模大、结构相似性高等特点,因此,尽管采用光学字符识别技术(OCR)已经能够在一定程度上对文档图像的文字内容进行识别,但是,却无法识别文本图像中文字的字体等外在表现形式上的属性信息,从而也影响了对文字内容识别的准确性。除此之外,在某些应用场景中,也需要获取文档图像中所采用的字体类别信息进行业务处理或决策。
因此,采用本申请实施例提供的图形元素类别确定方法,能够在获取包含有待确定类别的目标图形元素的目标图像的基础上,确定目标图形元素所在的区域图像,并进而确定目标图形元素的类别。具体地,可以将区域图像的高维度的深层特征表示转换为低维度的哈希编码在预设的哈希编码库中进行检索,从而在节省存储开销的同时提高了检索速度,能够对各种图形类元素进行高精度的检索,提高了文档分析、艺术设计和自动化文档处理等方面的效率。
当图形元素具体化为汉字字体时,本申请实施例提供的图形元素类别确定方法具体化为一种汉字字体类别确定方法,该方法可以包括:
确定目标图像中待确定类别的目标汉字字体所在的区域图像;
提取区域图像的深层特征表示,并将深层特征表示转换为与目标汉字字体所对应的哈希编码;
根据目标汉字字体所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定目标汉字字体的类别;哈希编码库中存储有汉字字体的元素类别信息与预设哈希编码的对应关系。
能够理解到,前述图形元素类别确定方法的实施例中的相关描述均适用于本汉字字体类别确定方法,此处不再赘述。
当图形元素具体化为文字字体时,本申请实施例提供的图形元素类别确定方法具体化为一种文字字体类别确定方法,该方法可以包括:
确定目标图像中待确定类别的目标文字字体所在的区域图像;
提取区域图像的深层特征表示,并将深层特征表示转换为与目标文字字体所对应的哈希编码;
根据目标文字字体所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定目标文字字体的类别;哈希编码库中存储有文字字体的元素类别信息与预设哈希编码的对应关系。
能够理解到,前述图形元素类别确定方法的实施例中的相关描述均适用于本文字字体类别确定方法,此处不再赘述。
当图形元素具体化为汉字字体时,本申请实施例提供的图形元素检测识别方法具体化为一种汉字字体检测识别方法,该方法可以包括:
获取目标图像,目标图像中包含待检测识别的目标汉字字体;
根据目标图像,生成与目标图像相对应的第一特征图;
根据第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标汉字字体的判别结果;
根据目标检测框体的位置信息和第一特征图,确定目标汉字字体出现在目标图像中的位置信息,目标检测框体中包含有目标汉字字体;
根据目标汉字字体出现在目标图像中的位置信息,确定目标汉字字体所在的区域图像。
能够理解到,前述图形元素检测识别方法的实施例中的相关描述均适用于本汉字字体检测识别方法,此处不再赘述。
当图形元素具体化为文字字体时,本申请实施例提供的图形元素检测识别方法具体化为一种文字字体检测识别方法,该方法可以包括:
获取目标图像,目标图像中包含待检测识别的目标文字字体;
根据目标图像,生成与目标图像相对应的第一特征图;
根据第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标文字字体的判别结果;
根据目标检测框体的位置信息和第一特征图,确定目标文字字体出现在目标图像中的位置信息,目标检测框体中包含有目标文字字体;
根据目标文字字体出现在目标图像中的位置信息,确定目标文字字体所在的区域图像。
能够理解到,前述图形元素检测识别方法的实施例中的相关描述均适用于本文字字体检测识别方法,此处不再赘述。
本申请实施例还提供一种图形元素类别确定装置,与图1所示实施例中图形元素类别确定方法相对应,参见图8所示,该装置包括:
区域图像确定模块101,用于确定目标图像中待确定类别的目标图形元素所在的区域图像;
特征提取模块103,用于提取区域图像的深层特征表示;可以理解到,特征提取模块103能够实现前述实施例中特征提取单元的功能;
哈希编码模块105,用于将深层特征表示转换为与目标图形元素所对应的哈希编码;可以理解到,哈希编码模块105能够实现前述实施例中哈希编码单元的功能;
检索模块107,用于根据目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定目标图形元素的类别,哈希编码库中存储有图形元素的元素类别信息与预设哈希编码的对应关系。
能够理解,关于图形元素类别确定方法的实施的相关描述,均适用于图形元素类别确定装置,此处不再赘述。
图10是本申请的一个实施例电子设备的结构示意图。请参考图10,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成图形元素类别确定装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
确定目标图像中待确定类别的目标图形元素所在的区域图像;
提取所述区域图像的深层特征表示,并将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码;
根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标图形元素的类别,所述哈希编码库中存储有图形元素的元素类别信息与预设哈希编码的对应关系。
上述如本申请图1所示实施例揭示的图形元素类别确定装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
该电子设备还可执行图1中图形元素类别确定装置执行的方法,并实现图形元素类别确定装置在图1所示实施例的功能,本申请实施例在此不再赘述。
本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行图1所示实施例中图形元素类别确定装置执行的方法,并具体用于执行:
确定目标图像中待确定类别的目标图形元素所在的区域图像;
提取所述区域图像的深层特征表示,并将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码;
根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标图形元素的类别,所述哈希编码库中存储有图形元素的元素类别信息与预设哈希编码的对应关系。
本申请实施例还提供一种图形元素检测识别装置,与图7所述实施例中的图形元素检测识别方法相对应,参见图9所示,包括:
目标图像获取模块201,用于获取目标图像,目标图像中包含待检测识别的目标图形元素;
特征图生成模块203,用于根据目标图像,生成与目标图像相对应的第一特征图;可以理解到,特征图生成模块203能够实现前述实施例中图像特征化单元的功能;
元素检测模块205,用于根据第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果;可以理解到,元素检测模块205能够实现前述实施例中元素检测单元的功能;
元素识别模块207,用于根据目标检测框体的位置信息和第一特征图,确定目标图形元素出现在目标图像中的位置信息,目标检测框体中包含有目标图形元素;可以理解到,元素识别模块207能够实现前述实施例中区域池化单元的功能,并能够根据区域池化单元输出的特征子图,确定所述目标图形元素出现在所述目标图像中的位置信息;
区域图像提取确定模块209,用于根据目标图形元素出现在目标图像中的位置信息,确定目标图形元素所在的区域图像。
能够理解,关于图形元素检测识别方法的实施的相关描述,均适用于图形元素检测识别装置,此处不再赘述。
图11是本申请的一个实施例电子设备的结构示意图。请参考图11,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成图形元素检测识别装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
获取目标图像,所述目标图像中包含待检测识别的目标图形元素;
根据所述目标图像,生成与所述目标图像相对应的第一特征图;
根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果;
根据目标检测框体的位置信息和所述第一特征图,确定所述目标图形元素出现在所述目标图像中的位置信息,所述目标检测框体中包含有目标图形元素;
根据所述目标图形元素出现在所述目标图像中的位置信息,确定所述目标图形元素所在的区域图像。
上述如本申请图7所示实施例揭示的图形元素检测识别装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
该电子设备还可执行图7中图形元素检测识别装置执行的方法,并实现图形元素检测识别装置在图7所示实施例的功能,本申请实施例在此不再赘述。
本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行图7所示实施例中图形元素检测识别装置执行的方法,并具体用于执行:
获取目标图像,所述目标图像中包含待检测识别的目标图形元素;
根据所述目标图像,生成与所述目标图像相对应的第一特征图;
根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果;
根据目标检测框体的位置信息和所述第一特征图,确定所述目标图形元素出现在所述目标图像中的位置信息,所述目标检测框体中包含有目标图形元素;
根据所述目标图形元素出现在所述目标图像中的位置信息,确定所述目标图形元素所在的区域图像。
需要说明的是,本申请实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。本申请对此不做限定。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (31)
1.一种图形元素检测识别方法,其特征在于,包括:
获取目标图像,所述目标图像中包含待检测识别的目标图形元素;
根据所述目标图像,生成与所述目标图像相对应的第一特征图;
根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果;
根据目标检测框体的位置信息和所述第一特征图,确定所述目标图形元素出现在所述目标图像中的位置信息,所述目标检测框体中包含有目标图形元素;
根据所述目标图形元素出现在所述目标图像中的位置信息,确定所述目标图形元素所在的区域图像;
提取所述区域图像的深层特征表示,并将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码;
根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标图形元素的类别;
所述方法还包括:
基于训练样本图像及其所对应的元素类别信息,对特征提取单元进行初始化,使得所述特征提取单元输出所述训练样本图像的深层特征表示;
基于初始化的特征提取单元输出的深层特征表示,训练哈希编码函数,使得所述哈希编码函数将高维度的所述深层特征表示映射到低维度的哈希空间;
将训练好的所述哈希编码函数写入哈希编码单元,用于将高维度的所述深层特征表示降维至所述哈希编码的长度;
根据所述哈希编码单元输出的哈希编码,计算损失函数;
根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数。
2.根据权利要求1所述方法,其特征在于,根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果,包括:
根据所述第一特征图,确定得到检测候选区域的位置信息;
根据所述第一特征图和所述检测候选区域的位置信息,生成预设宽高比的多个检测框体,并确定所述多个检测框体的位置信息以及各检测框体中是否包含目标图形元素的判别结果。
3.根据权利要求1所述方法,其特征在于,根据目标检测框体的位置信息和所述第一特征图,确定所述目标图形元素出现在所述目标图像中的位置信息包括:
根据目标检测框体的位置信息和所述第一特征图,生成所述第一特征图中的特征子图,所述特征子图与所述目标检测框体的位置信息相对应;
根据所述特征子图,确定所述目标图形元素出现在所述目标图像中的位置信息。
4.根据权利要求3所述方法,其特征在于,根据目标检测框体的位置信息和所述第一特征图,生成所述第一特征图中的特征子图,包括:
按照预设高度,将所述第一特征图上对应所述目标检测框体的区域平均划分为多个网格区域;
对每个网格区域内的特征值进行池化操作,得到所述特征子图;所述特征子图的高度为所述预设高度,所述特征子图的宽高比与所述目标检测框体的宽高比相同。
5.根据权利要求4所述方法,其特征在于,所述池化操作为平均池化或者最大池化;
则对每个网格区域内的特征值进行池化操作,具体为:
取网格区域内的特征值的平均值或者最大值,作为所述特征子图中与所述网格区域相对应的特征值。
6.根据权利要求3所述方法,其特征在于,根据所述特征子图,确定所述目标图形元素出现在所述目标图像中的位置信息,包括:
根据所述特征子图,利用双向循环神经网络层BRNN确定所述特征子图的特征序列中每一个位置上的类别概率,并根据所述类别概率确定所述目标图形元素出现在所述目标图像中的位置信息。
7.根据权利要求3~6之任一所述方法,其特征在于,
根据所述目标图像,生成与所述目标图像相对应的第一特征图的步骤,由图像特征化单元执行;
根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果的步骤,由元素检测单元执行;
根据目标检测框体的位置信息和所述第一特征图,生成所述第一特征图中的特征子图的步骤,由区域池化单元执行;
所述图像特征化单元、所述元素检测单元和所述区域池化单元构成元素检测识别模块。
8.根据权利要求7所述方法,其特征在于,所述方法还包括:
基于ImageNet图像数据集,训练所述图像特征化单元;
采用真实标注的第一目标检测框体的位置信息作为所述区域池化单元的输入,根据损失函数的计算结果对所述元素检测识别模块的参数进行调整;
当满足第一预设条件时,采用所述元素检测单元生成第二目标检测框体的位置信息,根据所述损失函数的计算结果对所述元素检测识别模块的参数进行调整,直至满足第二预设条件。
9.根据权利要求8所述方法,其特征在于,所述损失函数为检测损失函数与连接时序分类损失函数的加权和;其中,所述检测损失函数用于反映所述第一目标检测框体与所述第二目标检测框体的位置信息之间的差异,所述连接时序分类损失函数用于反映利用所述元素检测识别模块识别出的目标图形元素构成的序列与真实序列之间的差异。
10.根据权利要求1所述方法,其特征在于,
提取所述区域图像的深层特征表示的步骤,由特征提取单元执行;
将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码的步骤,由哈希编码单元执行;
所述特征提取单元和所述哈希编码单元构成元素特征提取模块。
11.根据权利要求1所述方法,其特征在于,所述损失函数用于反映第一距离与第二距离之间的差距;所述第一距离为元素类别信息相同的训练样本图像的哈希编码间的汉明距离,所述第二距离为元素类别信息不同的训练样本图像的哈希编码间的汉明距离;
所述将训练好的所述哈希编码函数写入哈希编码单元中,包括:
将训练好的所述哈希编码函数写入哈希编码单元中的哈希层,所述哈希层的神经元个数与所述哈希编码的码长相等。
12.根据权利要求11所述方法,其特征在于,基于训练样本图像及其所对应的元素类别信息,对所述特征提取单元进行初始化,包括:
根据所述特征提取单元输出的目标图像的深层特征表示,计算所述目标图像属于各类别的概率,所述目标图像为所述训练样本图像中任一图像;
根据所述训练样本图像中各目标图像属于各类别的概率,计算交叉熵误差函数,得到梯度信息;
将所述梯度信息在所述特征提取单元中反向传播,以调整所述特征提取单元的参数。
13.根据权利要求11所述方法,其特征在于,基于初始化的所述特征提取单元输出的深层特征表示,训练哈希编码函数,包括:
采用哈希编码函数,对所述特征提取单元输出的深层特征表示进行线性映射,并将线性映射的结果通过符号函数转化为多个二值编码,以将所述深层特征表示映射到{-1,+1}的二值空间;
根据第三距离和第四距离调整所述哈希编码函数的参数,使得所述第三距离和第四距离之间的差距最小;所述第三距离为元素类别信息相同的任意两个训练样本数据的哈希编码间的汉明距离之和,所述第四距离为元素类别信息不相同的任意两个训练样本数据的哈希编码间的汉明距离之和。
14.根据权利要求11所述方法,其特征在于,所述损失函数为三元排序损失函数;
则根据所述哈希编码单元输出的哈希编码,计算损失函数,包括:
根据所述训练样本图像及其所对应的元素类别信息,确定图像三元组;其中,所述图像三元组中第一张图像和第二张图像的元素类别信息相同,第一张图像和第三张图像的元素类别信息不同;
根据第五距离以及第六距离,计算所述三元排序损失函数;所述第五距离为第一张图像与第二张图像的哈希编码间的汉明距离,所述第六距离为第一张图像与第三张图像的哈希编码间的汉明距离;
则根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数,包括:
根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数,使得对任意所述训练样本图像,所述第五距离小于所述第六距离。
15.根据权利要求1所述方法,其特征在于,在根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索之前,所述方法还包括:
建立所述哈希编码库;
所述建立所述哈希编码库的步骤,包括:
获取图形元素数据集合中各类别元素的哈希编码;
将元素类别信息相同的各图形元素的哈希编码的均值,作为与元素类别信息相对应的预设哈希编码;
将所述元素类别信息和所述预设哈希编码相对应地存储在所述哈希编码库中。
16.根据权利要求1所述方法,其特征在于,根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,包括:
计算所述目标图形元素的哈希编码与所述哈希编码库中的任一预设哈希编码之间的汉明距离;
则根据满足预设条件的元素类别信息确定所述目标图形元素的类别,包括:
当所述汉明距离小于预设阈值时,根据该汉明距离所对应的预设哈希编码确定所对应的元素类别信息;
将该预设哈希编码所对应的元素类别信息确定为所述目标图形元素的类别。
17.根据权利要求1~6、8~16之任一所述方法,其特征在于,所述目标图形元素具体化为文字字体。
18.一种图形元素类别确定方法,其特征在于,包括:
确定目标图像中待确定类别的目标图形元素所在的区域图像;
提取所述区域图像的深层特征表示,并将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码;
根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标图形元素的类别,所述哈希编码库中存储有图形元素的元素类别信息与预设哈希编码的对应关系;
所述方法还包括:
基于训练样本图像及其所对应的元素类别信息,对特征提取单元进行初始化,使得所述特征提取单元输出所述训练样本图像的深层特征表示;
基于初始化的特征提取单元输出的深层特征表示,训练哈希编码函数,使得所述哈希编码函数将高维度的所述深层特征表示映射到低维度的哈希空间;
将训练好的所述哈希编码函数写入哈希编码单元中的哈希层,用于将高维度的所述深层特征表示降维至所述哈希编码的长度,所述哈希层的神经元个数与所述哈希编码的码长相等;
根据所述哈希编码单元输出的哈希编码,计算损失函数,所述损失函数用于反映第一距离与第二距离之间的差距;所述第一距离为元素类别信息相同的训练样本图像的哈希编码间的汉明距离,所述第二距离为元素类别信息不同的训练样本图像的哈希编码间的汉明距离;
根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数。
19.根据权利要求18所述方法,其特征在于,
提取所述区域图像的深层特征表示的步骤,由特征提取单元执行;
将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码的步骤,由哈希编码单元执行;
所述特征提取单元和所述哈希编码单元构成元素特征提取模块。
20.根据权利要求18所述方法,其特征在于,基于训练样本图像及其所对应的元素类别信息,对所述特征提取单元进行初始化,包括:
根据所述特征提取单元输出的目标图像的深层特征表示,计算所述目标图像属于各类别的概率,所述目标图像为所述训练样本图像中任一图像;
根据所述训练样本图像中各目标图像属于各类别的概率,计算交叉熵误差函数,得到梯度信息;
将所述梯度信息在所述特征提取单元中反向传播,以调整所述特征提取单元的参数。
21.根据权利要求18所述方法,其特征在于,基于初始化的所述特征提取单元输出的深层特征表示,训练哈希编码函数,包括:
采用哈希编码函数,对所述特征提取单元输出的深层特征表示进行线性映射,并将线性映射的结果通过符号函数转化为多个二值编码,以将所述深层特征表示映射到{-1,+1}的二值空间;
根据第三距离和第四距离调整所述哈希编码函数的参数,使得所述第三距离和第四距离之间的差距最小;所述第三距离为元素类别信息相同的任意两个训练样本数据的哈希编码间的汉明距离之和,所述第四距离为元素类别信息不相同的任意两个训练样本数据的哈希编码间的汉明距离之和。
22.根据权利要求18所述方法,其特征在于,所述损失函数为三元排序损失函数;
则根据所述哈希编码单元输出的哈希编码,计算损失函数,包括:
根据所述训练样本图像及其所对应的元素类别信息,确定图像三元组;其中,所述图像三元组中第一张图像和第二张图像的元素类别信息相同,第一张图像和第三张图像的元素类别信息不同;
根据第五距离以及第六距离,计算所述三元排序损失函数;所述第五距离为第一张图像与第二张图像的哈希编码间的汉明距离,所述第六距离为第一张图像与第三张图像的哈希编码间的汉明距离;
则根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数,包括:
根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数,使得对任意所述训练样本图像,所述第五距离小于所述第六距离。
23.根据权利要求18所述方法,其特征在于,在根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索之前,所述方法还包括:
建立所述哈希编码库;
所述建立所述哈希编码库的步骤,包括:
获取图形元素数据集合中各类别元素的哈希编码;
将元素类别信息相同的各图形元素的哈希编码的均值,作为与元素类别信息相对应的预设哈希编码;
将所述元素类别信息和所述预设哈希编码相对应地存储在所述哈希编码库中。
24.根据权利要求18所述方法,其特征在于,根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,包括:
计算所述目标图形元素的哈希编码与所述哈希编码库中的任一预设哈希编码之间的汉明距离;
则根据满足预设条件的元素类别信息确定所述目标图形元素的类别,包括:
当所述汉明距离小于预设阈值时,根据该汉明距离所对应的预设哈希编码确定所对应的元素类别信息;
将该预设哈希编码所对应的元素类别信息确定为所述目标图形元素的类别。
25.根据权利要求18~24之任一所述方法,其特征在于,所述目标图形元素具体化为文字字体。
26.一种图形元素检测识别装置,其特征在于,包括:
目标图像获取模块,用于获取目标图像,所述目标图像中包含待检测识别的目标图形元素;
特征图生成模块,用于根据所述目标图像,生成与所述目标图像相对应的第一特征图;
元素检测模块,用于根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果;
元素识别模块,用于根据目标检测框体的位置信息和所述第一特征图,确定所述目标图形元素出现在所述目标图像中的位置信息,所述目标检测框体中包含有目标图形元素;
区域图像确定模块,用于根据所述目标图形元素出现在所述目标图像中的位置信息,确定所述目标图形元素所在的区域图像;
特征提取模块,用于提取所述区域图像的深层特征表示;
哈希编码模块,用于将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码;
检索模块,用于根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标图形元素的类别,所述哈希编码库中存储有图形元素的元素类别信息与预设哈希编码的对应关系;
训练元素特征提取模块,用于基于训练样本图像及其所对应的元素类别信息,对特征提取单元进行初始化,使得所述特征提取单元输出所述训练样本图像的深层特征表示;
基于初始化的特征提取单元输出的深层特征表示,训练哈希编码函数,使得所述哈希编码函数将高维度的所述深层特征表示映射到低维度的哈希空间;
将训练好的所述哈希编码函数写入哈希编码单元中,用于将高维度的所述深层特征表示降维至所述哈希编码的长度;
根据所述哈希编码单元输出的哈希编码,计算损失函数;
根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数。
27.一种电子设备,其特征在于,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
获取目标图像,所述目标图像中包含待检测识别的目标图形元素;
根据所述目标图像,生成与所述目标图像相对应的第一特征图;
根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果;
根据目标检测框体的位置信息和所述第一特征图,确定所述目标图形元素出现在所述目标图像中的位置信息,所述目标检测框体中包含有目标图形元素;
根据所述目标图形元素出现在所述目标图像中的位置信息,确定所述目标图形元素所在的区域图像;
提取所述区域图像的深层特征表示,并将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码;
根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标图形元素的类别;以及
基于训练样本图像及其所对应的元素类别信息,对特征提取单元进行初始化,使得所述特征提取单元输出所述训练样本图像的深层特征表示;
基于初始化的特征提取单元输出的深层特征表示,训练哈希编码函数,使得所述哈希编码函数将高维度的所述深层特征表示映射到低维度的哈希空间;
将训练好的所述哈希编码函数写入哈希编码单元中,用于将高维度的所述深层特征表示降维至所述哈希编码的长度;
根据所述哈希编码单元输出的哈希编码,计算损失函数;
根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数。
28.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
获取目标图像,所述目标图像中包含待检测识别的目标图形元素;
根据所述目标图像,生成与所述目标图像相对应的第一特征图;
根据所述第一特征图,生成多个检测框体的位置信息、以及各检测框体中是否包含目标图形元素的判别结果;
根据目标检测框体的位置信息和所述第一特征图,确定所述目标图形元素出现在所述目标图像中的位置信息,所述目标检测框体中包含有目标图形元素;
根据所述目标图形元素出现在所述目标图像中的位置信息,确定所述目标图形元素所在的区域图像;
提取所述区域图像的深层特征表示,并将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码;
根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标图形元素的类别;以及
基于训练样本图像及其所对应的元素类别信息,对特征提取单元进行初始化,使得所述特征提取单元输出所述训练样本图像的深层特征表示;
基于初始化的特征提取单元输出的深层特征表示,训练哈希编码函数,使得所述哈希编码函数将高维度的所述深层特征表示映射到低维度的哈希空间;
将训练好的所述哈希编码函数写入哈希编码单元中,用于将高维度的所述深层特征表示降维至所述哈希编码的长度;
根据所述哈希编码单元输出的哈希编码,计算损失函数;
根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数。
29.一种图形元素类别确定装置,其特征在于,包括:
区域图像确定模块,用于确定目标图像中待确定类别的目标图形元素所在的区域图像;
特征提取模块,用于提取所述区域图像的深层特征表示;
哈希编码模块,用于将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码;
检索模块,用于根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标图形元素的类别,所述哈希编码库中存储有图形元素的元素类别信息与预设哈希编码的对应关系;
训练元素特征提取模块,用于基于训练样本图像及其所对应的元素类别信息,对特征提取单元进行初始化,使得所述特征提取单元输出所述训练样本图像的深层特征表示;
基于初始化的特征提取单元输出的深层特征表示,训练哈希编码函数,使得所述哈希编码函数将高维度的所述深层特征表示映射到低维度的哈希空间;
将训练好的所述哈希编码函数写入哈希编码单元中的哈希层,用于将高维度的所述深层特征表示降维至所述哈希编码的长度,所述哈希层的神经元个数与所述哈希编码的码长相等;
根据所述哈希编码单元输出的哈希编码,计算损失函数,所述损失函数用于反映第一距离与第二距离之间的差距;所述第一距离为元素类别信息相同的训练样本图像的哈希编码间的汉明距离,所述第二距离为元素类别信息不同的训练样本图像的哈希编码间的汉明距离;
根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数。
30.一种电子设备,其特征在于,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
确定目标图像中待确定类别的目标图形元素所在的区域图像;
提取所述区域图像的深层特征表示,并将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码;
根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标图形元素的类别,所述哈希编码库中存储有图形元素的元素类别信息与预设哈希编码的对应关系;
基于训练样本图像及其所对应的元素类别信息,对特征提取单元进行初始化,使得所述特征提取单元输出所述训练样本图像的深层特征表示;
基于初始化的特征提取单元输出的深层特征表示,训练哈希编码函数,使得所述哈希编码函数将高维度的所述深层特征表示映射到低维度的哈希空间;
将训练好的所述哈希编码函数写入哈希编码单元中的哈希层,用于将高维度的所述深层特征表示降维至所述哈希编码的长度,所述哈希层的神经元个数与所述哈希编码的码长相等;
根据所述哈希编码单元输出的哈希编码,计算损失函数,所述损失函数用于反映第一距离与第二距离之间的差距;所述第一距离为元素类别信息相同的训练样本图像的哈希编码间的汉明距离,所述第二距离为元素类别信息不同的训练样本图像的哈希编码间的汉明距离;
根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数。
31.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
确定目标图像中待确定类别的目标图形元素所在的区域图像;
提取所述区域图像的深层特征表示,并将所述深层特征表示转换为与所述目标图形元素所对应的哈希编码;
根据所述目标图形元素所对应的哈希编码,在预先建立的哈希编码库中进行检索,根据满足预设条件的元素类别信息确定所述目标图形元素的类别,所述哈希编码库中存储有图形元素的元素类别信息与预设哈希编码的对应关系;
基于训练样本图像及其所对应的元素类别信息,对特征提取单元进行初始化,使得所述特征提取单元输出所述训练样本图像的深层特征表示;
基于初始化的特征提取单元输出的深层特征表示,训练哈希编码函数,使得所述哈希编码函数将高维度的所述深层特征表示映射到低维度的哈希空间;
将训练好的所述哈希编码函数写入哈希编码单元中的哈希层,用于将高维度的所述深层特征表示降维至所述哈希编码的长度,所述哈希层的神经元个数与所述哈希编码的码长相等;
根据所述哈希编码单元输出的哈希编码,计算损失函数,所述损失函数用于反映第一距离与第二距离之间的差距;所述第一距离为元素类别信息相同的训练样本图像的哈希编码间的汉明距离,所述第二距离为元素类别信息不同的训练样本图像的哈希编码间的汉明距离;
根据所述损失函数的计算结果,调整所述特征提取单元和所述哈希编码单元中的参数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810315013.6A CN110363049B (zh) | 2018-04-10 | 2018-04-10 | 图形元素检测识别和类别确定的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810315013.6A CN110363049B (zh) | 2018-04-10 | 2018-04-10 | 图形元素检测识别和类别确定的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110363049A CN110363049A (zh) | 2019-10-22 |
CN110363049B true CN110363049B (zh) | 2024-01-12 |
Family
ID=68212909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810315013.6A Active CN110363049B (zh) | 2018-04-10 | 2018-04-10 | 图形元素检测识别和类别确定的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110363049B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111460958B (zh) * | 2020-03-26 | 2023-05-05 | 暗物智能科技(广州)有限公司 | 一种物体检测器构建、物体检测方法及系统 |
CN111444917A (zh) * | 2020-03-30 | 2020-07-24 | 合肥京东方显示技术有限公司 | 车牌字符识别方法、装置、电子设备和存储介质 |
CN111291738A (zh) * | 2020-05-09 | 2020-06-16 | 支付宝(杭州)信息技术有限公司 | 前端页面图像中的元素提取方法、装置及电子设备 |
CN111783889B (zh) * | 2020-07-03 | 2022-03-01 | 北京字节跳动网络技术有限公司 | 图像识别方法、装置、电子设备和计算机可读介质 |
CN112926420B (zh) * | 2021-02-09 | 2022-11-08 | 海信视像科技股份有限公司 | 一种显示设备和菜单文字识别方法 |
CN113128604A (zh) * | 2021-04-23 | 2021-07-16 | 北京奇艺世纪科技有限公司 | 页面元素的识别方法、装置、电子设备及存储介质 |
CN115035314A (zh) * | 2022-06-15 | 2022-09-09 | 支付宝(杭州)信息技术有限公司 | 网络模型的训练、图像特征的确定方法及装置 |
CN115082739B (zh) * | 2022-07-01 | 2023-09-01 | 苏州慧维智能医疗科技有限公司 | 基于卷积神经网络的内窥镜评估方法及评估系统 |
CN115272764A (zh) * | 2022-07-28 | 2022-11-01 | 东方晶源微电子科技(北京)有限公司 | 允许位置偏差的图形分组方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106649688A (zh) * | 2016-12-16 | 2017-05-10 | 深圳市华尊科技股份有限公司 | 一种图像检索方法及终端 |
CN107203606A (zh) * | 2017-05-17 | 2017-09-26 | 西北工业大学 | 基于卷积神经网络的自然场景下文本检测与识别方法 |
CN107220614A (zh) * | 2017-05-24 | 2017-09-29 | 北京小米移动软件有限公司 | 图像识别方法、装置及计算机可读存储介质 |
US20180025256A1 (en) * | 2015-10-20 | 2018-01-25 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for recognizing character string in image |
-
2018
- 2018-04-10 CN CN201810315013.6A patent/CN110363049B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180025256A1 (en) * | 2015-10-20 | 2018-01-25 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for recognizing character string in image |
CN106649688A (zh) * | 2016-12-16 | 2017-05-10 | 深圳市华尊科技股份有限公司 | 一种图像检索方法及终端 |
CN107203606A (zh) * | 2017-05-17 | 2017-09-26 | 西北工业大学 | 基于卷积神经网络的自然场景下文本检测与识别方法 |
CN107220614A (zh) * | 2017-05-24 | 2017-09-29 | 北京小米移动软件有限公司 | 图像识别方法、装置及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110363049A (zh) | 2019-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110363049B (zh) | 图形元素检测识别和类别确定的方法及装置 | |
US11670071B2 (en) | Fine-grained image recognition | |
CN107688821B (zh) | 基于视觉显著性与语义属性跨模态图像自然语言描述方法 | |
TWI682302B (zh) | 風險地址識別方法、裝置以及電子設備 | |
CN109635150B (zh) | 文本生成方法、装置以及存储介质 | |
US8737739B2 (en) | Active segmentation for groups of images | |
CN112131920B (zh) | 用于扫描图像中的表格信息的数据结构生成 | |
CN112528963A (zh) | 基于MixNet-YOLOv3和卷积递归神经网络CRNN的算术题智能批阅系统 | |
CN113297975A (zh) | 表格结构识别的方法、装置、存储介质及电子设备 | |
CN112819023B (zh) | 样本集的获取方法、装置、计算机设备和存储介质 | |
CN113762309B (zh) | 对象匹配方法、装置及设备 | |
CN111259144A (zh) | 多模型融合文本匹配方法、装置、设备和存储介质 | |
CN113051914A (zh) | 一种基于多特征动态画像的企业隐藏标签抽取方法及装置 | |
CN113762269A (zh) | 基于神经网络的中文字符ocr识别方法、系统、介质及应用 | |
CN110728147A (zh) | 一种模型训练方法及命名实体识别方法 | |
Chao et al. | Variational connectionist temporal classification | |
CN115080748B (zh) | 一种基于带噪标签学习的弱监督文本分类方法和装置 | |
CN116189130A (zh) | 基于图像标注模型的车道线分割方法及装置 | |
CN114626378B (zh) | 命名实体识别方法、装置、电子设备及计算机可读存储介质 | |
CN110852102B (zh) | 一种中文的词性标注方法、装置、存储介质及电子设备 | |
Wilkinson et al. | Neural word search in historical manuscript collections | |
CN114254622A (zh) | 一种意图识别方法和装置 | |
CN114358011A (zh) | 命名实体提取方法与装置以及电子设备 | |
CN112836076A (zh) | 一种图像标签生成方法、装置及设备 | |
CN115700828A (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 |