使用Dataflow进行图像预处理
问题:我正在尝试使用Dataf
任务:我将运行一个ETL作业,该作业将从GCS中提取TIFF图像,使用OpenCV + Tesseract等开源计算机视觉工具的组合将这些图像转换为文本,并最终将数据加载到BigQuery中 问题:我正在尝试使用Dataflow来执行ETL作业,因为我有数百万个图像(每个图像是一个单独的文件/ blob),我想扩展到数百台机器.但是,我遇到了关于下载图像的最佳方法的Dataflow(将在下面更详细地描述)的一些问题. 问题:最终我试图确定: 1)数据流是否是执行此操作的最佳解决方案?我考虑过的替代方案是在大型机器上运行多线程作业.我还应该考虑其他替代方案吗? 2)如果数据流是最佳解决方案PHP图像处理,那么我应该如何专门处理下载数百万张图像(以便我可以通过转换运行它们)? 技术挑战: 以下帖子推荐的解决方案建议beam.io.gcp.gcsio.GcsIO().open(filepath, 'r')在DoFn中使用从GCS下载图像. 我试图沿着这条路走下去,beam.io.gcp.gcsio.GcsIO().open(filepath, 'r')但是,我无法打开图像.这个问题在这里描述:IO.BufferReader问题. 使用时,DirectRunner我可以使用此客户端api下载图像文件from google.cloud import storage,我可以打开并预处理图像没问题.但是,在使用数据流运行器时,我遇到了依赖性问题AttributeError: 'module' object has no attribute 'storage'. 话虽如此,如果Dataflow是最佳解决方案,那么下载和处理数百万张图像的最佳方法是什么? (编辑:成都站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |