开源技术 * IBM 微讲堂:Kubeflow 系列(观看回放 | 下载讲义) 了解详情

从图像中提取相关文本内容并获取洞察

摘要

在某些业务场景中,需要提取已扫描文档中特定部分或区域中的信息,以作进一步处理。例如,房地产公司会扫描报纸分类来提取单独的分类。在银行中会扫描并上传贷款的证明文件。

手动浏览文档并提取所需部分的过程非常繁琐,尤其是当有成千上万个这样的页面时。如果想通过编程方式从文档的不同部分中提取信息,并获取有关这些部分的洞察,该怎么办?

本 Code Pattern 向您展示了如何从分散在不同地方或不同布局的已扫描文档中获得所需信息并从这些信息中获取洞察。

概览

在本 Code Pattern 中,您将通过一种方法从已扫描的文档中获取相关洞察。您将了解如何预处理已扫描图像以找到相关部分、提取相关文本、将提取的文本提供给 Watson Language Translator 服务进行语言翻译,然后使用 Watson Natural Language Understanding 服务发掘文本中的关键洞察。

本 Code Pattern 向您展示了如何使用各种 Appsody 堆栈来构建所需的微服务并将其部署到 IBM Cloud 上的 Red Hat OpenShift 集群中。使用 Watson Studio 上部署的主应用程序来编排微服务,以帮助处理已扫描文档并从中提取信息。

完成本 Code Pattern 后,您将掌握如何:

  • 使用 Appsody 堆栈对 OpenCV、Tesseract 和 IBM Cloud Object Storage 客户机进行容器化,并将其部署到 IBM Cloud 上的 Red Hat OpenShift 集群中。
  • 使用 OpenCV 预处理图像以将其分为多个不同部分。
  • 使用 Tesseract 从图像中提取文本。
  • 使用 Watson Language Translation 将文本从印地语翻译成英语。
  • 使用 Watson Natural Language Understanding 从文本中获取洞察。

流程

架构流程

  1. 将分类图像存储在 IBM Cloud Object Storage 中,并触发 Jupyter Notebook 执行。
  2. 调用 Object Storage 操作微服务。
  3. 从 Object Storage 中检索分类图像。
  4. 调用图像预处理器服务。识别图像中的不同部分并将其提取到单独的图像中,每个图像仅包含一种分类。
  5. 将单独的分类图像发送到文本提取器服务,以便提取地址文本。
  6. 将所提取的地址文本发送到 Watson Language Translator,以便将内容翻译成英语。
  7. 将翻译后的英语文本发送到 Watson Natural Language Understanding,以便提取感兴趣的实体来生成所需的洞察。

包含的组件

  • IBM Cloud 帐户:IBM 云计算是一组云计算服务,这些服务适用于 IBM 提供的业务。
  • Jupyter 软件:Project Jupyter 是一家非营利性组织,旨在“跨数十种编程语言开发可方便交互式计算的开源软件、开放标准和服务”。
  • Appsody CLI:Appsody 可用于快速构建和部署云原生应用程序。

精选技术

  • OpenShift Container Platform:Red Hat OpenShift 提供了一种用于构建和扩展容器化应用程序的统一混合云基础平台。
  • :通过互联网访问计算机和信息技术资源。
  • 容器:包含应用程序需要运行的所有元素的虚拟软件对象。
  • Python 3:Python 是一种解释性的通用高级编程语言。

本文翻译自:Extract relevant text content from an image and derive insights(2020-08-21)