想請問各位大大,以下是我的程式碼。
import cv2
from flask import Flask, render_template, Response, request
app = Flask(name)
@app.route('/')
def index():
return render_template('camera.html')
def gen():
vid = cv2.VideoCapture(0)
while True:
return_value, frame = vid.read()
image = cv2.imencode('.jpg', frame)[1].tobytes()
yield (b'--frame\r\n'
b'Content-Type: image/jpeg\r\n\r\n' + image + b'\r\n')
@app.route('/video_feed', methods=['GET'])
def video_feed():
a = request.args.get('name')
print(a)
return Response(gen(), mimetype='multipart/x-mixed-replace; boundary=frame')
if name == 'main':
app.run()
在HTML端接收圖片的方式是採用
img src="{{ url_for('video_feed') }}" height="500"
想請問各位大大,若要對顯示的圖片進行再處理,EX:再丟到後端的OpenCV進行繪製,該如何把這張圖片丟回後端呢?
一般前端繪圖生成的處理方式是,將圖片轉成BASE64後。POST給後端處理。
畢竟前端繪圖生成處理成檔案。得要面臨層層關卡。也需要使用者同意等等限制。
大多數的做法都是將其化成BASE64資料串轉交給後端後。後端再依其資料串來去處理或生成檔案。