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

运行结果:

相关推荐
Yeats_Liao2 分钟前
MindSpore开发之路(二十六):系列总结与学习路径展望
人工智能·深度学习·学习·机器学习
2501_941870564 分钟前
面向微服务熔断与流量削峰策略的互联网系统稳定性设计与多语言工程实践分享
开发语言·python
modelmd9 分钟前
Go 编程语言指南 练习题目分享
开发语言·学习·golang
Nan_Shu_61414 分钟前
学习: Threejs (2)
前端·javascript·学习
GIS之路1 小时前
GDAL 实现矢量裁剪
前端·python·信息可视化
学历真的很重要1 小时前
LangChain V1.0 Context Engineering(上下文工程)详细指南
人工智能·后端·学习·语言模型·面试·职场和发展·langchain
IT=>小脑虎1 小时前
Python零基础衔接进阶知识点【详解版】
开发语言·人工智能·python
智航GIS1 小时前
10.6 Scrapy:Python 网页爬取框架
python·scrapy·信息可视化
清水白石0081 小时前
解构异步编程的两种哲学:从 asyncio 到 Trio,理解 Nursery 的魔力
运维·服务器·数据库·python
山海青风1 小时前
图像识别零基础实战入门 1 计算机如何“看”一张图片
图像处理·python