使用谷歌云进行图像分类、裁剪和 OCR

Posted

技术标签:

【中文标题】使用谷歌云进行图像分类、裁剪和 OCR【英文标题】:Using google cloud for image classification, cropping and OCR 【发布时间】:2021-05-26 15:34:17 【问题描述】:

请允许我问一个相当新手的问题。到目前为止,我一直在使用像 imagemagick 或 GOCR 这样的本地工具来执行这项工作,但那是相当过时的,我被敦促“转向谷歌云 AI”。

设置

我有一个(训练)数据集,包含不同类型的各种文档(如 JPG 和 PDF),并且通过某些特征(如流行颜色、重复布局)我打算对它们进行分类,例如如invoice type 1invoice type 2not an invoice。在第二步中,我想对每个文档的某些预定义区域进行 OCR 并提取例如发送发票的公司地址和日期。

我设想的架构

    在现代平台即服务 (pass) 中,我已经设置了一个 UI,我可以在其中上传新文件。然后将它们本地存储在具有文件名的目录中(或存储在 MongoDB 中)。上传时间戳、用户、原始文件名等元信息存储在数据库中。 然后应将新上传的文件提交给 google cloud,由其执行分类步骤,并返回标签以保存在数据库中。 应该自动裁剪文档页面,即去除黑色或白色边距,很可能也使用 google cloud。作物的参数应保存在数据库中。 如果是,例如发票,应为文档的某些区域执行 OCR(再次通过谷歌云),例如从页面中间到裁剪页面上 10% 的右边距的边界框。 OCR 的结果应该再次在本地持久化。

问题

我似乎缺少正确的搜索词来弄清楚如何使用谷歌云来做到这一点。是否有 google-API(例如 REST),我可以用来上传并返回步骤 2 到 4 的结果?

【问题讨论】:

【参考方案1】:

我认为您最好的选择是使用Document AI (REST API and Libraries)。

使用 Document AI,您可以:

将图像转换为文本 文档分类 分析和提取实体

此外,对于您的使用案例,我们还有一个新的 Document AI 功能,该功能仍处于预览阶段,访问权限有限,即Invoice parser。

发票解析器类似于 Form parser,但用于发票而不是表单。查看发票解析器页面,您就会明白我所说的预览和受限访问是什么意思。

AFIK,没有任何用于图像编辑的 GCP 工具。

【讨论】:

我的大师(又名同事)刚刚将我指向cloud.google.com/document-ai/docs/form-parser,这或多或少是第 4 步。我还将查看您的链接,尤其是发票解析器。 最后但同样重要的是:如果我想转换倾斜或扭曲的图像(如 gimp 允许),我必须在哪里查看?例如br.de/nachrichten/bayern/…的背景图片(请忽略该网站是德国的事实) “我们”是指我参与的 Google 云支持。

以上是关于使用谷歌云进行图像分类、裁剪和 OCR的主要内容,如果未能解决你的问题,请参考以下文章

谷歌云视觉 API“请求准入被拒绝”

来自谷歌云视觉 API OCR 的逐行数据

谷歌云自然语言 API 分类明文与 Html

对符号/图像进行分类的建议

OCR:扫描图像的特定部分

使用 multer 和 nodejs 将图像上传到谷歌云存储时出错