import cv2
# 初始化摄像头
cap = cv2.VideoCapture(0) # 0 通常是默认摄像头的标识
# 检查摄像头是否成功打开
if not cap.isOpened():
print("无法打开摄像头")
exit()
# 设置拍照参数
# 例如,拍照的帧数
frame_count = 0
# 拍照的最大帧数
max_frames = 1000
# 拍照循环
while True:
# 读取摄像头的下一帧
ret, frame = cap.read()
# 如果正确读取帧,ret为True
if not ret:
print("无法接收帧,请退出")
break
# 如果达到最大帧数,则保存图片并退出
if frame_count >= max_frames:
# 保存图片
cv2.imwrite('snapshot1.jpg', frame)
print("图片已保存")
break
# 显示当前帧
cv2.imshow('Frame', frame)
# 等待键盘输入,按 's' 键进行拍照
key = cv2.waitKey(1) & 0xFF
if key == ord('s'):
# 保存图片
cv2.imwrite('snapshot2.jpg', frame)
print("图片已保存")
break
# 计数器增加
frame_count += 1
# 释放摄像头资源
cap.release()
# 关闭所有OpenCV窗口
cv2.destroyAllWindows()
【监控】如何打开笔记本的电脑调出摄像头将画面保存下来
青龙摄影2024-11-19 16:19
相关推荐
Shockang11 小时前
llama.cpp 本地运行 9B 模型:部署、工具调用与微调数据Shockang11 小时前
n8n 智能体工作流实战:触发、工具、记忆与发布护栏冬奇Lab12 小时前
开源项目第241期:YuE2 —— 用符号乐谱当“白盒“接口的开源音乐生成模型,SongBench 超越 Suno v5/v6鶴哥只手遮天13 小时前
Spring AI 2.0.1 深度解析-第 14 章 MCP 服务端(上):注解式实现与工具来源鶴哥只手遮天14 小时前
Spring AI 2.0.1 深度解析-第 15 章 MCP 服务端(下):三种协议形态、Streamable 传输与状态管理鶴哥只手遮天14 小时前
Spring AI 2.0.1 深度解析-第 16 章 向量存储(上):`VectorStore` 接口体系、`BatchingStrategy`鶴哥只手遮天14 小时前
Spring AI 2.0.1 深度解析-第 12 章 工具循环的流式形态、Usage 累加与扩展体系鶴哥只手遮天14 小时前
Spring AI 2.0.1 深度解析-第 23 章 模型供应商实现:从 `OpenAiSetup` 到 Bedrock鶴哥只手遮天14 小时前
Spring AI 2.0.1 深度解析-第 06 章 内置 Advisor 全景:13 个实现逐个剖到源码级