惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

量子位
Stack Overflow Blog
Stack Overflow Blog
人人都是产品经理
人人都是产品经理
The GitHub Blog
The GitHub Blog
Engineering at Meta
Engineering at Meta
Vercel News
Vercel News
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Y
Y Combinator Blog
The Cloudflare Blog
Last Week in AI
Last Week in AI
B
Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
Tailwind CSS Blog
V
Visual Studio Blog
博客园 - 三生石上(FineUI控件)
小众软件
小众软件
Google DeepMind News
Google DeepMind News
D
DataBreaches.Net
博客园 - 司徒正美
B
Blog RSS Feed
Microsoft Azure Blog
Microsoft Azure Blog
罗磊的独立博客
Hugging Face - Blog
Hugging Face - Blog
L
LangChain Blog

博客园 - 虚幻的街景

代码重组输出 合成视频相关节点所需参数格式 windows 10安装thinkPHP6.0 pip 升级 报No module named 'pip'错怎么处理-百度经验 人脸识别之识别出某人并标记 博文阅读密码验证 - 博客园 WIN7环境人脸检测及识别python实现系列(3)——为模型训练准备人脸数据 博文阅读密码验证 - 博客园 安装pillow(python的图形界面库) PIL模块安装 python 用pip安装cv2 Python 显示图片和调用摄像头 博文阅读密码验证 - 博客园 博文阅读密码验证 - 博客园 Python3 requests 中文乱码 UnicodeEncodeError: 'latin-1' codec can`t encode characters in …… 博文阅读密码验证 - 博客园 博文阅读密码验证 - 博客园 解决centos7使用yum安装mysql 下载速度慢的问题 博文阅读密码验证 - 博客园 PyAudio 中文手册--静音移除/有声检测
python调用摄像头拍照并保存
虚幻的街景 · 2020-11-24 · via 博客园 - 虚幻的街景
import cv2
import os
#引入库
 
print("=============================================")
print("=  热键(请在摄像头的窗口使用):             =")
print("=  z: 更改存储目录                          =")
print("=  x: 拍摄图片                              =")
print("=  q: 退出                                  =")
print("=============================================")
#提醒用户操作字典
 
class_name = input("请输入存储目录(python安装目录下才行,如:d:\python\py_image):")
while os.path.exists(class_name):
    class_name = input("目录已存在!请输入存储目录:")
os.mkdir(class_name)
#存储
 
index = 1
cap = cv2.VideoCapture(0 + cv2.CAP_DSHOW)
width = 640
height = 480
w = 360
cap.set(cv2.CAP_PROP_FRAME_WIDTH, width)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, height)
crop_w_start = (width-w)//2
crop_h_start = (height-w)//2
print(width, height)
#设置特定值
 
while True:
    ret, frame = cap.read()
   
    frame = frame[crop_h_start:crop_h_start+w, crop_w_start:crop_w_start+w]
    #没理解?
 
    frame = cv2.flip(frame,1,dst=None)
    #镜像显示
    cv2.imshow("capture", frame)
    #显示
 
    input = cv2.waitKey(1) & 0xFF
    if input == ord('z'):
        class_name = input("请输入存储目录:")
        while os.path.exists(class_name):
            class_name = input("目录已存在!请输入存储目录:")
        os.mkdir(class_name)
    #存储
 
    elif input == ord('x'):
        cv2.imwrite("%s/%d.jpeg" % (class_name, index),
                    cv2.resize(frame, (224, 224), interpolation=cv2.INTER_AREA))
        print("%s: %d 张图片" % (class_name, index))
        index += 1
    #?
    if input == ord('q'):
        break
    #退出
        
cap.release()
cv2.destroyAllWindows()
    #关闭窗口