运行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
?所以我想出了一个肮脏的黑客,它会在第一次运行时安装该包并抛出一个错误,因此,该函数将重新启动。遵循以下步骤:
因此,找到合适的控制盘软件包的唯一真正诀窍是(我坚信函数使用的是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