Веб-камера в Dash (Plotly) для потоковой передачи на PythonPython

Программы на Python
Ответить
Anonymous
 Веб-камера в Dash (Plotly) для потоковой передачи на Python

Сообщение Anonymous »

Можно ли запросить информацию о веб-камере у пользователя на Python с помощью, например, Plotly Dash, и вывести кадры на веб-страницу с помощью OpenCV 2?
Как это будет работать в конкретных терминах? Я уже пробовал следующий код, но вывод веб-камеры не отображается.

Код: Выделить всё

import dash
import dash_core_components as dcc
import dash_html_components as html

from flask import Flask, Response
import cv2

class VideoCamera(object):
def __init__(self):
self.video = cv2.VideoCapture(0)

def __del__(self):
self.video.release()
cv2.destroyAllWindows()

def get_frame(self):
success, image = self.video.read()
ret, jpeg = cv2.imencode('.jpg', image)
return jpeg.tobytes()

def gen(camera):
while True:
frame = camera.get_frame()
yield (b'--frame\r\n'
b'Content-Type: image/jpeg\r\n\r\n' + frame + b'\r\n\r\n')

server = Flask(__name__)
app = dash.Dash(__name__, server=server)

@server.route('/video_feed')
def video_feed():
return Response(gen(VideoCamera()),
mimetype='multipart/x-mixed-replace; boundary=frame')

app.layout = html.Div([
html.H1("Webcam Test"),
html.Img(src="/video_feed")
])

if __name__ == '__main__':
app.run_server(debug=True)
К сожалению, при работающем сервере не отображался желаемый результат локальной веб-камеры на странице. Как я могу это решить?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»