python-Flask应用程序,它获取流并将其放在html页面上
发布时间:2022-06-11 19:57:08 373
相关标签: # node.js
我正在尝试创建一个flask应用程序,它接受一个流并将其放在html页面上。
当我使用我的网络摄像头进行测试时,该项目工作正常,但当我连接我的IP摄像头时,出现以下错误:
1、错误
127.0.0.1 - - [08/Jun/2022 19:00:42] "←[37mGET / HTTP/1.1←[0m" 200 -
Debugging middleware caught exception in streamed response at a point where response headers were already sent.
Traceback (most recent call last):
File "C:\Users\diego\anaconda3\envs\k38\Lib\site-packages\werkzeug\wsgi.py", line 506, in __next__
return self._next()
File "C:\Users\diego\anaconda3\envs\k38\Lib\site-packages\werkzeug\wrappers\base_response.py", line 45, in _iter_encoded
for item in iterable:
File "C:\Users\diego\codes\videostream\main.py", line 19, in gen
frame = camera.get_frame()
File "C:\Users\diego\codes\videostream\face.py", line 33, in get_frame
ret, jpeg = cv2.imencode('.jpg', frame)
cv2.error: OpenCV(4.5.5) D:\a\opencv-python\opencv-python\opencv\modules\imgcodecs\src\loadsave.cpp:976: error: (-215:Assertion failed) !image.empty() in function 'cv::imencode'
127.0.0.1 - - [08/Jun/2022 19:01:12] "←[37mGET /video_feed HTTP/1.1←[0m" 200 -
- 主要的py公司
@app.route('/')
def index():
# rendering webpage
return render_template('index.html')
def gen(camera):
while True:
#get camera frame
frame = camera.get_frame()
yield (b'--frame\r\n'
b'Content-Type: image/jpeg\r\n\r\n' + frame + b'\r\n\r\n')
@app.route('/video_feed')
def video_feed():
return Response(gen(VideoCamera()),
mimetype='multipart/x-mixed-replace; boundary=frame')
- 照相机py公司
class VideoCamera(object):
def __init__(self):
#capturing video
self.video = cv2.VideoCapture(0)
#self.video = cv2.VideoCapture(URL, cv2.CAP_FFMPEG)
def __del__(self):
#releasing camera
self.video.release()
def get_frame(self):
#extracting frames
ret, frame = self.video.read()
#encode OpenCV raw frame to jpg and displaying it
ret, jpeg = cv2.imencode('.jpg', frame)
return jpeg.tobytes()
据我所知,IP摄像头的帧变量变为空,我在互联网上寻找解决方案,但迄今为止没有成功。
如果我只是将流强制转换为python shell,它就可以工作,但我的目标是获取流并将其放入html页面中
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报