利用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取代netcat过程分析
Feb 10 Python
Python聊天室程序(基础版)
Apr 01 Python
python如何爬取个性签名
Jun 19 Python
Python实现两个list求交集,并集,差集的方法示例
Aug 02 Python
Python3实现对列表按元组指定列进行排序的方法分析
Dec 22 Python
PySide和PyQt加载ui文件的两种方法
Feb 27 Python
Python中那些 Pythonic的写法详解
Jul 02 Python
python flask web服务实现更换默认端口和IP的方法
Jul 26 Python
python3.7实现云之讯、聚合短信平台的短信发送功能
Sep 26 Python
numpy.transpose()实现数组的转置例子
Dec 02 Python
pandas:get_dummies()与pd.factorize()的用法及区别说明
May 21 Python
OpenCV-Python实现图像平滑处理操作
Jun 08 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
frename PHP 灵活文件命名函数 frename
2009/09/09 PHP
php生成excel文件的简单方法
2014/02/08 PHP
php 伪造ip以及url来路信息方法汇总
2014/11/25 PHP
php封装的表单验证类完整实例
2016/10/19 PHP
php 判断页面或图片是否经过gzip压缩的方法
2017/04/05 PHP
PHP安装memcache扩展的步骤讲解
2019/02/14 PHP
自动完成JS类(纯JS, Ajax模式)
2009/03/12 Javascript
javascript 得到变量类型的函数
2010/05/19 Javascript
javascript动态加载二
2012/08/22 Javascript
JQuery for与each性能比较分析
2013/05/14 Javascript
解析Javascript中难以理解的11个问题
2013/12/09 Javascript
jQuery简单实现banner图片切换
2014/01/02 Javascript
JavaScript中定义函数的三种方法
2015/03/12 Javascript
jquery validate和jquery form 插件组合实现验证表单后AJAX提交
2015/08/26 Javascript
Nodejs学习item【入门手上】
2016/05/05 NodeJs
switch语句的妙用(必看篇)
2016/10/03 Javascript
javascript实现动态显示颜色块的报表效果
2017/04/10 Javascript
AngularJS实现自定义指令及指令配置项的方法
2017/11/20 Javascript
使用webpack3.0配置webpack-dev-server教程
2018/05/29 Javascript
layui 设置table 行的高度方法
2018/08/17 Javascript
JS异步错误捕获的一些事小结
2019/04/26 Javascript
ligerUI的ligerDialog关闭刷新的方法
2019/09/27 Javascript
JavaScript this在函数中的指向及实例详解
2019/10/14 Javascript
linux系统使用python监测网络接口获取网络的输入输出
2014/01/15 Python
Python进程通信之匿名管道实例讲解
2015/04/11 Python
python获取一组汉字拼音首字母的方法
2015/07/01 Python
python调用fortran模块
2016/04/08 Python
Python爬虫DOTA排行榜爬取实例(分享)
2017/06/13 Python
Python3爬虫爬取百姓网列表并保存为json功能示例【基于request、lxml和json模块】
2018/12/05 Python
pandas实现将dataframe满足某一条件的值选出
2019/06/12 Python
Python 实现递归法解决迷宫问题的示例代码
2020/01/12 Python
django日志默认打印request请求信息的方法示例
2020/05/17 Python
python 制作简单的音乐播放器
2020/11/25 Python
销售人员求职信
2014/07/22 职场文书
英语版自我评价,35句话轻松搞定
2019/10/08 职场文书
Feign调用全局异常处理解决方案
2021/06/24 Java/Android