fps: 帧率(每秒帧数)
发布时间:2025-06-24 19:07:58 作者:北方职教升学中心 阅读量:464
以下代码的功能是打开摄像头,显示窗口中收集到的视频流。
以下代码的功能是从摄像头收集视频,显示在窗口中同时保存到本地。HTTP流等视频流地址。
fps: 帧率(每秒帧数)。
其中 waitKey 设置40ms,由于目前播放的视频帧率为25fps,然后1000/25 = 40,因此,
1. 从相机中收集视频。常见的 fourcc 编码器包括:
1. 从相机中收集视频。
cv2.VideoWriter(filename, fourcc, fps, frameSize, isColor)。
2. 阅读视频文件。
主要参数。prop_id是属性标识符,value是设置值。
3. 视频录制。
- 如果是整数(如0、 。
cv2.VideoWriter_fourcc(*'H264'):H.264编码。将waitkey等待间隔设置为40ms。- filename: 输出视频文件的路径或文件名。
- cv2.CAP_PROP_BRIGHTNESS:亮度。
- 查看输出视频属性。
最终代码。增加摄像头。打开判断,
运行后:
3. 视频录制。
import cv2#创建窗口cv2.namedWindow('video', cv2.WINDOW_NORMAL)cv2.resizeWindow('video', 640, 480#获取视频设备capp = cv2.VideoCapture(0)while True: ret, frame = cap.read() #将视频帧显示在窗口 cv2.imshow('video', frame) #等待键盘事件 key = cv2.waitKey(1) if (key & 0xFF == ord('q')): break#释放 videocapturecap.release()cv2.destroyAllWindows()。
相关接口 - VideoCapture。
writer.write(frame): 将视频帧写入输出文件。
VideoWriter 将视频帧写入视频文件。
代码示例。
- fourcc: 编解码器代码(FourCC)。
- cv2.CAP_PROP_FRAME_HEIGHT:视频高度。
相关链接。
怎样获得摄像头ID?
OpenCV:通过GUID获取相机名称和索引号信息_opencv 获取摄像头名-CSDN博客。
- cv2.CAP_PROP_FRAME_WIDTH:视频宽度。 只需修改。
主要参数。
- 查看输出视频属性。
常用方法。这就指定了视频的编码格式。
相关链接。
cap.set(prop_id, value):。
主要参数。
相关接口 - videoWrite。
import 创建VideoWriterfourcccv2# = cv2.VideoWriter_fourcc(*'XVID')vw = cv2.VideoWriter('./out.mp4', fourcc, 20, (640, 480)#创建窗口cv2.namedWindow('video', cv2.WINDOW_NORMAL)cv2.resizeWindow('video', 640, 480#获取视频设备capp = cv2.VideoCapture(0)while True: ret, frame = cap.read() #将视频帧显示在窗口 cv2.imshow('video', frame) #将数据写入多媒体文件 vw.write(frame) #等待键盘事件 key = cv2.waitKey(1) if (key & 0xFF == ord('q')): break#释放 videocapturecap.release()#释放VideoWritervw.release()cv2.destroyAllWindows()。该文件将存储捕获的视频。
代码示例。编解码器、等),这意味着打开相应的摄像头(通常是默认摄像头)。
常用方法。相关接口 - VideoCapture。
- 设置视频捕获设备的属性。
常用方法。
常用方法。
常用方法。
cv2.VideoWriter_fourcc(*'MP4V'):MP4编码。可设置视频格式、
- 返回两个值:ret(布尔值,表示成功阅读)和 frame(当前帧图像)。帧速率等。
接口参数可以:
import cv2#创建窗口cv2.namedWindow('video', cv2.WINDOW_NORMAL)cv2.resizeWindow('video', 640, 480)#阅读视频文件capp = cv2.VideoCapture('D:\\resource\d026网购互联网技术.mov')while True: ret, frame = cap.read() #将视频帧显示在窗口 cv2.imshow('video', frame) #等待键盘事件 key = cv2.waitKey(40) if (key & 0xFF == ord('q')): break#释放 videocapturecap.release()cv2.destroyAllWindows()。增加视频采集失败的处理。
目录。import 创建VideoWriterfourcccv2# = cv2.VideoWriter_fourcc(*'XVID')vw = cv2.VideoWriter('./out.mp4', fourcc, 20, (640, 480)#创建窗口cv2.namedWindow('video', cv2.WINDOW_NORMAL)cv2.resizeWindow('video', 640, 480#获取视频设备capp = cv2.VideoCapture(0)while cap.isOpened: ret, frame = cap.read() if ret == False : break; #将视频帧显示在窗口 cv2.imshow('video', frame) cv2.resizeWindow('video', 640, 480) #将数据写入多媒体文件 vw.write(frame) #等待键盘事件 key = cv2.waitKey(1) if (key & 0xFF == ord('q')): break#释放 videocapturecap.release()#释放VideoWritervw.release()cv2.destroyAllWindows()。
frameSize: 视频帧的大小,通常是一个元组 (width, height),如 (640, 480)。代码示例。
2. 阅读视频文件。
其中 waitKey 设置40ms,由于目前播放的视频帧率为25fps,然后1000/25 = 40,于是将waitkey等待间隔设置为40ms。
isColor: 布尔值,指示是否保存为彩色视频。
主要参数。相关接口 - videoWrite。
writer.release(): 释放视频写入对象确保文件正确关闭。摄像头或其它视频流设备中读取视频帧。
cv2.VideoCapture(source):。
代码示例。
常见的 prop_id 参数:
- cv2.CAP_PROP_FPS:帧率(每秒帧数)。True 表示彩色视频(默认),False 表示灰度视频。
- cv2.VideoWriter_fourcc(*'MJPG'):MJPEG编码。
source: 这是一个整数或字符串,表示视频的来源。
最终代码。
2. 读取视频文件。
cap.read():。
VideoCapture 用于从视频文件、