Python 3.x cv2.VideoCapture不是';无法读取来自前端的视频
我正在将视频从前端发送到flask服务器进行处理。但当我运行此代码时,此错误会显示在第行Python 3.x cv2.VideoCapture不是';无法读取来自前端的视频,python-3.x,opencv,flask,video-capture,Python 3.x,Opencv,Flask,Video Capture,我正在将视频从前端发送到flask服务器进行处理。但当我运行此代码时,此错误会显示在第行cap=cv2.VideoCapture(vid): TypeError:需要整数(获取类型文件存储) 视频将在“werkzeug.datastructures.FileStorage”类和cv2中转换。VideoCapture不接受作为此类的输入。我该怎么办 我尝试使用vid.save('abc.webm')在本地系统上保存视频,然后使用cv2.VideoCapture读取视频,效果非常好。但我不想把它保存
cap=cv2.VideoCapture(vid)
:
TypeError:需要整数(获取类型文件存储)
视频将在“werkzeug.datastructures.FileStorage”类和cv2中转换。VideoCapture
不接受作为此类的输入。我该怎么办
我尝试使用vid.save('abc.webm')
在本地系统上保存视频,然后使用cv2.VideoCapture
读取视频,效果非常好。但我不想把它保存在系统上
请帮忙。提前谢谢。您需要的是
.read()
从文件存储对象获取字节
@app.route('/process', methods=['POST'])
def process():
if request.method == 'POST':
vid = request.files['file']
cap = cv2.VideoCapture(vid)
while(cap.isOpened()):
ret,frame = cap.read()
if not ret:
break
do_something()
k = cv2.waitKey(1)
if k == 27:
break
用零代替vid,看看它是如何工作的。(cap=cv2.VideoCapture(0))是的,正在工作。但我不想使用网络摄像头,我想处理从前端获取的视频。因此,您的系统有2个视频输入?视频捕获可以处理文件、流和文件夹/图像。如果您有自定义类型,它不知道如何使用它。@MH304没有。我只有视频输入。我正在使用javascript在前端使用网络摄像头录制流,然后将该视频发送到后端的flask服务器,在那里我想使用opencv处理该视频。但我无法使用cv2.VideoCapture访问视频。
vid = request.files['file'].read()
cap = cv2.VideoCapture(vid)