Python学习之使用笔记本摄像头截屏

重点:

需要先安装cv2库

运行后

按q键截屏 或 按右上角关闭按键 退出程序

python 复制代码
import cv2
import os

cur_path = os.getcwd()+'/photo.jpg'

window_name="Camera"

def capture_photo():
    # 初始化摄像头
    cap = cv2.VideoCapture(0)  # 0通常代表第一个摄像头
 
    if not cap.isOpened():
        print("无法打开摄像头")
        exit()
 
    while True:
        # 持续读取摄像头图像
        ret, frame = cap.read()
    
        if ret:
            # 显示图片
            cv2.imshow(window_name, frame)
            k=cv2.waitKey(1)  # 等待按键
            if cv2.waitKey(1) == ord('q'):#检测q键被按下
                cv2.imwrite(cur_path, frame)  # 保存图片
                print("照片已保存")
                break
            #检测右上角关闭按键被按下
            if cv2.getWindowProperty(window_name, cv2.WND_PROP_VISIBLE) < 1:
                break
        else:
            print("无法从摄像头读取数据")
    # 释放资源
    cap.release()
    cv2.destroyAllWindows()

if __name__ == "__main__":
    capture_photo()

运行结果:

相关推荐
用户83562907805113 分钟前
Python 实现 Excel 页面布局与打印设置自动化
后端·python
_Jimmy_40 分钟前
AI应用开发工程师面试题库
人工智能·python·深度学习·机器学习·知识图谱
用户83562907805141 分钟前
Python 实现 Excel 命名范围(Named Range)的创建与管理
后端·python
你想知道什么?1 小时前
线性回归-学习笔记
笔记·学习·线性回归
鱼毓屿御1 小时前
从「只会聊」到「边想边做」的跃迁
前端·学习·react.js
dreamer_83991 小时前
AI智能合同比对系统:从零搭建实战教程
人工智能·python
AOwhisky2 小时前
Python 学习笔记(第十五期)——运维自动化(下·后篇):堡垒机实战——paramiko高阶篇
运维·python·学习·云原生·自动化·运维开发
观察员2 小时前
带你用一个 Python 图书系统,通关封装继承多态
python
林泽毅4 小时前
PyTRIO快速入门(一):概念、推理与训练
人工智能·python·深度学习·机器学习·语言模型
minglie14 小时前
zynq中linux系统的自动登录和免密登录
学习