paint-brush
如何利用人工智能处理工程图纸经过@olegkokorin
新歷史

如何利用人工智能处理工程图纸

经过 Oleg Kokorin5m2024/08/29
Read on Terminal Reader

太長; 讀書

工程图是复杂的非结构化文档,很难用传统的数字文档处理方式进行处理。而人工智能则有望快速准确地提取数据,尤其是那些看似专注于处理工程图的现成人工智能工具。然而,在实践中,事情并不像看起来那么好:工程图由于其非结构化性质,对预制人工智能系统提出了重大挑战。在本文中,我将分享如何使用人工智能来创建一个真正功能齐全、精度高的工程图处理系统。
featured image - 如何利用人工智能处理工程图纸
Oleg Kokorin HackerNoon profile picture
0-item

我们已经做过多个技术图纸处理项目,工程图纸自动化项目迟早会来。你可能会问,工程图纸有什么特别之处?


几何尺寸和公差标注 (GD&T) 就是您的答案。这些令人讨厌的标签由于其在页面上的位置和整体结构,在处理和提取工程图数据时通常会带来挑战。但不要担心——我在这里分享我们如何设法使用 AI 处理工程图上的 GD&T 标注。让我们从头开始。

处理非结构化文档

所有数字文档可分为两种类型:结构化和非结构化:


  • 结构化文档遵循预定义的结构,因此易于通过 AI 进行处理和分析。表格、发票、收据、调查和合同等文档都是结构化文档的示例。


  • 相反,非结构化文档缺乏一致的组织,因此很难自动处理。非结构化文档的例子包括报纸、研究论文和商业报告。


您可能已经猜到了,技术图纸是非结构化文档的典型示例:尽管遵循一套严格的标准,但由于缺乏严格的结构,每张图纸都各不相同。再加上打字和手写文本数据、特殊符号、复杂的电子表格和各种注释,技术图纸对自动提取数据提出了真正的挑战。


技术图纸的复杂性使其成为 AI 数据提取的理想选择。事实上,使用神经模型检测和提取图纸中的各种数据是实现自动化处理的唯一方法。现代计算机视觉模型和智能产品开发方法可以产生强大的工具来快速处理任何技术图纸。

现成工具的问题

谷歌搜索一下,你至少可以找到几种处理工程图的解决方案。几乎所有解决方案都提供了广泛的功能,并承诺快速准确地处理复杂数据。


乍一看,这听起来很有希望:每月付费订购高精度的工艺工程图。但实际上,事情往往没有那么顺利。


现成的工具通常很难检测和处理旋转元素,因为它们的算法仅经过训练可以处理“共同点”,在我们的例子中,这是一个水平放置标签和注释的工程图。

因此,使用现成的解决方案只适合那些图纸相对简单且只包含标准数据的人。任何偏离“共同点”的事情都会对现成的工具提出挑战。

工程图特征提取

我们的一个客户就遇到过这样的情况:市面上的工程图处理解决方案不能满足处理复杂或非标准图纸的需求,导致数据识别效果不佳。


GD&T 注释包含大量非常重要的信息,这些信息对于从图纸中提取以进行进一步处理至关重要,但它们在页面上的位置(在我们的例子中,它们以一定角度放置)会给使用预制 AI 工具分析图纸的过程带来阻碍。


这就是定制 AI 开发发挥作用的地方:经过训练的 AI 模型可以检测并提取特定文档中的信息,从而解决现成工具所面临的(几乎)任何挑战。


以下是我们通过定制 AI 模型开发解决处理工程图的挑战之一的方法——提取以一定角度放置的 GD&T 注释。

步骤 1:检测注释位置

第一步是确定图纸上注释的位置。可以训练 AI 模型来检测注释的位置,而不管其位置或旋转角度如何。


注意:多页文档需要额外步骤将文档分成几页并区分不同的工程图。对于每页包含多张图纸的文档也是如此:您需要先运行模型来检测每张图纸并将其从文档中提取出来。

步骤2:检测旋转角度

这是重要的部分:检测注释如何旋转。AI 模型需要计算旋转角度并旋转注释使其水平。然后将剪切出的 PNG 传递以进行进一步处理:

步骤 3:从注释中提取数据

在检测到、旋转并从图纸中提取所有注释后,它们将通过符号检测引擎运行。Tesseract 是一个不错的选择,因为它具有较高的识别准确率,并且可以处理多行文本和不同高度的符号。


首先,您需要找到文本所在的确切区域,以改进符号识别过程。我建议使用 OpenCV,因为它可以很好地处理这些任务,并且相对容易使用。接下来,将检测到的文本区域交给 OCR 引擎以提取所有文本和符号。

步骤 4:分析数据

需要对字母、数字和符号进行解释,以提供人类(或数据管理系统)能够理解和处理的“可消化”数据。检测到的符号被分成几组,形成零件尺寸、公差、配合和半径。

第 5 步:数据管理

AI系统提取的数据需要根据你的需求进行提取:


  1. JSON 文件:非常适合将数据导入现有软件,
  2. .XLSX 文件:一种易于阅读的数据格式,非常适合系统测试或小批量数据。
  3. 后期处理:对数据进行额外处理,将其直接发送到数字文档处理系统;对于那些寻求完整解决方案的人来说非常有用。

总结

  1. 虽然市场上有很多用于处理文档的 AI 工具,但它们只能很好地处理简单文件。任何偏离“常态”的情况最好使用定制解决方案来处理。


  2. 只要采用正确的方法和开发人员技能,定制 AI 模型几乎可以处理所有数据提取任务。


  3. 工程图并不是我写过的唯一技术图纸,请查看人工智能如何帮助处理建筑图纸