azr*_*dev 5 python opencv heroku
我正在构建一个在其后端使用OpenCV的Web应用程序.我已经在Ubuntu上构建了应用程序(我也在Windows上试过它)并且它工作正常.目前,我正在尝试配置OpenCV以使用Heroku.由于无法使用pip加载OpenCV,因此我阅读了有关使用heroku buildpacks的信息,这些内容包为服务器环境提供自定义.
以下是我尝试测试两个OpenCV构建包:
我使用Flask构建简单的Web服务器,尝试导入OpenCV:
#hello.py
import os
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
text = ''
try:
import cv2
text = 'success'
except:
text = 'fail'
pass
return text + ' to load openCV'
if __name__ == "__main__":
port = int(os.environ.get("PORT", 5000))
app.run(host='0.0.0.0', port=port)
Run Code Online (Sandbox Code Playgroud)
上面的代码应该在加载OpenCV时返回成功或失败.
然后我通过运行以下命令将Heroku配置为使用(heroku multi buildpack):
heroku buildpacks:设置https://github.com/ddollar/heroku-buildpack-multi
在.buildpacks文件中(多buildpack所需)我把https://github.com/heroku/heroku-buildpack-python和https://github.com/slobdell/heroku-buildpack-python-opencv- scipy buildpacks.
第一个用于编译python应用程序和安装其他模块(例如,Flask)pip..第二个buildpack是应该加载OpenCV的那个.
毕竟,整个应用程序都不起作用!
我在Heroku中获得了(应用程序错误)页面,如下截图所示:

我尝试使用其他buildpack(https://github.com/diogojc/heroku-buildpack-python-opencv-scipy),但我得到了相同的结果.
我的问题是:
我做的步骤有什么问题?
我应该如何在heroku中的应用程序中调用(或使用)OpenCV?
我应该使用import语句还是其他命令?
我可以通过执行以下操作来安装:
cd /path/to/your/dir && git init
heroku create MYAPP(白手起家)
heroku config:add BUILDPACK_URL=https://github.com/ddollar/heroku-buildpack-multi.git --app MYAPP
创建.buildpacks如下:
https://github.com/heroku/heroku-buildpack-python
https://github.com/diogojc/heroku-buildpack-python-opencv-scipy#cedar14
Run Code Online (Sandbox Code Playgroud)git add . && git commit -m 'MESSAGE' && git push heroku master