Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
运行Python+;OpenCV+;Azure函数中的dlib_Python_Azure_Opencv_Azure Functions - Fatal编程技术网

运行Python+;OpenCV+;Azure函数中的dlib

运行Python+;OpenCV+;Azure函数中的dlib,python,azure,opencv,azure-functions,Python,Azure,Opencv,Azure Functions,我已经在Python中创建了一个图像处理脚本(使用dlib和OpenCV)-我想知道如何将此功能引入Azure函数,以便通过API调用该脚本。由于Python仍在预览Azure函数,我想知道这里是否有人有将模块带到Azure函数的经验,以及是否可以在那里安装OpenCV?所以我想出了一个肮脏的黑客,它会在第一次运行时安装该包并抛出一个错误,因此,该函数将重新启动。遵循以下步骤: 将包上载到函数目录(我刚刚将包添加到同步函数的git项目中) 执行以下操作(可能有更好的方法,但我对python非常陌

我已经在
Python
中创建了一个图像处理脚本(使用
dlib
OpenCV
)-我想知道如何将此功能引入Azure函数,以便通过API调用该脚本。由于
Python
仍在预览
Azure函数
,我想知道这里是否有人有将模块带到
Azure函数
的经验,以及是否可以在那里安装
OpenCV

所以我想出了一个肮脏的黑客,它会在第一次运行时安装该包并抛出一个错误,因此,该函数将重新启动。遵循以下步骤:

  • 将包上载到函数目录(我刚刚将包添加到同步函数的git项目中)
  • 执行以下操作(可能有更好的方法,但我对python非常陌生):

  • 所以,用户背后的原因是它不允许我以管理员权限安装它。。。另外,如果您在git存储库中包含requirements.txt,那么软件包将安装到WebApp中,但该函数似乎有自己的python环境,因此您必须手动安装软件包


    因此,找到合适的控制盘软件包的唯一真正诀窍是(我坚信函数使用的是Python 2.7,我无法让它与Python 3.4的软件包一起工作)

    您可以将自己的模块上传到函数所在文件夹中的a
    lib
    文件夹中

    但是,在OpenCV的上下文中,它目前不受支持。Azure函数环境中使用的默认Python版本是Python 2.7。如果您尝试使用OpenCV for Python 2.7执行函数代码,您将得到如下错误消息:

    2016-11-07T20:47:33.151 Function completed (Failure, Id=42fa9d38-05f1-46d4-a8ce-9fbaa24a870d)
    2016-11-07T20:47:33.166 Exception while executing function: Functions.ImageProcessor. Microsoft.Azure.WebJobs.Script: ImportError: numpy.core.multiarray failed to import
    Traceback (most recent call last):
      File "D:\home\site\wwwroot\ImageProcessor\run.py", line 17, in <module>
        import cv2
    ImportError: numpy.core.multiarray failed to import
    
    2016-11-07T20:47:33.151功能完成(故障,Id=42fa9d38-05f1-46d4-a8ce-9fbaa24a870d)
    2016-11-07T20:47:33.166执行函数时出现异常:Functions.ImageProcessor。Microsoft.Azure.WebJobs.Script:ImportError:numpy.core.multiarray导入失败
    回溯(最近一次呼叫最后一次):
    文件“D:\home\site\wwwroot\ImageProcessor\run.py”,第17行,在
    进口cv2
    ImportError:numpy.core.multiarray导入失败
    
    解决方法是更新Python 2.7使用的
    numpy
    版本,但您将无法自己运行更新


    正如您所注意到的,Python语言对Azure函数的支持目前处于实验阶段。这些问题将在Python作为一流语言全面上市时得到解决

    即使使用V2函数,情况仍然如此。但是,有一个路线图需要解决。Jerry,不幸的是,还没有解决,因为平台修复可能非常重要。请看一下最近关于这个问题的对话,看看客户的一些变通方法是否适用于您的用例,例如,尝试使用importlib.import_模块(…),请参阅
    2016-11-07T20:47:33.151 Function completed (Failure, Id=42fa9d38-05f1-46d4-a8ce-9fbaa24a870d)
    2016-11-07T20:47:33.166 Exception while executing function: Functions.ImageProcessor. Microsoft.Azure.WebJobs.Script: ImportError: numpy.core.multiarray failed to import
    Traceback (most recent call last):
      File "D:\home\site\wwwroot\ImageProcessor\run.py", line 17, in <module>
        import cv2
    ImportError: numpy.core.multiarray failed to import