CN111095296A - 使用机器学习对字符串进行分类 - Google Patents
使用机器学习对字符串进行分类 Download PDFInfo
- Publication number
- CN111095296A CN111095296A CN201880059456.1A CN201880059456A CN111095296A CN 111095296 A CN111095296 A CN 111095296A CN 201880059456 A CN201880059456 A CN 201880059456A CN 111095296 A CN111095296 A CN 111095296A
- Authority
- CN
- China
- Prior art keywords
- character
- image
- training data
- characters
- prototype
- 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.)
- Granted
Links
- 238000010801 machine learning Methods 0.000 title claims description 34
- 238000000034 method Methods 0.000 claims abstract description 142
- 238000012549 training Methods 0.000 claims abstract description 139
- 238000013145 classification model Methods 0.000 claims abstract description 60
- 230000008569 process Effects 0.000 claims description 39
- 238000004422 calculation algorithm Methods 0.000 claims description 16
- 238000013527 convolutional neural network Methods 0.000 claims description 14
- 238000013519 translation Methods 0.000 claims description 5
- 238000003066 decision tree Methods 0.000 claims description 4
- 238000013135 deep learning Methods 0.000 claims description 4
- 238000007477 logistic regression Methods 0.000 claims description 2
- 238000012706 support-vector machine Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 description 48
- 238000003860 storage Methods 0.000 description 40
- 238000010586 diagram Methods 0.000 description 28
- 238000000605 extraction Methods 0.000 description 26
- 238000005516 engineering process Methods 0.000 description 21
- 238000004891 communication Methods 0.000 description 16
- 238000004590 computer program Methods 0.000 description 13
- 230000015654 memory Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 238000012795 verification Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 7
- 230000011218 segmentation Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 4
- 238000007670 refining Methods 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 3
- 238000003709 image segmentation Methods 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 239000003550 marker Substances 0.000 description 3
- 238000012015 optical character recognition Methods 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 238000003909 pattern recognition Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 239000004215 Carbon black (E152) Substances 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000001311 chemical methods and process Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 229930195733 hydrocarbon Natural products 0.000 description 1
- 150000002430 hydrocarbons Chemical class 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012567 pattern recognition method Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 229920000747 poly(lactic acid) Polymers 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/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
- 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/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- 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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- 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
- 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
- G06V30/41—Analysis of document content
- G06V30/413—Classification of content, e.g. text, photographs or tables
-
- 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
- G06V30/42—Document-oriented image-based pattern recognition based on the type of document
- G06V30/422—Technical drawings; Geographical maps
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Image Analysis (AREA)
Abstract
通过利用基于机器的学习技术对文档中的字符模式进行分类的系统和方法,包括:生成字符分类训练数据;基于字符分类训练数据构建字符分类模型;获得包括字符模式的图像,所述字符包括一个或多个轮廓;将字符分类模型应用于图像以对轮廓进行分类;以及将标签应用于轮廓的聚类。
Description
相关申请的交叉引用
本申请与2017年9月14日提交的美国临时申请No.62/558,383和2018年4月5日提交的美国临时申请No.62/653,193相关并要求其权益,这些申请的全部内容在此通过引用整体并入本文。
技术领域
本公开一般而言涉及模式识别,并且更特别地涉及使用机器学习技术的基于字符的文档标记的识别和分类。
背景技术
管路和设备原理图设计(“P&ID”)是说明工程处理流以及用于实现这些处理流的仪器的工程图。P&ID可以包括用于捕获与P&ID图相关的各种类型的设计信息(诸如安装信息、材料、序列信息、危害信息或其它信息)的标记或标签。在许多情况下,提取、识别和分类与P&ID相关联的标记和标签使得P&ID及其提供的信息可以在数据库系统中访问和搜索是有用的。
当前的P&ID标记方法依赖于人工识别P&ID标记并生成标记索引列表。例如,人类操作员可以目视检查P&ID,以提取包括符号、标记及其组织的信息组成部分,并在数据库中将这些组成部分编目。在一些示例中,光学字符识别(OCR)技术也可以用于帮助这一处理。但是,这些解决方案最终效率低下并且不准确。这些解决方案既不成本有效也不稳健。
发明内容
机器学习模型可以应用于P&ID图,以提取图形组成部分,诸如符号和代表化学组分或物理组分的传输的处理循环,或者控制处理,以便克服现有基于OCR的和手动分类的解决方案的缺点。本公开的一些实施例实现了多层框架,以识别表示装备的符号、表示装备之间的连接的示意图线(例如,连接器线),以及编码上下文信息和/或各种设计规范的标记。该模型可以是机器学习算法,诸如卷积神经网络、决策树或如本领域已知的其它机器学习算法。训练数据可以是合成的,或者可以是从实际的先前标记的P&ID图收集的。
本公开的一个方面涉及一种系统,该系统被配置用于识别标准化系统图中的符号。该系统可以包括由机器可读指令配置的一个或多个逻辑电路。(一个或多个)处理器可以被配置为获得包括多个训练图像的符号识别训练数据集。(一个或多个)处理器可以被配置为基于符号识别训练数据集来生成符号识别模型。(一个或多个)处理器可以被配置为获得包括符号的模式的图像。这些符号可以包括用于表示机械或电气组成部分的复杂的几何形状。(一个或多个)处理器可以被配置为将符号识别模型应用于几何形状以识别符号。(一个或多个)处理器可以被配置为将识别出的符号存储在关系数据库中。
本公开的另一方面涉及一种用于识别标准化系统图中的符号的模式的方法。该方法可以包括获得包括多个训练图像的符号分类训练数据集。该方法可以包括基于符号分类训练数据集来生成符号分类模型。该方法可以包括获得包括符号的模式的图像。这些符号可以包括一个或多个轮廓。该方法可以包括基于轮廓的位置信息将符号聚类为分层组。该方法可以包括将符号分类模型应用于轮廓以识别符号和分层组。该方法可以包括将识别出的符号与对应的分层组一起存储在关系数据库中。
本公开的实施例提供了用于通过利用基于机器学习的技术来对图像中诸如字母数字字符之类的形状或对象的模式进行分类的系统和方法。在一些实施例中,该方法可以包括生成字符分类训练数据并基于字符分类训练数据构建字符分类模型。该方法可以包括:找到图像中的所有轮廓;对轮廓进行聚类;将字符分类模型应用于图像,以将轮廓分类为目标字符或非字符;以及提取聚类的字符组作为感兴趣的标记或标签。
本文公开的实施例可以包括一种用于将形状的模式分类为字符并将字符分组为标记的系统。例如,该系统可以包括数据存储库和字符分类逻辑电路。字符分类逻辑电路可以包括处理器和其上嵌入有计算机可执行指令的非暂态计算机可读介质,并且计算机可执行指令可以被配置为使处理器生成字符分类训练数据、基于字符分类训练数据构建字符分类模型,以及将字符分类模型应用于图像以对目标字符进行分类。在一些实施例中,该系统可以通过相对于整个图像定位图像轮廓、基于字符分类模型将轮廓标注为字符或非字符,以及基于字符的位置信息将字符聚类到分层组中来识别标记。该系统可以基于字符组内的字符的模式从字符组中提取标记或标签。
在所公开技术的一些实施例中,标记提取处理可以包括识别图像内的一个或多个文本区域,该文本区域包括字符的分组。可以使用文本区域识别模型来识别文本区域。在一些实施例中,文本区域识别模型可以包括机器学习算法。标记提取处理可以包括用经训练的字符分类模型来扫描识别出的文本区域以对各个字符进行分类,然后提取和/或存储识别出的字符。
在参考附图考虑以下描述和所附权利要求书后,本文公开的系统和/或方法的这些和其它目的、特征和特性以及结构的相关元件的操作方法和功能以及零件的组合和制造的经济性将变得更加明显,所有附图均构成本说明书的一部分,其中相似的附图标记在各个图中表示对应的部分。但是,应当明确地理解,附图仅出于说明和描述的目的,并且不旨在作为对本发明的限制的定义。如说明书和权利要求书中所使用的,单数形式的“一”、“一个”和“该”包括复数指示物,除非上下文另外明确指出。
附图说明
参考以下附图详细描述根据一个或多个各种实施例的本文公开的技术。提供附图仅出于说明的目的,并且仅描绘了所公开技术的典型或示例实施例。提供这些附图是为了促进读者理解所公开的技术,并且不应被认为是对其广度、范围或适用性的限制。应当注意的是,为了清楚和易于图示,这些附图不一定按比例绘制。
图1图示了与本文公开的实施例一致的使用机器学习模型对基于字符的文档标记进行识别和分类的示例计算机实现的方法。
图2A图示了与本文公开的实施例一致的用于针对字符分类模型的合成训练数据生成的示例处理。
图2B图示了如由本文公开的实施例所使用的感兴趣的示例字符和字体。
图2C图示了如由本文公开的实施例所使用的示例原型字符。
图2D图示了与本文公开的实施例一致的从原型创建的示例训练图像。
图3A图示了与本文公开的实施例一致的用于标记提取的示例处理。
图3B图示了如本文公开的实施例中使用的部分P&ID输入图像的示例。
图3C图示了如根据本文公开的实施例被处理以识别空白分割的轮廓的图3B的示例输入图像。
图3D图示了如根据本文公开的实施例被处理以对轮廓进行分类的图3B的示例输入图像。
图3E图示了如由本文公开的实施例所使用的在每个空白分割的轮廓处提取并分类为感兴趣的字符的子图像块的示例。
图3F图示了如根据本文公开的实施例处理的图3B的示例输入图像。
图3G图示了如根据本文公开的实施例被处理以对分类字符进行分组的图3B的示例输入图像。
图3H图示了根据本文公开的实施例的从图3B的示例输入图像中提取的标记。
图4A图示了与本文公开的实施例一致的用于生成用于文本区域识别的训练数据的示例方法。
图4B图示了根据本文公开的实施例的以编程方式创建的训练图像的示例。
图5图示了与本文公开的实施例一致的用于使用文本区域识别模型的标记提取的示例方法。
图6图示了根据一个或多个实现方式的被配置用于在标准化系统图中识别标记、符号和处理循环的系统。
图7图示了根据一个或多个实现方式的用于在标准化系统图中识别符号的模式的方法。
图8是描绘符号、标记和处理循环的示例P&ID图。
图9A是图示与本文公开的实施例一致的用于对所学习的文档内的字符模式进行分类的方法的流程图。
图9B是图示与本文公开的实施例一致的用于对图像中的模式进行分类的方法的流程图。
图9C图示了与本文公开的实施例一致的示例双元文法(bi-gram)模式。
图9D是图示与本文公开的实施例一致的工作流的流程图,该工作流用于对字符区域进行定位,对字符模式进行分类以及基于识别出的字符区域的位置信息、将字符分组为标记组。
图9E描述了与本文公开的实施例一致的以上流程图的更详细的设计,并且包括执行用于字符分类模型的合成数据生成器的模块。
图10是图示与本文公开的实施例一致的用于对学得的字符模式进行分类的系统的图。
图11图示了可以用于实现所公开技术的实施例的各种特征的示例计算系统。
这些图并非旨在穷举或将本发明限制为所公开的精确形式。应该理解的是,可以通过修改和变更来实践本发明,并且所公开的技术仅由权利要求及其等同物限制。
具体实施方式
本公开的实施例提供了用于利用基于机器学习的技术对符号和字符模式进行分类的系统和方法。通过这样做,感兴趣的数据和信息可以从文档中获取、与文档相关联、例如在数据库中被识别和分类。应当注意的是,这些文档可能包括P&ID、图表、蓝图或任何其它包含可以被识别为符号、字符或字符串的信息的来源。识别出的符号或标记可以被索引并存储在数据库中,使得可以在数据库内容易地存储和搜索文档和对应的信息。
在一些示例中,图像中的符号可以被分组在一起,并使用基于机器学习的方法来识别。作为示例,机器学习提供了一种强大的方法来定位某些区域并识别包含的作为图像提供的上下文信息。基于机器学习的技术可以包括深度学习处理,诸如卷积神经网络。卷积神经网络是一类深层的前馈人工神经网络,它分析训练数据集以学习数据中可观察的特征模式,然后将这些所学习的模式应用于将来的数据集,并且如果确定需要更新的模型,那么可以基于新数据集自适应地更新这些学习模式。
本文公开的一些实施例可以在整个工作流的不同子任务中结合使用卷积神经网络算法来进行图像识别和图像分类。例如,在一些示例中,可以使用卷积神经网络或其它机器学习模型来分析P&ID图并识别其中包含的符号图像。也可以实现卷积神经网络或其它机器学习模型,以识别包含在P&ID图中的文本区域或字符。如本领域将理解的,基于不同任务的上下文,相关神经体系架构和训练处理的设计可以是不同的。
图1图示了用于处理图像、识别图像内的字符标记,以及提取其中找到的字符标记并将其与原始图像相关联的基于机器学习的方法。将这样的字符标签与原始图像相关联使得能够通过每个图像中包含的标记对一大组图像进行索引和搜索。如图所示,该方法可以包括生成训练数据集1100;生成学习模型1150,该学习模型1150学习从训练数据集1100中识别感兴趣的字符;以及实现标记提取处理1170,该标记提取处理1170从图像中识别感兴趣的标记以用于索引目的。在一些示例中,训练数据集可以是合成的,因为它是通过如本文公开的自动化处理生成的。标记提取处理1170可以包括第一标记提取流水线处理1175和/或第二标记提取流水线处理1180。
从P&ID图像中提取标记的处理可以包括生成训练数据集1100。字符训练数据表1110可以包括用在字符分类模型1155中的字符原型1105的广泛列表。文本区域训练数据表1125可以包括用于文本区域识别模型1160的字符原型1105的广泛列表。
通过手动方式为上述两个模型中的任何一个获取足够的标注数据可能很耗时、不一致并且组装成本高。例如,使用现有的P&ID图作为训练集需要手动处理以标注图中的标记和对象,这需要人工和时间,并且受现有P&ID数据的可用性的约束,并且可能易于出现人为错误和错误分类。作为对照,本文公开的实施例提供了用于生成合成P&ID训练数据的方法。合成训练数据集在创建种类繁多且完全的P&ID数据时允许提供更大的灵活性,并且可以由创建合成数据的系统预先标注。
仍然参考图1,该方法可以包括生成学习模型1150。例如,可以使用机器学习算法来配置学习模型,以从训练数据集1100中学习以识别感兴趣的字符。在一些示例中,学习模型可以包括字符分类模型1155。字符分类模型1155可以是机器学习模型,例如卷积神经网络、支持向量机、梯度提升决策树、逻辑回归或其它机器学习模型。可以使用字符训练数据集1110来训练字符分类模型1155。在一些示例中,可以训练字符分类模型1155来识别图像(例如,P&ID)中的字符。在一些示例中,可以对字符分类模型1155进行训练以将一个或多个图像块分类为n个对象中的1个和/或感兴趣的字符。
在一些实施例中,学习模型包括文本区域识别模型1160。文本区域识别模型1160可以包括机器学习模型,例如,基于卷积神经网络的图像分割或经训练以识别给定图像中的文本区域的类似类型的模型。例如,可以使用合成文本区域训练图像1130和/或手动注释的P&ID训练图像1135来训练文本区域识别模型。文本区域识别模型1160可以被训练以在一个或多个图像中定位和识别多个对象。
仍然参考图1,该方法可以包括标记提取处理1170,其可以包括一个或多个标记提取流水线处理。例如,一个标记提取流水线处理1175可以包括处理图像以识别和定位由空白分隔的轮廓。标记提取流水线处理1175还可以包括利用字符分类模型(例如,经训练的字符分类模型1155)对轮廓进行分类。在一些示例中,第一标记提取流水线处理1175可以包括将轮廓和/或字符分组为标记。
在一些示例中,标记提取处理1170可以包括互补或替代的标记提取流水线处理1180。标记提取流水线处理1180可以包括应用文本区域识别模型,例如,经训练的文本区域识别模型1160,以定位图像内(并且在一些示例中,图像内的文本区域内)的文本组。在一些示例中,标记提取流水线处理1180可以包括扫描定位的文本区域以识别其中包含的各个字符。标记提取流水线处理1175和1180可以单独操作或组合操作以增加标记提取的准确性。
图2A-2D图示了例如用于训练字符分类模型1155的合成训练数据生成处理的示例。图2A图示了用于生成合成训练数据的处理的流程图。
参考图2A,用于生成合成训练数据的方法可以包括在1210处创建原型源图像,该原型源图像包括被选择以由字符分类模型1155识别的字符和字体。用于生成合成训练数据的方法可以包括在1220处从一个或多个源图像中提取原型字符。例如,从源图像中提取原型字符1220还可以包括标注和存储原型字符。在一些示例中,用于生成合成训练数据的方法可以包括使用原型字符通过改变大小和位置、将它们组合成n元文法(n-gram)、进行模糊和/或添加噪声以编程的方式创建无限量的训练数据来训练字符分类模型1155。
图2B图示了包括感兴趣的字符的图像1215的示例,因为有效的P&ID标记可能包含这些字符中的任何一个。它们以类似于P&ID图像中常见的字体呈现。作为对照,图2B还包括图像1216的示例,该图像1216包括在有效标记中不允许的字符并且因此是应当被分类为“丢弃”的字符的示例。可以通过字符分类模型将第一图像1215的字体和字符分类为感兴趣的字符,而第二图像1216的字符可以被分类为“丢弃”。类似于示例1215和1216的图像可以用于构造原型字符图像集合,该原型字符图像集合然后可以用于生成用于训练字符分类模型的训练图像。
图2C提供了可以从原型源图像提取的原型图像1105的示例。图2D提供了可以从原型图像以编程方式生成的训练图像1115的示例。使用本文公开的方法以编程方式生成合成字符分类训练数据使得能够创建大小和变化不受限制的训练数据集,用于训练字符分类模型1155以将图像中的轮廓分类为感兴趣的字符。为了进一步提高模型准确性,字符分类训练数据可以包括原型字符的大小、位置、模糊和旋转的变化、原型字符组合,以及噪声水平的变化。
在一些实施例中,迭代地改进字符识别模型可以包括:用任何错误分类的轮廓子图像来增强训练数据;重新训练字符识别模型;以及例如使用手动验证或以编程方式使用验证数据集来验证字符识别模型的准确性。
图3A-3H图示了可以在图1中描绘的第一标记提取流水线处理1175中实现的步骤的示例。参考图3A,第一标记提取流水线处理可以包括在步骤1310处输入P&ID图像。在一些示例中,P&ID图像可以作为电子文件或使用数字相机、扫描仪、数据存储库或其它电子输入手段来输入。
方法1175可以包括在步骤1320处识别空白分割的轮廓。在一些示例中,方法1175可以包括在步骤1330处通过应用经训练的分类模型来对图像内的轮廓进行分类。在一些示例中,方法1175可以包括在步骤1340处将轮廓聚类为组。例如,可以基于识别出的字符在图像内的位置以及彼此的接近度来对它们进行分层聚类。文本组可以根据结果产生的字符聚类来创建。
在一些实施例中,方法1175可以包括在步骤1150处例如通过使用用于细化文本组的各种启发法来细化字符组。方法1175可以包括在步骤1360处提取和/或存储标记。
图3B图示了示例输入P&ID子图像1315,该示例输入P&ID子图像1315可以使用第一标记提取流水线处理1175来处理。
图3C图示了示例输入P&ID子图像1325,该示例输入P&ID子图像1325已经经历识别空白分割的轮廓的处理1320。
图3D图示了示例输入P&ID子图像1335,该示例输入P&ID子图像1335已经经历对轮廓进行分类的处理1330。
图3E图示了从用于空白分割的轮廓的示例输入P&ID图像中提取的子图像的示例,该子图像已由字符分类模型1155分类为感兴趣的字符。
图3F图示了示例输入P&ID图像1345,该示例输入P&ID图像1345已经基于识别出的字符在图像内的位置经历了识别出的字符分层聚类1340。
图3G图示了示例输入P&ID图像,该示例输入P&ID图像已经使用用于细化在先前步骤中创建的文本组的各种启发法进行了字符组的细化1350。在一些示例中,该方法可以包括用于识别非分割的轮廓并且确定字符串是否是标记的附加启发法。
图3H图示了在步骤六1360中创建的可以被提取和/或存储的标记的示例列表1365。
图4A和图4B图示了用于为文本识别模型1160生成合成训练数据的示例方法。图4A图示了用于生成合成训练数据的示例处理的流程图。该方法可以包括在步骤1410处创建原型源图像并且在步骤1420处提取原型字符。在一些示例中,原型字符可以被识别和提取。该方法可以包括通过将根据字符原型的随机组构建的随机和模式化文本区域放置在背景图像上以编程方式创建多个训练图像(例如,无限数量的训练图像),该背景图像也可以包含随机生成的线条、符号、P&ID上常见的其它对象/噪声。图4B图示了具有可以通过应用文本区域识别模型1160来识别的文本区域的训练图像1435的示例。
图5图示了第二标记提取流水线处理1180。如图5所示,方法1180可以包括接收图像(例如,P&ID)作为输入。方法1180可以包括例如通过应用经训练的文本区域识别模型1160来识别图像中的文本区域。在一些示例中,方法1180可以包括在步骤1530处识别文本区域内的字符,并且在步骤1540处提取和/或存储标记。第二标记提取流水线处理1180的实施例可以应用于图3B-3H中所示的示例输入图像和字符。
图6图示了根据一个或多个实现方式的被配置用于识别设计上下文的系统100,该设计上下文包括标准化系统图中的符号、标记和处理循环。在一些实现方式中,系统100可以包括一个或多个服务器102。(一个或多个)服务器102可以被配置为根据客户端/服务器体系架构和/或其它体系架构与一个或多个客户端计算平台104通信。(一个或多个)客户端计算平台104可以被配置为经由(一个或多个)服务器102和/或根据对等体系架构和/或其它体系架构与其它客户端计算平台通信。用户可以经由(一个或多个)客户端计算平台104访问系统100。
(一个或多个)服务器102可以包括一个或多个处理器166和其上嵌入有机器可读指令106的一个或多个非暂态存储器。在一些实施例中,处理器166和其上嵌入有机器可读指令106的非暂态存储器可以形成逻辑电路。在一些示例中,(一个或多个)服务器102可以包括一个或多个逻辑电路。逻辑电路可以包括计算机程序模块。在一些示例中,(一个或多个)服务器102可以包括合成训练数据生成逻辑电路108、符号识别逻辑电路110、图像获取逻辑电路112、符号存储逻辑电路118、原型符号生成逻辑电路120、阵列生成逻辑电路124、概率确定逻辑电路126、符号位置评估逻辑电路130、训练数据获取逻辑电路132、标记识别逻辑电路134、字符分类模型生成逻辑电路138、字符轮廓识别逻辑电路140、字符聚类逻辑电路142、字符分类模型应用逻辑电路144、图像分割逻辑电路148、处理循环识别逻辑电路150、连接器线识别逻辑电路154、连接器存储逻辑电路156、循环验证逻辑电路158、关系对应逻辑电路160和/或其它逻辑电路和/或指令模块中的一个或多个。
训练数据生成逻辑电路108可以被配置为获得包括多个训练图像的符号识别训练数据集。训练数据可以包括多个图像(例如,从标准化系统图(诸如P&ID图)裁剪的图像块)。在一些实施例中,可以合成地生成训练数据,以包括一组经研究的符号以及不同的比例。在一些实施例中,可以从现有的或先前编目的图像或数字化图像中收集训练数据。可以手动审查训练数据以识别符号、标记和/或处理循环,并且然后将其输入到训练数据库中,以供机器学习模型用来与模型中与训练图像中相同符号相关的标识进行比较。
符号识别逻辑电路110可以被配置为基于符号识别训练数据集来生成符号识别模型。符号分类模型可以包括机器学习算法,例如,卷积神经网络、更快的R-CNN(faster R-CNN)、决策树或如本领域中已知的其它机器学习算法。
图像获取模块112可以被配置为获得包括符号的模式的图像。例如,符号可以对应于在P&ID图中表示的装备。这些符号可以是标准或定制的工程符号。例如,这些符号可以代表罐、阀、管道、传感器、仪器或本领域已知的其它类型的装备和/或系统组件。
这些符号一般地被示出为代表P&ID或其它工程文档中的功能组件的几何形状。每个符号可以包括一个或多个轮廓。
符号位置评估逻辑电路130可以被配置为将符号识别模型应用于包括多于一种几何形状的图像块以识别相关符号。
符号存储逻辑电路118可以被配置为将识别出的符号与包括多个符号的对应处理循环一起存储在关系数据库中。识别出的符号可能已经通过机器学习算法进行了识别,或者通过图形用户界面进行了手动识别。根据一些实现方式,例如作为与工程处理图相关联的工业标准或图例,符号可以包括已经获得常规重要性的任意记号(书写、印刷或以其它方式显示)。关系数据库可以是电子数据库。根据一些实现方式,关系数据库可以包括其中信息项之间的关系被明确指定为可访问属性的数据库。
原型符号生成逻辑电路120可以被配置为创建感兴趣的原型符号。感兴趣的原型符号可以包括模仿P&ID图中使用的标准或定制工程符号的形状或设计。作为非限制性示例,获得符号分类训练数据还可以包括修改感兴趣的原型符号的大小、平移、旋转或其它可能的变化。根据一些实现方式,可能的变化可以包括能够发生或存在的变化。变化可以是偏差。根据一些实现方式,变化可以包括偏离期望的事件。
原型符号存储模块122可以被配置为将感兴趣的原型符号存储在数据存储器中作为用于以编程方式创建各种训练图像的模板。数据存储库可以是数据库或物理存储设备,诸如磁性或固态存储装置。数据存储库可以是本地、网络和/或基于云的数据存储设备。给定的模板可以是模型。根据一些实现方式,模板可以包括用于进行比较的模型或标准。
阵列生成逻辑电路124可以被配置为生成图像内的符号位置区域的第一阵列。该阵列可以是布置。根据一些实现方式,该阵列可以包括有序的布置。阵列的示例可以包括组(bank)、列、矩阵、组集(panoply)、行、光谱、表和/或其它阵列中的一个或多个。
阵列生成逻辑电路124可以被配置为生成包括符号位置区域的第二阵列,对于该符号位置区域,第一阵列的符号位置区域包括感兴趣的符号的概率超过所选择的阈值。所选择的阈值可以包括用户通过图形用户界面选择的一个或多个概率。在一些示例中,阈值可以由用户调节或调整以影响机器学习算法的准确性。例如,阈值可以由用户在验证步骤期间进行调整,以确认由模型识别的P&ID图内的符号是准确的。可以使用图形用户界面来执行验证。概率可以是度量。根据一些实现方式,概率可以包括某种事件将发生的可能性的量度;表示有利情况与可能情况总数的比率的数字。概率的示例可以包括条件概率、横截面(cross section)、超过数(exceedance)、较大机会(fair chance)、很少机会、联合概率、风险、风险和/或其它概率中的一个或多个。
概率确定逻辑电路126可以被配置为用符号识别模型来确定第一阵列的符号位置区域包括感兴趣的符号的概率。
概率确定逻辑电路126可以被配置为通过评估在任何相邻的符号位置区域中是否存在相关的感兴趣的符号来确定第一阵列的符号位置区域包括感兴趣的符号的概率。例如,相邻符号可以包括位于正被评估的感兴趣的符号旁边或附近的符号。根据一些实现方式,相关符号可以在逻辑上或因果关系上或通过共享特性来连接。概率确定逻辑电路126与符号位置评估逻辑电路130一起可以被配置为识别图像中的模式(例如,感兴趣的符号、轮廓的模式等)。
在一些示例中,符号位置评估逻辑电路130可以被配置为以连续顺序评估符号位置区域。根据一些实现方式,连续顺序可以包括没有间隙的规则连续的顺序。
训练数据获取逻辑电路132可以被配置为通过将固定或随机噪声模式应用于一个或多个图像来获得训练数据。
标记识别逻辑电路134可以被配置为基于字符聚类结果来识别标准化系统图标记,并且将识别出的标准化系统图标记与对应位置一起存储在关系数据库中。标准化系统图标记可以包括P&ID标记。
字符分类模型生成逻辑电路136可以被配置为获得字符分类训练数据并基于字符分类训练数据来生成字符分类模型。字符轮廓识别逻辑电路140可以被配置为识别图像内的字符轮廓。字符聚类逻辑电路142可以被配置为基于字符轮廓的位置信息将字符聚类为字符分层组。字符分类模型应用逻辑电路144可以被配置为将字符分类模型应用于字符轮廓以识别字符。
关系数据库可以从图形用户界面中进行搜索。图形用户界面可以是界面。图形用户界面可以包括基于图形而不是文本的用户界面;根据一些实现方式,使用鼠标以及键盘作为输入设备。
图像分割逻辑电路148可以被配置为分割图像并将启发法应用于图像以抑制非字符轮廓并识别字符轮廓。给定的启发法可以是规则。根据一些实现方式,启发法可以包括旨在增加解决某个问题的可能性的常识规则。启发法的示例可以包括水平思考法(lateralthinking)和/或其它启发法中的一种或多种。
处理循环识别逻辑电路150可以被配置为识别图像中与相关的符号组对应的处理循环。所配置的算法可以是可转移的,以识别多边形、无定形形状、开放形状或如本领域中已知的其它图形结构。在一些示例中,符号识别逻辑电路110可以被配置为在图像内识别与已知属于处理循环的感兴趣的组成部分对应的第一感兴趣符号。符号识别逻辑电路110还可以被配置为识别耦合到第一连接器线的第二感兴趣符号。
连接器线识别逻辑电路154可以被配置为识别从第一感兴趣符号延伸的第一连接器线。连接器线识别逻辑电路154可以由处理循环识别逻辑电路150使用或与其协作使用,以识别图像中的处理循环和/或其它几何形状。
连接器线识别模块154可以被配置为识别从第二感兴趣符号延伸的第二连接器线。
连接器线识别电路154可以被配置为识别从对应的感兴趣符号延伸的附加连接器线,直到识别出终止的连接器线耦合回到第一感兴趣符号中,使得识别出的连接器线和对应的感兴趣符号形成闭合的循环。
连接器线识别逻辑电路154可以被配置为使用边缘检测处理、使用图上的拓扑结构分析算法或使用如本领域中已知的其它模式识别算法来识别连接器线。
连接器存储逻辑电路156可以被配置为将识别出的连接器和对应的感兴趣符号一起存储在关系数据库中作为识别出的处理循环。作为非限制性示例,识别出的处理循环可以对化学处理、物理处理或控制处理进行编码。
物理处理可以包括由P&ID图中描述的系统实现的处理。例如,物理处理可以包括碳氢化合物提取、存储、精制或如本领域中已知的其它类似处理。根据一些实现方式,物理处理可以包括持续现象或以通过一系列状态逐渐变化为特征的现象。循环验证逻辑电路158可以被配置为用图形用户界面来验证识别出的循环。关系对应逻辑电路160可以被配置为与关系数据库内的对应标准化系统图相关地一起存储的对应标签。
在一些实现方式中,图像可以包括标准化系统图。在一些实现方式中,符号分类训练数据可以包括一组标准化系统图,其包括符号和分层组的对应集合,并且使用图形用户界面来手动识别符号和分层组。
在一些实现方式中,(一个或多个)服务器102、(一个或多个)客户端计算平台104和/或外部资源162可以经由一个或多个电子通信链路可操作地链接。例如,可以至少部分地经由诸如互联网和/或其它网络的网络来建立这样的电子通信链路。将认识到的是,这不旨在是限制性的,并且本公开的范围包括其中(一个或多个)服务器102、(一个或多个)客户端计算平台104和/或外部资源162可以可操作地经由某种其它通信介质链接的实现方式。
给定的客户端计算平台104可以包括被配置为执行计算机程序模块的一个或多个处理器。计算机程序模块可以被配置为使得与给定客户端计算平台104相关联的专家或用户能够与系统100和/或外部资源162对接,和/或提供本文归因于(一个或多个)客户端计算平台104的其它功能。作为非限制性示例,给定的客户端计算平台104可以包括台式计算机、膝上型计算机、手持式计算机、平板计算平台、上网本、智能电话、游戏控制台和/或其它计算平台中的一个或多个。
外部资源162可以包括系统100外部的信息源、与系统100一起参与的外部实体和/或其它资源。在一些实现方式中,本文归因于外部资源162的一些或全部功能可以由系统100中包括的资源来提供。
(一个或多个)服务器102可以包括电子存储装置164、一个或多个处理器166和/或其它组件。(一个或多个)服务器102可以包括通信线路或端口,以使得能够与网络和/或其它计算平台交换信息。图1中的(一个或多个)服务器102的图示不旨在是限制性的。(一个或多个)服务器102可以包括多个硬件、软件和/或固件组件,这些硬件、软件和/或固件组件一起操作以提供本文中归因于(一个或多个)服务器102的功能。例如,(一个或多个)服务器102可以由一起作为(一个或多个)服务器102操作的计算平台的云来实现。
电子存储装置164可以包括以电子方式存储信息的非暂态存储介质。电子存储装置164的电子存储介质可以包括与(一个或多个)服务器102整体地(即,基本上不可移除地)提供的系统存储装置和/或经由例如端口(例如,USB端口、火线端口等)或驱动器(例如,盘驱动器等)可移除地连接到(一个或多个)服务器102的可移除存储装置中的一个或两者。电子存储装置164可以包括光学可读存储介质(例如,光盘等)、磁性可读存储介质(例如,磁带、磁性硬盘驱动器、软盘驱动器等)、基于电荷的存储介质(例如,EEPROM、RAM等)、固态存储介质(例如,闪存驱动器等)和/或其它电子可读存储介质中的一个或多个。电子存储装置164可以包括一个或多个虚拟存储资源(例如,云存储装置、虚拟专用网络和/或其它虚拟存储资源)。电子存储装置164可以存储软件算法、由(一个或多个)处理器166确定的信息、从(一个或多个)服务器102接收的信息、从(一个或多个)客户端计算平台104接收的信息和/或使(一个或多个)服务器102能够执行如本文所述的功能的其它信息。
(一个或多个)处理器166可以被配置为在(一个或多个)服务器102中提供信息处理能力。由此,(一个或多个)处理器166可以包括数字处理器、模拟处理器、被设计为处理信息的数字电路、被设计为处理信息的模拟电路、状态机和/或用于以电子方式处理信息的其它机制中的一个或多个。虽然在图1中将(一个或多个)处理器166示出为单个实体,但这仅仅出于说明目的。在一些实现方式中,(一个或多个)处理器166可以包括多个处理单元。这些处理单元可以物理地位于同一设备内,或者(一个或多个)处理器166可以表示协同操作的多个设备的处理功能。(一个或多个)处理器166可以被配置为执行由逻辑电路108、110、112、118、120、124、126、130、132、134、138、140、142、144、148、150、154、156、158、160和/或其它模块指示的机器可读指令。(一个或多个)处理器166可以被配置为通过软件;硬件;固件;软件、硬件和/或固件的某种组合和/或其它用于在(一个或多个)处理器166上配置处理能力的机制执行与逻辑电路108、110、112、118、120、124、126、130、132、134、138、140、142、144、148、150、154、156、158、160对应的模块和/或其它模块。如本文所使用的,术语“模块”可以指代执行归因于模块的功能的任何组件、逻辑电路或一组组件或逻辑电路。这可以包括在处理器可读指令执行期间的一个或多个物理处理器、处理器可读指令、电路系统、硬件、存储介质或任何其它组件。
应该认识到的是,虽然逻辑电路108、110、112、118、120、124、126、130、132、134、138、140、142、144、148、150、154、156、158和160在图1中被示出为在单个处理单元内实现,但是在其中(一个或多个)处理器166包括多个处理单元的实现中,逻辑电路108、110、112、118、120、124、126、130、132、134、138、140、142、144、148、150、154、156、158和/或160中的一个或多个可以远离其它模块来实现。由下面描述的不同逻辑电路108、110、112、118、120、124、126、130、132、134、138、140、142、144、148、150、154、156、158和/或160提供的功能的描述是出于说明性目的,而并非旨在进行限制,因为逻辑电路108、110、112、118、120、124、126、130、132、134、138、140、142、144、148、150、154、156、158和/或160中的任何一个可以提供比所描述的更多或更少的功能。例如,逻辑电路108、110、112、118、120、124、126、130、132、134、138、140、142、144、148、150、154、156、158和/或160中的一个或多个可以被省去,并且其功能的一些或全部可以由逻辑电路108、110、112、118、120、124、126、130、132、134、138、140、142、144、148、150、154、156、158和/或160中的其它逻辑电路提供。作为另一个示例,(一个或多个)处理器166可以被配置为执行一个或多个附加模块,该一个或多个附加模块可以执行在下面归因于逻辑电路108、110、112、118、120、124、126、130、132、134、138、140、142、144、148、150、154、156、158和/或160之一的功能中的一些或全部。
图7图示了根据一个或多个实现方式的用于在标准化系统图中识别符号的方法200。以下给出的方法200的操作旨在是说明性的。在一些实现方式中,方法200可以利用一个或多个未描述的附加操作和/或在没有所讨论的一个或多个操作的情况下来实现。此外,图7中示出并在下面描述的方法200的操作的次序并非旨在限制。
在一些实现方式中,方法200可以在一个或多个处理设备(例如,数字处理器、模拟处理器、被设计为处理信息的数字电路、被设计为处理信息的模拟电路、状态机、一个或多个逻辑电路和/或用于以电子方式处理信息的其它机制)中实现。一个或多个处理设备可以包括响应于以电子方式存储在电子存储介质上的指令而执行方法200的一些或全部操作的一个或多个设备。一个或多个处理设备可以包括被专门设计用于执行方法200的一个或多个操作的通过硬件、固件和/或软件配置的一个或多个设备。
操作202可以包括获得包括多个训练图像的符号识别训练数据集。例如,获得可以包括生成符号识别训练数据集、接收符号识别训练数据集或其任何组合。根据一个或多个实现方式,操作202可以由通过机器可读指令配置的包括与训练数据生成逻辑电路108相同或相似的逻辑电路的一个或多个硬件处理器执行。
操作204可以包括基于符号识别训练数据集来生成符号识别模型。操作204可以输出识别出的符号以及它们相对于整个图像的位置信息,该位置信息可以被表示为基于列和行信息的图形坐标。根据一个或多个实现方式,操作204可以由通过机器可读指令配置的包括与符号识别逻辑电路110相同或相似的模块的一个或多个硬件处理器执行。
在一些示例中,操作206可以包括获得包括符号的模式的图像。这些符号可以包括一个或多个轮廓。根据一个或多个实现方式,操作206可以由通过机器可读指令配置的包括与图像获取逻辑电路112相同或相似的逻辑电路的一个或多个硬件处理器执行。
操作208可以包括基于由连接标识启发法捕获的(例如,如由处理循环识别逻辑电路150或连接器线识别逻辑电路154生成或获得的)处理、物理、逻辑或其它关系将符号聚类到处理循环或其它图形组中。
在一些实施例中,操作210可以包括将符号识别模型应用于轮廓以识别符号、处理循环和/或组。根据一个或多个实现方式,操作210可以由通过机器可读指令配置的包括与符号识别逻辑电路110相同或相似的逻辑电路的一个或多个硬件处理器执行。
操作212可以包括将识别出的符号与对应的处理组或者更通用的图形结构一起存储在关系数据库中,所述更通用图形结构由遵循一些给定关系(例如,电气或物理等)的多个符号组成。根据一个或多个实现方式,操作212可以由通过机器可读指令配置的包括与符号存储逻辑电路118相同或相似的逻辑电路的一个或多个硬件处理器执行。
虽然已经基于当前被认为是最实际和优选的实现方式出于说明的目的详细描述了本技术,但是应该理解的是,这种细节仅用于该目的,并且本技术不限于所公开的实现方式,相反,意在覆盖所附权利要求的精神和范围内的修改和等效布置。例如,应该理解的是,本技术预期在可能的范围内,任何实现方式的一个或多个特征可以与任何其它实现方式的一个或多个特征组合。
图9A是图示用于识别文档图像内的字符标记的基于机器学习的方法10的流程图。如图4A所示,方法10可以包括使用感兴趣的字符和字体的原型示例以编程方式生成合成字符分类训练数据,以使模型能够学习将图像中的轮廓分类为感兴趣的字符并将这些字符分组为标记。
在一些示例中,可以通过对从数据存储库获得的或通过可编程合成训练数据生成方法创建的字符分类训练数据训练卷积神经网络来生成字符分类模型。作为示例,字符分类训练数据可以包括传达关于包括在文档中的字符和标记的信息的原型字符的变化、原型字符的变化的组合。因此,字符分类训练数据然后可以用于构建模型以识别在目标文档图像中找到的感兴趣字符。
在一些示例中,该方法可以包括在步骤16处将字符分类模型应用于文档中的空白分割的轮廓。
该方法可以包括基于从分层聚类算法得出的字符组来构造标记。
图9B是图示与本文公开的实施例一致的用于生成字符分类训练数据以构建字符分类模型的方法20的流程图。可以从形状、比例、旋转、噪声水平等方面具有不同随机变化的原型字符图像来创建字符分类训练数据图像。该方法还可以将多个原型字符随机组合在一起以创建双元文法或部分双元文法训练图像。在一些实施例中,可以收集许多感兴趣的文档,并且可以手动识别包含在那些文档中的感兴趣的字符并将其输入到数据库集合中。在一些实施例中,感兴趣的字符可以是由计算机处理器手动或自动生成或从数据存储设备获得的感兴趣的原型字符。
作为示例,用于构建字符分类训练数据的方法20可以包括在步骤22处在数据存储库中创建各种字体的原型字符集合。在步骤24处,可以将一个或多个原型字符放置在有噪声的背景图像上和保存的字符训练图像上。这些训练图像可以包括字符和/或非字符数据,并且可以以TIFF、JPEG、PNG或其它图像文件格式保存。
在一些示例中,可以将不感兴趣的字符作为要被分类为丢弃物或不感兴趣的形状的训练图像保存在数据存储库中。例如,小写字符和某些符号(例如,“&”、“#”、“@”等)可以被包括作为要被分类为丢弃的字符的训练示例。
在一些实施例中,训练图像可以包括原型字符的全部或部分组合。作为示例,感兴趣的原型字符可以包括诸如“A”、“B”、“C”、“D”、“E”、“F”、“G”、“H”、“I”、“J”、“K”、“L”、“M”、“N”、“O”、“P”、“Q”、“R”、“S”、“T”、“U”、“V”、“W”、“X”、“Y”、“Z”、“0”、“1”、“2”、“3”、“4”、“5”、“6”、“7”、“8”、“9”、“/”、“(”、“)”、“.”、“-”的字符。应当注意的是,可以使用或实现跨许多字体的任意数量的原型字符或字符类型作为用于生成字符分类训练数据的构建块。可以通过删除、修改或添加字符分类训练数据存储库内的字符来修改或改变包括在字符分类训练数据内的字符的类别。可以通过创建具有指定字体的字符图像集合或通过从实际的P&ID图像中裁剪字符图像来生成原型字符。
在一些实施例中,可以使用两个或更多个相邻字符(被称为双元文法的两个字符、被称为三元文法(tri-gram)的三个字符,或被称为n元文法n个字符)作为字符分类训练数据。图9C图示了双元文法模式的几个示例。由于在P&ID或类似文档中,字符通常后跟其它字符,因此在字符分类训练数据中使用完整或部分n元文法作为训练图像可以提高模式识别准确性。示例性方法可以包括通过并入与字符粘连(character touching)情况对应的双元文法来识别双元文法的第一字符,以增强模型的分类性能。特别地,可以观察到识别具有最小区别特性(诸如破折号、句号、“|”等)的特殊字符时的准确性提高。此类最少描述字符后跟第二个字符的训练示例在学习中帮助字符分类模型对此类最少描述的字符进行分类。可以将相同的模式识别方法应用于多个字符(即,三元文法的三个字符和n元文法的n个字符)。
字符分类训练数据可以包括包含或不包含n元文法的原型字符序列。作为示例,原型字符序列可以是源于数据库中要进行分类的文档内获得的示例性感兴趣的标签和标记(例如,XYZ-123)。
参考图9B,字符分类训练数据可以用于创建如上所述的字符分类模型。作为示例,可以针对多个迭代或批次训练字符分类模型。在一些示例中,可以从用户界面获得迭代的次数。在一些示例中,迭代的次数可以基于满足阈值条件,例如,通过在应用于单独的模型测试数据集(即,不是训练数据)时测量字符分类模型的准确性。可以通过将错误分类的字符图像添加到训练数据集文件夹并重新训练字符分类模型来更新字符分类模型。在给定的P&ID图像可能包含与原始字符分类训练数据字体或样式不同的字符的情况下,该处理可以用于随着时间的推移改善字符分类模型的准确性。
图10例示了示例P&ID图。如图所示,P&ID图包括许多工程符号,这些符号代表使用连接器线关联在一起的装备。连接器线可以例如通过液压管线、电气连通性或由符号表示的装备之间的其它关系来描绘连通性。P&ID图还包括识别符号和连接器的标记。为了说明的目的,P&ID图中的虚线方框被示出指示处理循环或各种装备之间的其它关系(例如,由一系列连接器以及代表闭环或开环处理的符号和连接器表示的装备组)。
图9D图示了方法40,该方法40用于使用字符分类模型来识别感兴趣的文档(例如,P&ID文档)内字符的形状、将识别出的字符分组在一起,以及从识别出的字符组中构造P&ID标记。因此,感兴趣的文档的内容可以被识别、与文档相关联,并且可以被索引以用于搜索目的。
方法40可以包括识别感兴趣的文档内的所有空白分割的轮廓。可以设计启发式技术来抑制非字符轮廓并调整不同比例的轮廓的大小。可以通过检测和分割图像内由空白包围的所有连接的非空白像素来识别轮廓。在一些示例中,可以通过取每个轮廓的最大值“x”和和最小值“y”来计算边界方框以定位字符。
步骤44描绘了使用字符分类模型来将识别出的轮廓分类为感兴趣的字符或作为不感兴趣的字符的轮廓。在一些实施例中,可以基于位置将分类的字符轮廓分组在一起,并用于构造标签,如步骤46-47中所绘出的。基于每个轮廓的位置信息对识别出的轮廓进行分组。可以使用其它方法对相关轮廓进行分组。在生成与标签文本区域对应的轮廓组之后,设计各种启发法,以添加任何未识别出的字符、移除非字符、通过基于文档内每个定位区域中的字符大小和间距进一步分离字符或合并字符来细化分组。
图9E是图示用于识别和分类图像中的字符并从图像中提取标记的基于总体机器学习的方法的流程图。如图所示,该方法包括经由字符原型生成合成训练数据、使用合成训练数据训练字符识别模型、处理图像以提取文本和/或标记。该方法还可以包括例如通过将任何错误分类的字符合并到训练数据集中并更新机器学习模型来迭代地改进字符识别模型。
在一些示例中,经由原型生成合成训练数据包括创建计算机生成的原型字符(例如,使用数字存储的字体)。在一些实施例中,该方法可以包括利用人工选择的示例来扩充原型和/或通过算法上改变诸如比例、平移和/或旋转的参数来生成训练数据。该方法可以包括添加噪声。在一些实施例中,原型可以被组合。
在一些实施例中,通过使用训练数据训练字符识别模型来生成分类模型。
在一些实施例中,处理图像以提取文本和/或标记可以包括:使用空白分割来识别轮廓;使用经训练的分类模型对轮廓子图像进行分类;以及对分类的轮廓进行组装或分组。分层聚类可以用于基于字符彼此的接近度对字符进行分组。各种启发法可以应用于细化文本组。在一些示例中,该方法可以包括用于使用文本分类来识别非分割的轮廓并且确定字符串是否是标记的附加启发法。处理图像以提取文本和/或标记可以包括提取用于搜索的字符串和/或标记,使得标记与对应的图像(例如,P&ID文档)相关联。
在一些实施例中,迭代地改进字符识别模型可以包括:利用任何错误分类的轮廓子图像来扩充训练数据;重新训练字符识别模型;以及使用检验数据集例如使用人工验证或自动化来检验字符识别模型的准确性。
图10是图示用于对学得的字符的模式进行分类的系统的图。例如,用于学习字符的模式的系统1000可以包括一个或多个服务器1002、一个或多个客户端计算平台1004以及可搜索的数据库1020。可搜索的数据库1020可以存储字符分类训练数据、字符训练模型和/或已基于学得的字符模式的标识被审查和分类的感兴趣的文档。
服务器1002可以包括一个或多个处理器1024和其上嵌入有计算机程序指令1005的一个或多个非暂态存储器。该计算机程序指令可以包括机器学习组件1008和标注组件1010。服务器1002可以包括数据存储库1022。数据存储库1022可以包括数据库。
机器学习组件1008可以包括使处理器1024实现用于对学得的字符模式进行分类的方法的计算机程序指令。更具体而言,机器学习组件1008可以使处理器1024应用深度学习处理或卷积神经网络来训练数据存储库1022中的数据输入。经训练的数据可以例如被获取和实现。(一个或多个)客户端计算平台1004可以包括台式计算机、膝上型计算机、平板计算机、手持式计算机、智能电话或其它能够操作客户端接口的计算平台。
评分/标注组件1010可以包括计算机程序指令,该计算机程序指令使处理器1024实现用于识别字符的模式并将该模式与分数和对应的标签相关联的方法,字符聚类算法用于构造标记,如本文关于图9D所描述的。然后,用列出的识别出的标记进行索引的文档可以被输入到P&ID可搜索数据库1020中。
将认识到的是,可以使用具有存储在有形介质上的机器可执行指令的计算系统来执行本文所述的方法。该指令可执行以自主地或在操作员的输入的帮助下执行方法的每个部分。
本领域技术人员将认识到的是,本文描述的公开实施例仅作为示例,并且将存在许多变化。本发明仅由权利要求书限制,权利要求书涵盖本文所述的实施例以及对于本领域技术人员而言显而易见的变型。另外,应该认识到的是,在本文的任何一个实施例中示出或描述的结构特征或方法步骤也可以在其它实施例中使用。
如本文所使用的,术语逻辑电路和组件可以描述可以根据本文公开的技术的一个或多个实施例执行的功能的给定单元。如本文所使用的,逻辑电路或组件可以利用任何形式的硬件、软件或其组合来实现。例如,可以实现一个或多个处理器、控制器、ASIC、PLA、PAL、CPLD、FPGA、逻辑组件、软件例程或其它机制来组成组件。在实现方式中,本文描述的各种组件可以被实现为分立的组件,或者所描述的功能和特征可以在一个或多个组件之间部分或全部共享。换句话说,对于本领域的普通技术人员来说,在阅读本说明书之后将显而易见的是,本文描述的各种特征和功能可以在任何给定的应用中实现,并且可以以各种组合和置换的形式在一个或多个单独的或共享的组件中实现。即使可以将各种特征或功能要素单独描述或要求保护为单独的组件,本领域的普通技术人员将理解,这些特征和功能可以在一个或多个常见软件和硬件要素之间共享,并且这样的描述不应要求或暗示使用单独的硬件或软件组件来实现此类特征或功能。
在使用软件全部或部分地实现组件、逻辑电路或技术的组件的情况下,在一个实施例中,可以将这些软件元件实现为与能够执行关于其描述的功能的计算或逻辑电路一起操作。图11中示出了一个这样的示例逻辑电路。根据该示例逻辑电路11000描述了各种实施例。在阅读了本描述之后,对于相关领域的技术人员而言,如何使用其它逻辑电路或体系架构来实现该技术将变得显而易见。
现在参考图11,计算系统11000可以表示例如在台式计算机、膝上型计算机和笔记本计算机、手持式计算设备(PDA、智能电话、蜂窝电话、掌上电脑等)、大型机、超级计算机、工作站或服务器、或对于给定应用或环境可能是理想的或适当的任何其它类型的专用或通用计算设备内发现的计算或处理能力。逻辑电路11000可以表示嵌入在给定设备内或对于给定设备可用的计算能力。例如,可能在其它电子设备(诸如,例如,数码相机、导航系统、蜂窝电话、便携式计算设备、调制解调器、路由器、WAP、终端和其它可能包括某种形式的处理能力的电子设备)中发现逻辑电路。
计算系统11000可以包括例如一个或多个处理器、控制器、控制组件或其它处理设备,诸如处理器11004。处理器11004可以使用通用或专用处理组件(诸如,例如,微处理器、控制器或其它控制逻辑)来实现。在所示的示例中,处理器11004连接到总线11002,但是可以使用任何通信介质来促进与逻辑电路11000的其它组件的交互或与外部通信。
计算系统11000可以包括一个或多个存储器组件,在本文中简称为主存储器11008。例如,优选地,随机存取存储器(RAM)或其它动态存储器可以用于存储将由处理器11004执行的信息和指令。主存储器11008可以用于在执行要由处理器11004执行的指令期间存储临时变量或其它中间信息。逻辑电路11000同样可以包括只读存储器(“ROM”)或耦合到总线11002以存储用于处理器11004的静态信息和指令的其它静态存储设备。
计算系统11000可以包括一种或多种各种形式的信息存储机构11010,其可以包括例如介质驱动器11012和存储单元接口11020。介质驱动器11012可以包括驱动器或其它机制以支持固定或可移除存储介质11014。例如,可以提供硬盘驱动器、软盘驱动器、磁带驱动器、光盘驱动器、CD或DVD驱动器(R或RW)或其它可移除或固定介质驱动器。相应地,存储介质11014可以包括例如硬盘、软盘、磁带、盒式带、光盘、CD或DVD,或者由介质驱动器11012读取、写入或访问的其它固定或可移除介质。如这些示例所示,存储介质11014可以包括其中存储有计算机软件或数据的计算机可用存储介质。
在替代实施例中,信息存储机构11010可以包括其它类似工具,用于允许将计算机程序或其它指令或数据加载到逻辑电路11000中。这样的工具可以包括例如固定或可移除存储单元11022和接口11020。这样的存储单元11022和接口11020的示例可以包括程序盒和盒接口、可移除存储器(例如,闪存或其它可移除存储器组件)和存储器插槽、PCMCIA插槽和卡以及其它固定或可移除存储单元11022和接口11020,其允许软件和数据从存储单元11022传输到逻辑电路11000。
逻辑电路11000可以包括通信接口11024。通信接口11024可以用于允许软件和数据在逻辑电路11000与外部设备之间传输。通信接口11024的示例可以包括调制解调器或软调制解调器、网络接口(诸如以太网、网络接口卡、WiMedia、IEEE802.XX或其它接口)、通信端口(例如,诸如,USB端口、IR端口、RS232端口接口或其它端口)或其它通信接口。经由通信接口11024传输的软件和数据通常可以携带在信号上,该信号可以是电子的、电磁的(包括光学的)或能够由给定的通信接口11024交换的其它信号。这些信号可以经由信道11028被提供给通信接口11024。该信道11028可以携带信号并且可以使用有线或无线通信介质来实现。信道的一些示例可以包括电话线路、蜂窝链路、RF链路、光链路、网络接口、局域网或广域网以及其它有线或无线通信信道。
在本文中,术语“计算机程序介质”和“计算机可用介质”通常用于指代诸如例如存储器11008、存储单元11020、介质11014和信道11028的介质。这些和其它各种形式的计算机程序介质或计算机可用介质可以涉及将一条或多条指令的一个或多个序列携带到处理设备以供执行。实施在介质上的此类指令通常被称为“计算机程序代码”或“计算机程序产品”(其可以以计算机程序或其它分组的形式进行分组)。当被执行时,这样的指令可以使逻辑电路11000能够执行如本文所讨论的公开技术的特征或功能。
虽然图11描绘了计算机网络,但是应该理解的是,本公开不限于利用计算机网络操作,而是可以在任何合适的电子设备中实践本公开。因此,图11中描绘的计算机网络仅出于说明性目的,因此并不意味着在任何方面限制本公开。
虽然上面已经描述了所公开技术的各种实施例,但是应该理解的是,它们仅以示例的方式给出,而不是限制性的。同样,各种图可以描绘用于所公开的技术的示例体系架构或其它配置,其被完成以帮助理解可以包括在所公开的技术中的特征和功能。所公开的技术不限于所示出的示例体系架构或配置,而是可以使用多种替代体系架构和配置来实现期望的特征。实际上,可以如何实现替代的功能、逻辑或物理划分和配置以实现本文公开的技术的期望特征对于本领域技术人员将是显而易见的。而且,可以将除本文描绘的那些以外的许多不同的构成部件名称应用于各种分区。
此外,关于流程图、操作描述和方法权利要求,除非上下文另外指出,否则在本文给出步骤的顺序不应要求各种实施例被实现为以相同次序执行所记载的功能。
虽然以上根据各种示例性实施例和实现方式描述了所公开的技术,但是应该理解的是,在一个或多个单个实施例中描述的各种特征、方面和功能的适用性不限于描述它们的特定实施例,而是可以单独地或以各种组合地应用于所公开技术的一个或多个其它实施例,无论是否描述了这样的实施例以及这样的特征是否被呈现为所描述的实施例的一部分。因此,本文公开的技术的广度和范围不应受到任何上述示例性实施例的限制。
除非另有明确说明,否则本文档中使用的术语和短语及其变体应当被解释为开放式而非限制性的。作为前述的示例,术语“包括”应当被理解为意思是“包括,但不限于”等;术语“示例”被用于提供所讨论的项目的示例性实例,而不是其详尽或限制性的列表;术语“一个”应当被理解为“至少一个”、“一个或多个”等;以及诸如“常规的”、“传统的”、“正常的”、“标准的”、“已知的”之类的形容词和类似含义的术语不应当被解释为将所描述的项目限制到给定时间段或到给定的时间可用的项目,但是应当理解为涵盖现在或将来任何时候可用或已知的常规的、传统的、普通的或标准技术。同样,在本文档涉及对本领域普通技术人员而言显而易见或已知的技术的情况下,此类技术涵盖对于本领域技术人员而言当前或将来任何时候显而易见或已知的技术。
在一些情况下,诸如“一个或多个”、“至少”、“但不限于”或其它类似短语之类的拓宽词语和短语的存在不应被理解为意指或要求采用比在这种拓宽短语可能不存在的情况下更窄的形式。术语“部件”的使用并不暗示描述或要求保护的部件或作为部件的一部分的功能都配置在一个通用的程序包中。实际上,部件中的任何或所有各种部件,无论是控制逻辑还是其它部件,都可以组合在单个程序包中或单独维护,并且可以在多个组或程序包中或跨多个位置分布。
此外,根据示例性框图、流程图和其它图示描述了本文阐述的各种实施例。在阅读本文档之后,对于本领域普通技术人员将变得显而易见的是,可以在不限于所示出的示例的情况下实现所示出的实施例及其各种替代方案。例如,框图及其随附的描述不应当被解释为要求特定的体系架构或配置。
Claims (22)
1.一种用于对P&ID图像中的字符模式进行分类的机器学习模型实现的方法,所述方法包括:
利用训练数据生成逻辑电路生成合成字符训练图像集合;
利用符号生成逻辑电路,基于作为训练数据的所述合成字符训练图像集合来训练字符分类模型;
从P&ID可搜索数据库中获得包括字符模式的P&ID图像,所述字符包括一个或多个轮廓;
将字符分类模型应用于P&ID图像中的轮廓;
基于轮廓的位置信息将轮廓聚类为分层的组;
构造与轮廓的聚类对应的标记标签;以及
在数据存储库中存储标记标签。
2.如权利要求1所述的方法,其中生成训练数据包括:
创建感兴趣的原型字符;
将感兴趣的原型字符作为模板存储在数据存储库中,以便以编程方式创建变化的训练图像;以及
使用原型字符创建多个随机的变化的训练数据。
3.如权利要求1所述的方法,其中字符分类模型包括机器学习算法。
4.如权利要求3所述的方法,其中机器学习算法包括卷积神经网络、支持向量机、梯度提升决策树或逻辑回归模型。
5.如权利要求2所述的方法,其中生成训练数据还包括修改感兴趣的原型字符的大小、平移、旋转或其它可能的变化。
6.如权利要求2所述的方法,其中生成训练数据还包括将噪声模式应用于一个或多个图像。
7.如权利要求6所述的方法,其中应用噪声模式包括:
选择非字符背景;
生成随机噪声模式以创建噪声背景;以及
在噪声背景上放置变化的原型字符序列。
8.如权利要求2所述的方法,其中生成训练数据还包括以组合方式随机选择原型字符包括在序列中,以支持N元文法类型的训练数据。
9.如权利要求1所述的方法,其中构建字符分类模型包括将深度学习处理应用于训练数据。
10.如权利要求1所述的方法,其中将字符分类模型应用于图像以识别字符包括:对图像进行分割以及对图像应用启发法,以抑制非字符轮廓并通过用字符分类模型对轮廓进行分类来识别字符轮廓。
11.一种用于对字符模式进行分类的系统,所述系统包括:
数据存储库和字符分类逻辑电路,所述字符分类逻辑电路包括处理器和其上嵌入有计算机可执行指令的非暂态计算机可读介质,所述计算机可执行指令被配置为使所述处理器:
生成字符分类训练数据;
基于字符分类训练数据构建字符分类模型;
从数据存储库中获得多个轮廓的图像;
将字符分类模型应用于图像,以通过基于字符分类模型对轮廓进行评分来确定轮廓是否为字符;
基于轮廓的位置将轮廓聚类为分层组;以及
从分类的轮廓的聚类中提取标签。
12.如权利要求11所述的系统,其中所述计算机可执行指令被配置为使所述处理器:
创建感兴趣的原型字符;
将感兴趣的原型字符集合作为训练图像模板存储在数据存储库中;以及
使用原型字符创建多个随机的变化的训练数据。
13.如权利要求12所述的系统,其中所述计算机可执行指令被配置为使所述处理器针对不同序列修改原型字符的大小、平移或旋转。
14.如权利要求13所述的系统,其中所述计算机可执行指令被配置为使所述处理器将噪声模式应用于一个或多个训练图像。
15.如权利要求14所述的系统,其中所述计算机可执行指令被配置为使所述处理器:
从数据存储库中选择非字符背景;
生成随机噪声模式以创建噪声背景;以及
在噪声背景上放置原型字符序列。
16.如权利要求13所述的系统,其中所述计算机可执行指令被配置为使所述处理器随机选择要包括在所述序列中的原型字符。
17.如权利要求13所述的系统,其中所述计算机可执行指令被配置为使所述处理器相对于训练图像中的噪声背景来修改所述序列的大小、平移或旋转。
18.如权利要求13所述的系统,其中所述计算机可执行指令被配置为使所述处理器将深度学习处理应用于训练数据。
19.一种用于识别对象的计算机实现的方法,所述方法包括:
生成对象分类训练数据;
基于对象分类训练数据构建对象分类模型;
获得包括感兴趣的对象的图像;
将对象分类模型应用于图像;以及
基于对象的位置将对象聚类为组。
20.如权利要求19所述的计算机实现的方法,其中所述对象是字母数字字符。
21.一种用于识别对象的计算机实现的方法,所述方法包括:
生成对象识别训练数据;
基于对象识别训练数据构建对象识别模型;
获得包括感兴趣的对象的图像;
将对象识别模型应用于图像以对对象进行分类并定位对象位置。
22.如权利要求21所述的计算机实现的方法,其中所述对象包括图像内的逻辑上分离的文本组。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762558383P | 2017-09-14 | 2017-09-14 | |
US62/558,383 | 2017-09-14 | ||
US201862653193P | 2018-04-05 | 2018-04-05 | |
US62/653,193 | 2018-04-05 | ||
PCT/US2018/051176 WO2019055849A1 (en) | 2017-09-14 | 2018-09-14 | CLASSIFICATION OF CHAINS OF CHARACTER USING MACHINE LEARNING |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111095296A true CN111095296A (zh) | 2020-05-01 |
CN111095296B CN111095296B (zh) | 2024-07-02 |
Family
ID=
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111570313A (zh) * | 2020-05-25 | 2020-08-25 | 青岛滨海学院 | 基于机器视觉的安全套包装盒代码检测系统及检测方法 |
CN114298982A (zh) * | 2021-12-14 | 2022-04-08 | 禾多科技(北京)有限公司 | 图像标注方法、装置、计算机设备和存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101197678A (zh) * | 2007-12-27 | 2008-06-11 | 腾讯科技(深圳)有限公司 | 图片验证码生成方法和图片验证码生成装置 |
US20130182910A1 (en) * | 2012-01-18 | 2013-07-18 | Xerox Corporation | License plate optical character recognition method and system |
CN104915963A (zh) * | 2015-06-25 | 2015-09-16 | 哈尔滨工业大学 | 一种用于plcc元件的检测与定位方法 |
CN105512657A (zh) * | 2015-08-20 | 2016-04-20 | 北京旷视科技有限公司 | 字符识别方法和设备 |
CN106663190A (zh) * | 2014-04-16 | 2017-05-10 | 德国史密斯海曼简化股份公司 | 基于纹理的负载的识别或确定 |
CN106709486A (zh) * | 2016-11-11 | 2017-05-24 | 南京理工大学 | 基于深度卷积神经网络的自动车牌识别方法 |
CN107038447A (zh) * | 2017-04-26 | 2017-08-11 | 大连理工大学 | 一种基于机器视觉的指针式仪表识别方法 |
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101197678A (zh) * | 2007-12-27 | 2008-06-11 | 腾讯科技(深圳)有限公司 | 图片验证码生成方法和图片验证码生成装置 |
US20130182910A1 (en) * | 2012-01-18 | 2013-07-18 | Xerox Corporation | License plate optical character recognition method and system |
CN106663190A (zh) * | 2014-04-16 | 2017-05-10 | 德国史密斯海曼简化股份公司 | 基于纹理的负载的识别或确定 |
CN104915963A (zh) * | 2015-06-25 | 2015-09-16 | 哈尔滨工业大学 | 一种用于plcc元件的检测与定位方法 |
CN105512657A (zh) * | 2015-08-20 | 2016-04-20 | 北京旷视科技有限公司 | 字符识别方法和设备 |
CN106709486A (zh) * | 2016-11-11 | 2017-05-24 | 南京理工大学 | 基于深度卷积神经网络的自动车牌识别方法 |
CN107038447A (zh) * | 2017-04-26 | 2017-08-11 | 大连理工大学 | 一种基于机器视觉的指针式仪表识别方法 |
Non-Patent Citations (1)
Title |
---|
LUOTING FU, LEVENT BURAK KARA.: ""From engineering diagrams to engineering models: Visual recognition and applications"", 《COMPUTER-AIDED DESIGN》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111570313A (zh) * | 2020-05-25 | 2020-08-25 | 青岛滨海学院 | 基于机器视觉的安全套包装盒代码检测系统及检测方法 |
CN114298982A (zh) * | 2021-12-14 | 2022-04-08 | 禾多科技(北京)有限公司 | 图像标注方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2019055849A1 (en) | 2019-03-21 |
US20190080164A1 (en) | 2019-03-14 |
EP3682372A1 (en) | 2020-07-22 |
US11295123B2 (en) | 2022-04-05 |
EP3682372A4 (en) | 2021-07-21 |
US20190236352A1 (en) | 2019-08-01 |
US11195007B2 (en) | 2021-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11195007B2 (en) | Classification of piping and instrumental diagram information using machine-learning | |
EP3660743B1 (en) | Systems and methods for automating information extraction from piping and instrumentation diagrams | |
US10685462B2 (en) | Automatic data extraction from a digital image | |
Harouni et al. | Online Persian/Arabic script classification without contextual information | |
Rahul et al. | Automatic information extraction from piping and instrumentation diagrams | |
CN112119397A (zh) | 使用机器学习的管道及仪表流程图信息的分类 | |
CN110084239B (zh) | 降低离线手写数学公式识别时网络训练过拟合的方法 | |
CN107169485B (zh) | 一种数学公式识别方法和装置 | |
CN109343920B (zh) | 一种图像处理方法及其装置、设备和存储介质 | |
CN109685065B (zh) | 试卷内容自动分类的版面分析方法、系统 | |
Kim et al. | End-to-end digitization of image format piping and instrumentation diagrams at an industrially applicable level | |
Mishchenko et al. | Chart image understanding and numerical data extraction | |
Dey et al. | A two-stage CNN-based hand-drawn electrical and electronic circuit component recognition system | |
CN114120345A (zh) | 信息提取方法、装置、设备及存储介质 | |
Paliwal et al. | OSSR-PID: one-shot symbol recognition in P&ID sheets using path sampling and GCN | |
CN110309825A (zh) | 一种复杂背景下的维吾尔文检测方法、系统及电子设备 | |
CN111095296B (zh) | 使用机器学习对字符串进行分类 | |
Amraee et al. | Handwritten logic circuits analysis using the Yolo network and a new boundary tracking algorithm | |
CN112287763A (zh) | 图像处理方法、装置、设备及介质 | |
CN113128496A (zh) | 一种从图像中提取结构化数据的方法、装置和设备 | |
Hua | Usage of Computer Vision algorithms to automatically extract information from Piping and Instrumentation Diagrams | |
CN113591680B (zh) | 对地质图片钻井经纬度进行识别的方法和系统 | |
EP4109415A1 (en) | Symbol recognition from raster images of p&ids using a single instance per symbol class | |
KR102596257B1 (ko) | 기계가공 특징형상 인식 방법 및 이를 수행하기 위한 컴퓨팅 장치 | |
JP2014092817A (ja) | 文字認識装置及びプログラム |
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 |