利用python调用摄像头的实例分析


Posted in Python onJune 07, 2021

这篇文章主要介绍了python调用摄像头的示例代码,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下

一、打开摄像头

import cv2
import numpy as np
 
def video_demo():
  capture = cv2.VideoCapture(0)#0为电脑内置摄像头
  while(True):
    ret, frame = capture.read()#摄像头读取,ret为是否成功打开摄像头,true,false。 frame为视频的每一帧图像
    frame = cv2.flip(frame, 1)#摄像头是和人对立的,将图像左右调换回来正常显示。
    cv2.imshow("video", frame)
    c = cv2.waitKey(50)
    if c == 27:
      break
video_demo()
cv2.destroyAllWindows()

二、打开摄像头并截图

import cv2
cap = cv2.VideoCapture(0, cv2.CAP_DSHOW) # 打开摄像头
 
while (1):
  # get a frame
  ret, frame = cap.read()
  frame = cv2.flip(frame, 1) # 摄像头是和人对立的,将图像左右调换回来正常显示
  # show a frame
  cv2.imshow("capture", frame) # 生成摄像头窗口
 
  if cv2.waitKey(1) & 0xFF == ord('q'): # 如果按下q 就截图保存并退出
    cv2.imwrite("test.png", frame) # 保存路径
    break
 
cap.release()
cv2.destroyAllWindows()

三、打开摄像头并不断实时截屏

def video_demo():
  print('开始')
  cap = cv2.VideoCapture(0, cv2.CAP_DSHOW) # 电脑自身摄像头
  i = 0#定时装置初始值
  photoname = 1#文件名序号初始值
 
  while True:
    i = i + 1
    reg, frame = cap.read()
    frame = cv2.flip(frame, 1) # 图片左右调换
    cv2.imshow('window', frame)
 
    if i == 50: # 定时装置,定时截屏,可以修改。
 
      filename = str(photoname) + '.png' # filename为图像名字,将photoname作为编号命名保存的截图
      cv2.imwrite('C:/Users/Administrator/Desktop/m' + '\\' + filename, frame) # 截图 前面为放在桌面的路径 frame为此时的图像
      print(filename + '保存成功') # 打印保存成功
      i = 0 # 清零
 
      photoname = photoname + 1
      if photoname >= 20: # 最多截图20张 然后退出(如果调用photoname = 1 不用break为不断覆盖图片)
        # photoname = 1
        break
    if cv2.waitKey(1) & 0xff == ord('q'):
      break
  # 释放资源
  cap.release()
 
video_demo()
cv2.destroyAllWindows()

以上就是python调用摄像头的示例代码的详细内容。

内容扩展:

对于摄像头保存图片的代码详细分析:

保存图片的功能

"""
:param
 无
:return
 无
功能:通过s键,保存图片
"""""
# 读取图片
img = cv2.imread("index.jpeg", 0)
# 通过窗口显示图片
cv2.imshow("image", img)
# 设置图片窗口显示延迟
k = cv2.waitKey(0)
if k == 27:
 # 27是代表esc键
 cv2.destroyAllWindows()
elif k == ord("s"):
 # 保存图片,新命名index2.jpg
 cv2.imwrite("index2.jpg", img)
 cv2.destroyAllWindows()

到此这篇关于利用python调用摄像头的实例分析的文章就介绍到这了,更多相关教你如何利用python调用摄像头内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
深入解析Python中的WSGI接口
May 11 Python
django和vue实现数据交互的方法
Aug 21 Python
python处理document文档保留原样式
Sep 23 Python
Python 依赖库太多了该如何管理
Nov 08 Python
40行Python代码实现天气预报和每日鸡汤推送功能
Feb 27 Python
Python使用re模块验证危险字符
May 21 Python
基于python实现计算两组数据P值
Jul 10 Python
PyTorch预训练Bert模型的示例
Nov 17 Python
使用Python画了一棵圣诞树的实例代码
Nov 27 Python
python实现按日期归档文件
Jan 30 Python
聊聊Python pandas 中loc函数的使用,及跟iloc的区别说明
Mar 03 Python
python编程简单几行代码实现视频转换Gif示例
Oct 05 Python
python通过opencv调用摄像头操作实例分析
Jun 07 #Python
Python爬虫之用Xpath获取关键标签实现自动评论盖楼抽奖(二)
Jun 07 #Python
还在手动盖楼抽奖?教你用Python实现自动评论盖楼抽奖(一)
Jun 07 #Python
Pytorch中Softmax和LogSoftmax的使用详解
Jun 05 #Python
Pytorch中Softmax与LogSigmoid的对比分析
Jun 05 #Python
Pytorch反向传播中的细节-计算梯度时的默认累加操作
pytorch 梯度NAN异常值的解决方案
Jun 05 #Python
You might like
PHP捕获Fatal error错误的方法
2014/06/11 PHP
PHP写日志的实现方法
2014/11/05 PHP
PHP删除数组中指定下标的元素方法
2018/02/03 PHP
PHP替换Word中变量并导出PDF图片的实现方法
2020/11/26 PHP
javascript 动态设置已知select的option的value值的代码
2009/12/16 Javascript
JQuery入门——用bind方法绑定事件处理函数应用介绍
2013/02/05 Javascript
JavaScript伸缩的菜单简单示例
2013/12/03 Javascript
javascript使用数组的push方法完成快速排序
2014/09/15 Javascript
jQuery实现自动与手动切换的滚动新闻特效代码分享
2015/08/27 Javascript
gameboy网页闯关游戏(riddle webgame)--仿微信聊天的前端页面设计和难点
2016/02/21 Javascript
jQuery使用正则表达式限制文本框只能输入数字
2016/06/18 Javascript
Vue.js实现表格动态增加删除的方法(附源码下载)
2017/01/20 Javascript
vue.js利用Object.defineProperty实现双向绑定
2017/03/09 Javascript
JS基于贪心算法解决背包问题示例
2017/11/27 Javascript
解决vue 更改计算属性后select选中值不更改的问题
2018/03/02 Javascript
angularJs中$http获取后台数据的实例讲解
2018/08/08 Javascript
bootstrap自定义样式之bootstrap实现侧边导航栏功能
2018/09/10 Javascript
vue+elementui 对话框取消 表单验证重置示例
2019/10/29 Javascript
Vue的Eslint配置文件eslintrc.js说明与规则介绍
2020/02/03 Javascript
JS绘图Flot应用图形绘制异常解决方案
2020/10/16 Javascript
[57:50]DOTA2上海特级锦标赛主赛事日 - 4 胜者组决赛Secret VS Liquid第二局
2016/03/05 DOTA
python机器学习理论与实战(五)支持向量机
2018/01/19 Python
Python 列表去重去除空字符的例子
2019/07/20 Python
python脚本实现mp4中的音频提取并保存在原目录
2020/02/27 Python
Python实例教程之检索输出月份日历表
2020/12/16 Python
HTML5移动开发图片压缩上传功能
2016/11/09 HTML / CSS
美国山地自行车、露营、户外装备和服装购物网站:Aventuron
2018/05/05 全球购物
Python面试题:Python是如何进行内存管理的
2014/08/04 面试题
个人思想理论学习的自我鉴定
2013/11/30 职场文书
大专生求职信
2014/06/29 职场文书
建筑学专业自荐书
2014/07/09 职场文书
中职三好学生事迹材料
2014/08/24 职场文书
班主任师德师风自我剖析材料
2014/10/02 职场文书
学生病假条怎么写
2015/08/17 职场文书
SpringBoot集成Redis的思路详解
2021/10/16 Redis
win11怎么消除图标小盾牌?win11消除图标小盾牌解决方法
2022/08/05 数码科技