Amazon ec2 在停止和启动ubuntu EC2服务器时,没有名为';cv2和x27;错误。(导入cv2错误)

Amazon ec2 在停止和启动ubuntu EC2服务器时,没有名为';cv2和x27;错误。(导入cv2错误),amazon-ec2,deep-learning,cv2,opencv4,Amazon Ec2,Deep Learning,Cv2,Opencv4,我从源代码as安装了opencv(我尝试了pip和sudo方法,但没有在客户端机器上打开cam)。所以,我成功地安装了它,cv2.So文件正确地链接到了创建的虚拟环境。即使是进口cv2,它也能工作。我停止了EC2实例,因为它可以在第二天继续工作,我发现现在导入cv2时抛出了“找不到名为cv2的模块”。请导游 更新1-当我运行代码时,它执行时没有错误,但是当我加载页面时,出现以下错误- cv2.error:OpenCV(4.2.0)/io/OpenCV/modules/imgcodecs/src/

我从源代码as安装了opencv(我尝试了pip和sudo方法,但没有在客户端机器上打开cam)。所以,我成功地安装了它,cv2.So文件正确地链接到了创建的虚拟环境。即使是进口cv2,它也能工作。我停止了EC2实例,因为它可以在第二天继续工作,我发现现在导入cv2时抛出了“找不到名为cv2的模块”。请导游

更新1-当我运行代码时,它执行时没有错误,但是当我加载页面时,出现以下错误- cv2.error:OpenCV(4.2.0)/io/OpenCV/modules/imgcodecs/src/loadsave.cpp:877:error:(-215:断言失败)!函数“imencode”中的image.empty()

我知道imencode收到的是空图像,这就是上面代码的原因。但代码在本地机器上运行得非常好。当我在ec2上运行它时,就会出现这个错误

 run.py


from flask import Flask, render_template, Response, url_for
import io
import cv2

app = Flask(__name__)


@app.route('/')
def index():
    """Video streaming home page."""
    return render_template('index.html')


def gen():
    vc = cv2.VideoCapture(0)
    """Video streaming generator function."""
    while True:
        read_return_code, frame = vc.read()
        encode_return_code, image_buffer = cv2.imencode('.jpg', frame)
        io_buf = io.BytesIO(image_buffer)
        yield (b'--frame\r\n'
               b'Content-Type: image/jpeg\r\n\r\n' + io_buf.read() + b'\r\n')


@app.route('/video_feed')
def video_feed():
    """Video streaming route. Put this in the src attribute of an img tag."""
    return Response(
        gen(),
        mimetype='multipart/x-mixed-replace; boundary=frame'
    )



# main driver function 
if __name__ == '__main__': 
    app.run(host='0.0.0.0',port=5000)

index.html
智能摄像机
最佳目标检测凸轮

您可以尝试使用此命令安装CV2

pip install opencv-python

该错误告诉您,
frame
None

预热视频流时,测试错误(
read\u return\u code
)。根据视频源的不同,在开始获取有效帧之前,您可能会获得其中一些


但我认为你有一个不同的问题。如果要在ec2上部署,如何连接摄像头?

我尝试使用pip安装opencv python,但它不起作用!你用过实例商店吗?如果是,则在停止实例后,该卷上的所有数据都将被擦除。每次停止实例时,您的数据都会被删除。不,我没有为此使用实例存储是的,我无法使用VideoCapture(0)打开生产服务器上的cam,这就是为什么它会抛出错误,因为没有捕获帧。现在,我正在使用HTML视频标记和socketio来构建此功能。如果有人有类似的代码,请分享…是什么让人相信EC2实例上有摄像头?
pip install opencv-python