OpenCV---视频操作

用摄像头捕获视频

bash 复制代码
import cv2 as cv
import numpy
cap = cv.VideoCapture(0)
while(cap.isOpened()):
    ret, frame = cap.read()  # read()   它返回两个值,第一个是布尔值,表示是否成功读取到一帧,第二个是帧本身。
    cv.imshow('Video', frame)
    if cv.waitKey(25) & 0xFF == ord('q'):
        cap.release()
        break
cv.destroyAllWindows()

没有摄像头,我们可以使用一款APPIP摄像头

cap = cv.VideoCapture(0) 0改成IP摄像头内容中的局域网IP

从文件中播放视频

c 复制代码
import cv2 as cv
myVC = cv2.VideoCapture('../video.mp4')      # 设置窗口宽高 myVC.set(3, 160)  myVC.set(4,120)
while True:
    check, frame = myVC.read()
    cv2.imshow('Camera', frame)
    if(cv2.waitKey(1) == ord('q')):
        myVC.release()
        break
cv2.destroyAllWindows()

保存视频

c 复制代码
import cv2 as cv
import numpy as np

myVC = cv.VideoCapture(0)
fourcc = cv.VideoWriter_fourcc(*'XVID')
out = cv.VideoWriter('output.avi', fourcc, 20.0, (640,480))

while(myVC.isOpened()):
    ret, frame = myVC.read()    # 读操作
    if ret == True:
        frame = cv.flip(frame, 0)   # flip() 用于沿Y轴翻转视频的1图像
        out.write(frame)        # 写操作
        cv.imshow('Camera', frame)  # 展示效果:在哪个窗口,哪一帧图像
        if cv.waitKey(1) & 0xFF == ord('q'):
            break
    else:
        break
myVC.release()
out.release()
cv.destroyAllWindows()
相关推荐
余~~1853816280027 分钟前
短视频矩阵系统源码开发/矩阵系统OEM搭建
线性代数·矩阵·音视频
宇宙无敌花心大萝卜7 小时前
一种简单的快速批量视频抽取固定间隔帧截图的操作方法
ffmpeg·音视频·视频
Kai HVZ9 小时前
《计算机视觉》——图像拼接
人工智能·计算机视觉
楼台的春风9 小时前
图像金字塔
图像处理·人工智能·opencv·算法·计算机视觉·matlab·嵌入式
唔皇万睡万万睡10 小时前
答题卡识别阅卷系统(Matlab)
开发语言·计算机视觉·matlab
浮生如梦_12 小时前
手眼标定3D空间位姿变换
人工智能·计算机视觉·3d·视觉检测·人机交互
Coovally AI模型快速验证13 小时前
DeepSeek引领目标检测新趋势:如何通过知识蒸馏优化模型性能
人工智能·深度学习·目标检测·机器学习·计算机视觉·目标跟踪
web1511736022313 小时前
爬虫基础之爬取某站视频
爬虫·音视频
智联视频超融合平台14 小时前
国标28181协议在智联视频超融合平台中的接入方法
音视频
weixin_4072376814 小时前
ubuntu20.04音频aplay调试
音视频