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()
相关推荐
CoovallyAIHub2 天前
仿生学突破:SILD模型如何让无人机在电力线迷宫中发现“隐形威胁”
深度学习·算法·计算机视觉
CoovallyAIHub2 天前
从春晚机器人到零样本革命:YOLO26-Pose姿态估计实战指南
深度学习·算法·计算机视觉
CoovallyAIHub2 天前
Le-DETR:省80%预训练数据,这个实时检测Transformer刷新SOTA|Georgia Tech & 北交大
深度学习·算法·计算机视觉
CoovallyAIHub2 天前
强化学习凭什么比监督学习更聪明?RL的“聪明”并非来自算法,而是因为它学会了“挑食”
深度学习·算法·计算机视觉
CoovallyAIHub2 天前
YOLO-IOD深度解析:打破实时增量目标检测的三重知识冲突
深度学习·算法·计算机视觉
REDcker3 天前
WebCodecs VideoDecoder 的 hardwareAcceleration 使用
前端·音视频·实时音视频·直播·webcodecs·videodecoder
gihigo19983 天前
基于TCP协议实现视频采集与通信
网络协议·tcp/ip·音视频
山河君4 天前
四麦克风声源定位实战:基于 GCC-PHAT + 最小二乘法实现 DOA
算法·音视频·语音识别·信号处理·最小二乘法·tdoa
这张生成的图像能检测吗4 天前
(论文速读)XLNet:语言理解的广义自回归预训练
人工智能·计算机视觉·nlp·注意力机制
十铭忘4 天前
自主认知-行动1——架构
人工智能·计算机视觉