Dask中的安装软件包冲突:我的cv2软件包之一获取ModuleNotFoundError

时间:2020-03-13 20:53:11

标签: python dask dask-distributed

我将dask容器部署到了Cluster。尝试从运行在本地计算机上的烧瓶应用程序调用dask客户端。在我的烧瓶应用程序中,我正在使用cv2 python软件包进行一些图像处理,我要求dask工作者进行处理。尝试运行我的应用程序时,我遇到以下错误。

文件“ /opt/conda/lib/python3.6/site-packages/distributed/protocol/pickle.py”,第59行,正在加载 在子导入中的文件“ /opt/conda/lib/python3.6/site-packages/cloudpickle/cloudpickle.py”,行1161 ModuleNotFoundError:没有名为“ cv2.cv2”的模块; “ cv2”不是软件包

我在Sage-maker笔记本中具有相同的脚本工作,但是尝试将客户端更改为本地计算机时遇到此错误。 我在客户端本地计算机中使用pip3如下安装cv2

pip3安装opencv-python

在我的调度程序和工作程序中,我使用如下conda安装cv2

运行conda安装opencv。

请帮助我了解可能导致此问题的原因。

我在应用程序中访问cv2的代码如下所示。

import cv2
def datalake_image_download(uri,org_id):
    contract_id = '<uuid>'
    url = dj_service_url+"/"+org_id+"/"+contract_id+"?imgurl="+uri
    response = requests.get(url)
    # logger.info(response)
    return cv2.imdecode(np.frombuffer(response.content, np.uint8), cv2.IMREAD_COLOR)

0 个答案:

没有答案