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()

运行结果:

相关推荐
一隅论数智5 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
默_笙5 天前
🍙 给每个请求过安检:FastAPI 是怎么把校验写进类型注解的
python
AI的探索之旅5 天前
97 个 OpenCV 实例(三十):双目立体,从标定到点云
人工智能·opencv·计算机视觉
XiHongShi20165 天前
STM32F407 RTC定时器例程,建议保存
stm32·单片机·学习
qq_426003965 天前
启动playwright录制codegen生成自动化测试脚本
python·自动化
虎头金猫5 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
长沙三为智能科技5 天前
家政小程序开发从0到上线:五阶段交付流程与验收清单
python
爱吃苹果的日记本5 天前
离散数学第六课
学习·离散数学
伞伞悦读5 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python