opencv调用摄像头保存视频

opencv调用摄像头保存视频

文章目录


保存视频(采用默认分辨率640 x 480)

python 复制代码
import cv2
import time
# 定义视频捕捉对象
cap = cv2.VideoCapture(1)  # 参数0代表计算机的默认摄像头
 
# 获取视频的宽度和高度
frame_width = int(cap.get(3))
frame_height = int(cap.get(4))
# 定义VideoWriter对象并初始
out = cv2.VideoWriter('C:/Users/Desktop/0527.mp4',cv2.VideoWriter_fourcc(*'mp4v'), 20.0, (frame_width, frame_height))

while(cap.isOpened()):
    ret, frame = cap.read()  # 读取
    if ret:
        cv2.imshow('frame', frame)       
        # 写入帧到输出视频文件
        out.write(frame)           
        if cv2.waitKey(1) & 0xFF == ord('q'):
            break
    else:
        break 
# 释放资源
cap.release()
out.release()
cv2.destroyAllWindows()

保存视频(指定分辨率,例1280×720)

初始化与保存帧大小一致

python 复制代码
import cv2
import time
# 定义视频捕捉对象
cap = cv2.VideoCapture(1)  # 参数0代表计算机的默认摄像头
 
# 获取视频的宽度和高度
frame_width = 1280
frame_height =720
# 定义VideoWriter对象并初始
out = cv2.VideoWriter('C:/Users/Desktop/0527.mp4',cv2.VideoWriter_fourcc(*'mp4v'), 20.0, (frame_width, frame_height))

while(cap.isOpened()):
    ret, frame = cap.read()  # 读取
    if ret:
        frame_resize=cv2.resize(frame,(1280,720))
        cv2.imshow('frame', frame)       
        # 写入帧到输出视频文件
        out.write(frame_resize)           
        if cv2.waitKey(1) & 0xFF == ord('q'):
            break
    else:
        break 
# 释放资源
cap.release()
out.release()
cv2.destroyAllWindows()
相关推荐
code_pgf1 小时前
mllm训练过程中有效地利用辅助监督信号来减少幻觉的方法
人工智能·深度学习·计算机视觉
armwind2 小时前
openISP学习11-BNF — Bilateral Noise Filtering(双边滤波降噪)
图像处理·计算机视觉
armwind4 小时前
openISP学习13-FCS — False Color Suppression(假彩色抑制)
图像处理·计算机视觉
armwind4 小时前
openISP学习10-NLM — Non-Local Means Denoising(非局部均值降噪)
图像处理·计算机视觉
VidDown5 小时前
VidDown 工具站:视频分辨率技术
javascript·网络·编辑器·音视频·视频编解码·视频
armwind6 小时前
openISP学习15-BCC — Brightness/Contrast Control(亮度/对比度控制)
图像处理·计算机视觉
装不满的克莱因瓶6 小时前
掌握条件生成对抗网络(Conditional GAN)模型结构——从无条件生成到可控生成的进阶
人工智能·pytorch·python·深度学习·神经网络·生成对抗网络·计算机视觉
Deitymoon7 小时前
RV1126——OSD模块
计算机视觉·音视频·rv1126·osd
放大的EZ7 小时前
Comfyui 教程-22
图像处理·人工智能·计算机视觉