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()
相关推荐
程序员老陆1 天前
从零写一个 FFmpeg 播放器:架构设计远比“解码显示”复杂
ffmpeg·音视频·播放器
kuinnebula1 天前
MP4音频帧定位与提取
音视频
小保CPP1 天前
OpenCV C++基于CNN模型的场景文本检测(OCR)
c++·人工智能·opencv·计算机视觉·cnn·ocr·光学字符识别
sali-tec1 天前
C# 基于OpenCv的视觉工作流-章99-换背景
图像处理·人工智能·opencv·算法·计算机视觉
AI创界者1 天前
开源硬核LTX-Video 本地部署整合包教程:超低显存生成高清AI视频,告别云端排队!
人工智能·aigc·音视频
海带紫菜菠萝汤1 天前
H.264 宏块划分与码率分配机制:影响压缩效率的关键参数详解
前端·javascript·音视频
念啊啊啊啊丶1 天前
【工业异常异常检测】2026-ICML-CoGeoAD:基于多视图注意力机制的分层颜色几何融合零样本3D异常检测
人工智能·深度学习·神经网络·机器学习·计算机视觉
音视频牛哥1 天前
实现低延迟音视频传输,WebRTC并非唯一选择
音视频·webrtc还是rtmp·webrtc还是rtsp·流媒体技术选型·webrtc和rtmp延迟·rtsp低延迟播放器·rtmp低延迟播放器
FFZero11 天前
[mpv架构] (二) 为什么 mpv 要把 FFmpeg 的 I/O 换掉?
音视频·mpv
code 小楊1 天前
MiniMax H3震撼发布:2K视频+双声道生成新标杆
人工智能·科技·开源·音视频