问题描述:
1。调用摄像头获取视频流
2。将视频流处理并传递给浏览器
3。不是录制后处理,而是边录制边处理,边传递
4。 flash后台进行处理,而不是在前端处理
问题解决:
方法来源:https://blog.miguelgrinberg.com/post/video-streaming-with-flask
server.py
from flask import Flask, render_template, Response
import cv2
class VideoCamera(object):
def __init__(self):
# 通过opencv获取实时视频流
self.video = cv2.VideoCapture(0)
def __del__(self):
self.video.release()
def get_frame(self):
success, image = self.video.read()
# 在这里处理视频帧
cv2.putText(image, "hello",(10, 30), cv2.FONT_HERSHEY_SIMPLEX, 0.8,(0, 255, 0))
# 因为opencv读取的图片并非jpeg格式,因此要用motion JPEG模式需要先将图片转码成jpg格式图片
ret, jpeg = cv2.imencode('.jpg', image)
return jpeg.t