如何解决Google Cloud功能部署功能OCR提取问题
我一直在使用我的项目之一的Google Cloud API OCR工具(https://cloud.google.com/functions/docs/tutorials/ocr)从扫描的图像中提取文本。图片为.png格式。我按照所有说明安装了用于OCR的云API。但是,当我在云存储中的“输入图像存储桶”中上传图像时,在“结果存储桶”中看不到结果。但是,我注意到,如果在以下部署函数中将参数传递为“ fr”或“ es”,则结果的确会显示在结果桶中。在结果桶中看不到“ TO_LANG = en”参数的任何结果。
使用Cloud Storage触发器部署图像处理功能:
{{1}}
但是结果必须是英文。有什么办法可以解决此问题?为了方便起见,我附上了一张图片。非常感谢您的帮助。
谢谢
解决方法
感谢您分享图片和有见地的评论。
我尝试将共享的图像上传到存储桶,并且我确认在结果存储桶中未创建文件。此外,我还可以在日志中看到KeyError异常,该异常导致ocr-extract函数崩溃。
检查回购代码后,我发现在54-70行中,当源语言与结果语言相同时,该函数将直接将结果发送到ocr-save函数,而不是调用ocr-translation。问题是创建函数时导致崩溃的环境变量RESULT_TOPIC
未定义。
要解决该问题,请转到控制台UI的功能选项卡,然后编辑函数ocr-extract,其中包括上述env var。或者,您可以使用以下命令通过Cloud SDK重新部署该功能:
gcloud functions deploy ocr-extract \
--runtime python37 \
--trigger-bucket YOUR_IMAGE_BUCKET_NAME \
--entry-point process_image \
--set-env-vars "^:^RESULT_TOPIC=YOUR_RESULT_TOPIC_NAME:TRANSLATE_TOPIC=YOUR_TRANSLATE_TOPIC_NAME:TO_LANG=en"
我已要求对教程文档进行更新,以便将来避免这种情况。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。