前期
建立好环境,安装flask包(这步卡了很久,不知道为什么报错后来发现电脑打开opencv没有安装这个包)
新建一个project
在工程下新建文件夹templates,下面放所有的网页文件,否则程序运行时会找不到文件(这步做错过)
main文件与网页文件不在一起,视频文件也是单独放。这样有逻辑且不会出错
之后输入代码
视频按帧拆分:
from flask import Flask, render_template
import os
import cv2
app = Flask(__name__)
def genframe():
v_path='static/video.mp4'
image_save='static/pic'
if not(os.path.exists(image_save)):
os.mkdir(image_save)
cap=cv2.VideoCapture(v_path)
fc=cap.get(cv2.CAP_PROP_frame_COUNT)
for i in range(int(fc)):
_,img=cap.read()
cv2.imwrite('static/pic/image{}.jpg'.format(i),img)
@app.route('/')
def index():
#return "Hi,Flask!"
genframe()
return render_template('index.html')
if "__main__"==__name__:
app.run(port="5008")
将视频和拆分的图片放在一起展示
更改html网页
结果



