python-----从本地摄像头和网络摄像头截取图片 ,具体代码如下所示:

import cv2

# 获取本地摄像头

# folder_path 截取图片的存储目录

def get_img_from_camera_local(folder_path):

cap = cv2.VideoCapture(0)

i = 1

while True:

ret, frame = cap.read()

cv2.imshow("capture", frame)

print str(i)

cv2.imwrite(folder_path + str(i) + '.jpg', frame) # 存储为图像

if cv2.waitKey(1) & 0xFF == ord('q'):

break

i += 1

cap.release()

cv2.destroyAllWindows()

# 获取网络摄像头,格式:rtsp://username:pwd@ip/

# folder_path 截取图片的存储目录

def get_img_from_camera_net(folder_path):

cap = cv2.VideoCapture('rtsp://username:pwd@ip/')

i = 1

while True:

ret, frame = cap.read()

cv2.imshow("capture", frame)

print str(i)

cv2.imwrite(folder_path + str(i) + '.jpg', frame) # 存储为图像

if cv2.waitKey(1) & 0xFF == ord('q'):

break

i += 1

cap.release()

cv2.destroyAllWindows()

# 测试

if __name__ == '__main__':

folder_path = 'D:\\img_from_camera\\'

get_img_from_camera_local(folder_path)

PS:下面看下用 python , opencv 打开网络摄像头读取图像

打开网络摄像头用如下代码:

###########################################

import cv2

url = 'rtsp://admin:password@192.168.1.104:554/11'

cap = cv2.VideoCapture(url)

while(cap.isOpened()):

# Capture frame-by-frame

ret, frame = cap.read()

# Display the resulting frame

cv2.imshow('frame',frame)

if cv2.waitKey(1) & 0xFF == ord('q'):

break

# When everything done, release the capture

cap.release()

cv2.destroyAllWindows()

############################################

注: 将从摄像头获取的图像从bgr转为rgb : image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

1、cap = cv2.VideoCapture(0)

VideoCapture()中参数是0,表示打开笔记本的内置摄像头,参数是1,表示打开usb摄像头,

参数是视频文件路径则打开视频,如cap = cv2.VideoCapture("../test.avi")

2、ret,frame = cap.read()

cap.read()按帧读取视频,ret,frame是获cap.read()方法的两个返回值。其中ret是布尔值,如果读取帧是正确的则返回True,如果文件读取到结尾,它的返回值就为False。frame就是每一帧的图像,是个三维矩阵。

3、cv2.waitKey(1),waitKey()方法本身表示等待键盘输入,

参数是1,表示延时1ms切换到下一帧图像,对于视频而言;

参数为0,如cv2.waitKey(0)只显示当前帧图像,相当于视频暂停,;

参数过大如cv2.waitKey(1000),会因为延时过久而卡顿感觉到卡顿。

c得到的是键盘输入的ASCII码,esc键对应的ASCII码是27,即当按esc键是if条件句成立

4、调用release()释放摄像头,调用destroyAllWindows()关闭所有图像窗口。

总结

以上所述是小编给大家介绍的python实现从本地摄像头和网络摄像头截取图片功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对龙方网络网站的支持!

如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

python抓取网络摄像头_python实现从本地摄像头和网络摄像头截取图片功能相关推荐

  1. python抓取数据库数据_Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储...

    Python爬虫可以说是好玩又好用了.现想利用Python爬取网页股票数据保存到本地csv数据文件中,同时想把股票数据保存到MySQL数据库中.需求有了,剩下的就是实现了. 在开始之前,保证已经安装好 ...

  2. python抓取数据包_python抓数据包

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 前言:数据科学越来越火了,网页是数据很大的一个来源. 最近很多人问怎么抓网页数据 ...

  3. python抓取微博数据_Python爬虫实现半自动发微博

    Python实现半自动发微博[用COOKIES代替模拟登录:用WAP版微博代替网页版微博:每次还要改post数据的URL...半半自动的感觉] 微博的内容是从糗事百科抓取的最热段子以及某网站的每日晚安 ...

  4. python抓取微博评论_Python爬取新浪微博评论数据,你有空了解一下?

    开发工具 Python版本:3.6.4 相关模块: argparse模块: requests模块: jieba模块: wordcloud模块: 以及一些Python自带的模块. 环境搭建 安装Pyth ...

  5. python抓取网页信息_python抓取网页中的动态数据

    一.概念 网页中的许多数据并不是写死在HTML中的,而是通过js动态载入的.所以也就引出了什么是动态数据的概念,动态数据在这里指的是网页中由Javascript动态生成的页面内容,是在页面加载到浏览器 ...

  6. python抓取股票数据_Python股票处理之一_获取国内股票数据

    1. 安装支持库 $ pip install panda $ pip install tushare 2. 说明 Pandas是数据分析工具包 TuShare是国内股票数据抓取工具,除了股票的实时和历 ...

  7. [python]抓取啄木鸟社区《活学活用wxPython》内容与图片

    请参考crifan的博文如何用Python,C#等语言去实现抓取静态网页+抓取动态网页+模拟登陆网站  这是我看到的关于爬取与模拟登陆最详尽的一个系列,总结整理了很多,获益不少 编辑 20130105 ...

  8. python抓取表格数据_Python如何实现从PDF文件中爬取表格数据(代码示例)

    本篇文章给大家带来的内容是关于Python如何实现从PDF文件中爬取表格数据(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 本文将展示一个稍微不一样点的爬虫. 以往我们的 ...

  9. python抓取招聘数据_Python爬取招聘网站数据并做数据可视化处理

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 以下文章来源于青灯编程 ,作者:清风 前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有 ...

  10. python 抓取 实时公交_Python实现命令行监控北京实时公交之二

    开头先放上效果展示 在命令行输入 python bus.py -i,显示app基本信息,如下: 在命令行输入 python bus.py 438,显示北京438路公交车的位置,如下: 红色的B说明在梅 ...

最新文章

  1. 【深度学习】初识tensorflow之分布式训练
  2. (2.13)Mysql之SQL基础——触发器
  3. 【PHP 】伪静态 - 4. 实际运用
  4. Android插件化开发之AMS与应用程序(客户端ActivityThread、Instrumentation、Activity)通信模型分析
  5. 2019 java值得学吗_Java认证值得吗?
  6. ewsa 字典_汉语字典小程序
  7. SpringCloud工作笔记047---FastJson解析多级JSON_FastJson解析嵌套JSON_FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
  8. 当数据处理做不到实时,应该怎么办?
  9. 学习算法的网址【原创】
  10. Hbase0.96 MVCC Lock 知识梳理
  11. linux dump备份svn,svnadmin dump+load库中的某个目录用svndumpfilter 可实现
  12. 【Steam】各种Steam致命错误-Steam需要在线进行更新什么意思。请确保你的网络连接正常,请重试。
  13. arduino 有源 蜂鸣器_(二十)arduino入门:蜂鸣器的使用
  14. Unity3d 微信小程序游戏
  15. 雅典娜暴利烹饪系列(下)
  16. 智慧工地 | 数字孪生楼宇施工管理平台
  17. c语言怎么做翻译软件,使用有道翻译API做翻译(c语言实现)
  18. 经典PID在智能自寻迹小车中的应用分析
  19. [Swift]LeetCode334. 递增的三元子序列 | Increasing Triplet Subsequence
  20. 基于Pyhton的二维离散正弦变换(DST)及其反变换(IDST)

热门文章

  1. ubuntu22.04下Ethercat IGH DC同步实现
  2. 为什么选择保险经纪人
  3. 计算机硬盘能否做u盘用怎么用,U盘能当电脑硬盘用么
  4. 提取txt文件某一列数据,并保存为txt文件
  5. KubeSphere 社区双周报 | 2022-09-02
  6. 云服务器安装安卓模拟器显示版本过低,安卓模拟器提示系统opengl版本过低无法安装解决办法...
  7. PayPal注册及使用详解
  8. python3基础18
  9. ERROR: syntax error at end of input
  10. 用于视频色彩分级的20个创意LUT