关于Python如何调用摄像头

 更新时间:2023年04月19日 08:59:01   作者:远方的浩瀚无边  
这篇文章主要介绍了关于Python如何调用摄像头,文中提供了部分实现代码和解决思路,需要的朋友可以参考下

完整代码

import cv2
cap = cv2.VideoCapture(0)
while(cap.isOpened()):
    retval, frame = cap.read()
    cv2.imshow('Live', frame)
    if cv2.waitKey(5) >= 0:
        break

Python 如何调用摄像头

正常结果

正常结果:显示出摄像头看到的东西,按任意键窗口才关闭。上述代码在环境在Windows 11,Python 版本 3.9.6下调试通过。以下逐句分析。

逐句分析

import cv2

遇到问题:ModuleNotFoundError: No module named ‘cv2’ 没有模块称作cv2。python需要用到opencv-python模块。可在命令行模式输入:

pip install opencv-python -i https://pypi.douban.com/simple/

-i参数不是必须的。但在这里用-i指定豆瓣源作为依赖下载源速度会更快。

cap = cv2.VideoCapture(0)

声明使用的是默认摄像头,从0依次寻找。具体细节可依照官网docs.opencv.org/3.4/d8/dfe/classcv_1_1VideoCapture.html 的说明。

while(cap.isOpened()):

摄像头状态是开的话不断地刷新。刷新的具体时间写在后面的waitKey()方法中。

retval, frame = cap.read()

依照官网的说明,在刷新的时候设置两个参数接收读取read方法后的返回,尽管retral后面不会用到。

cv2.imshow('Live', frame)

imshow()方法将读取后的内容展示出来。窗口命名Live。

if cv2.waitKey(5) >= 0: 
    break

waitKey()方法是短暂停留5毫秒等待一个输入。依照官网的说明,必须这样配合,画面才能够显示出来。若没有这样的等待,那么只会见到因刷新太快而出现的一个灰色窗口。等待的输入可以是键盘的按键,按照ASCII码表组合,0 以上整数表示任意键。比如27是Esc键、81是Q键,如此类推。

ASCII码

具体方法和功能可参考 OpenCV官网 docs.opencv.org

到此这篇关于关于Python如何调用摄像头的文章就介绍到这了,更多相关Python调用摄像头内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python正则表达re模块之findall()函数详解

    Python正则表达re模块之findall()函数详解

    在python中,通过内嵌集成re模块可以直接调用来实现正则匹配,其中re.findall()函数可以遍历匹配,可以获取字符串中所有匹配的字符串,返回一个列表,这篇文章主要给大家介绍了关于Python正则表达re模块之findall()函数的相关资料,需要的朋友可以参考下
    2022-07-07
  • python+opencv实现视频抽帧示例代码

    python+opencv实现视频抽帧示例代码

    下面是采用以帧数为间隔的方法进行视频抽帧,为了避免不符合项目要求的数据增强,博主要求技术人员在录制视频时最大程度地让摄像头进行移动、旋转以及远近调节等,对python opencv视频抽帧示例代码感兴趣的朋友一起看看吧
    2021-06-06
  • python里使用正则的findall函数的实例详解

    python里使用正则的findall函数的实例详解

    这篇文章主要介绍了python里使用正则的findall函数的实例详解的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-10-10
  • Python3中常用的处理时间和实现定时任务的方法的介绍

    Python3中常用的处理时间和实现定时任务的方法的介绍

    这篇文章主要介绍了Python3中常用的处理时间和实现定时任务的方法,包括循环执行某个任务这样的实现,需要的朋友可以参考下
    2015-04-04
  • Python进行数据提取的方法总结

    Python进行数据提取的方法总结

    数据提取是分析师日常工作中经常遇到的需求。如某个用户的贷款金额,某个月或季度的利息总收入,某个特定时间段的贷款金额和笔数,大于5000元的贷款数量等等。本篇文章介绍如何通过python按特定的维度或条件对数据进行提取,完成数据提取需求。
    2016-08-08
  • Python中生成ndarray实例讲解

    Python中生成ndarray实例讲解

    在本篇文章里小编给大家整理的是一篇关于Python中生成ndarray实例讲解内容,有兴趣的朋友们可以学习参考下。
    2021-02-02
  • 关于 Python opencv 使用中的 ValueError: too many values to unpack

    关于 Python opencv 使用中的 ValueError: too many values to unpack

    这篇文章主要介绍了关于 Python opencv 使用中的 ValueError: too many values to unpack,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-06-06
  • 利用python批量给云主机配置安全组的方法教程

    利用python批量给云主机配置安全组的方法教程

    这篇文章主要给大家介绍了利用python批量给云主机配置安全组的方法教程,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编一起来学习学习吧。
    2017-06-06
  • Pandas_cum累积计算和rolling滚动计算的用法详解

    Pandas_cum累积计算和rolling滚动计算的用法详解

    今天小编就为大家分享一篇Pandas_cum累积计算和rolling滚动计算的用法详解,具有好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • Python利用正则表达式实现计算器算法思路解析

    Python利用正则表达式实现计算器算法思路解析

    这篇文章主要介绍了Python利用正则表达式实现计算器算法思路解析,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2018-04-04

最新评论