cv2.VideoCapture(0)获取USB摄像头失败解决方案
问题:台式机没有摄像头,外接USB摄像头,通过 cv2.VideoCapture(0)捕获视频图像报错
[ WARN:0] videoio(MSMF): OnReadSample() is called with error status: -2147024809
[ WARN:0] videoio(MSMF): async ReadSample() call is failed with error status: -2147024809
[ WARN:1] videoio(MSMF): can't grab frame. Error: -2147024809
[ WARN:1] terminating async callback
如果是在笔记本上,默认摄像头是自带的那个摄像头,索引号为0,可是如果外接USB摄像头,它的索引号就不一定是0 ,或者像大多数博客中写道的1,2,3……
解决方案:修改源代码,循环暴力破解摄像头设备ID
import cv2
ID = 0
while(1):cap = cv2.VideoCapture(ID)# get a frameret, frame = cap.read()if ret == False:ID += 1else:print(ID)break
[ WARN:0] videoio(MSMF): OnReadSample() is called with error status: -2147024809
[ WARN:0] videoio(MSMF): async ReadSample() call is failed with error status: -2147024809
[ WARN:1] videoio(MSMF): can't grab frame. Error: -2147024809
[ WARN:1] terminating async callback
700
因此,我们得到自己的摄像头ID为700,然后将ID = 0 替换为700 ,就可以了!!!
import cv2
ID = 700
cap = cv2.VideoCapture(ID)
while(1):# get a frameret, frame = cap.read()# show a framecv2.imshow("capture", frame)if cv2.waitKey(1) & 0xFF == ord('q'):break
cap.release()
cv2.destroyAllWindows()
程序段里:
1、cap = cv2.VideoCapture(0)
VideoCapture()中参数是0,表示打开笔记本的内置摄像头,其他数字则代表其他设备;参数是视频文件路径则打开视频,如cap = cv2.VideoCapture(“../test.avi”)
2、ret,frame = cap.read()
cap.read()按帧读取视频,ret,frame是获cap.read()方法的两个返回值。其中ret是布尔值,如果读取帧是正确的则返回True,如果文件读取到结尾,它的返回值就为False。frame就是每一帧的图像,是个三维矩阵。
cv2.VideoCapture(0)获取USB摄像头失败解决方案相关推荐
- Win10+OpenCV无法正常读取USB摄像头数据解决方案
采用OpenCV中的VideoCapture类获取USB摄像头的数据时,使用下列代码 VideoCapture VideoStream(0);if (!VideoStream.isOpened()) ...
- Win10+OpenCV4.5 无法正常读取USB摄像头数据解决方案
借鉴了这个博客. 采用OpenCV中的VideoCapture类获取USB摄像头的数据时,使用下列代码 #include "pch.h" #include "highgu ...
- cap = cv2.VideoCapture(0).read()摄像头读取图片用法
flag, img_rd =cv2.VideoCapture(0).read() #功能:读取一帧的图片 #参数:无 #返回值:flag:bool值:True:读取到图片, False:没有读取到图片 ...
- python调用usb摄像头_Python通过cv2读取多个USB摄像头
本文实例为大家分享了Python通过cv2读取多个USB摄像头的具体代码,供大家参考,具体内容如下 通过 cv2 可以轻易的拿到摄像头数据. 比如以下几步就能打开摄像头显示,并通过 q 键保存图片 i ...
- 解决opencv中cv2.VideoCapture()函数打开USB视频慢的问题
解决opencv中cv2.VideoCapture()函数打开USB视频慢的问题!!! cv2.VideoCapture(0)打开电脑自带摄像头比cv2.VideoCapture(1)打开usb慢好多 ...
- cv2.VideoCapture(0)
程序段里, 1.cap = cv2.VideoCapture(0) VideoCapture()中参数是0,表示打开笔记本的内置摄像头,参数是视频文件路径则打开视频,如cap = cv2.VideoC ...
- 第三阶段应用层——2.4 视频监控—从0写USB摄像头驱动(1)-描述符的分析与打印
视频监控-从0写USB摄像头驱动(1)-描述符的分析与打印 硬件平台:韦东山嵌入式Linxu开发板(S3C2440.v3) 软件平台:运行于VMware Workstation 12 Player下U ...
- [转载]树莓派新版系统上使用mjpg-streamer获取USB摄像头和树莓派专用摄像头RaspiCamera图像...
树莓派新版系统上使用mjpg-streamer获取USB摄像头和树莓派专用摄像头RaspiCamera图像 网上有很多关于mjpg-stream移植到树莓派的文章,大部分还是使用的sourceforg ...
- FFmpeg实现获取USB摄像头视频流测试代码
通过USB摄像头(注:windows7/10下使用内置摄像头,linux下接普通的usb摄像头(Logitech))获取视频流用到的模块包括avformat和avdevice.头文件仅include ...
最新文章
- Python打包PyPI上传实践
- nefu 628 扩展卢卡斯
- 使用display inline-block 布局时,出现的间距问题的解决办法和相关说明
- r语言用行名称提取数据框信息显示na_学会这些R语言技巧至少可以节省半年时间...
- async/await和Promise区别
- 解析大型.NET ERP系统 高质量.NET代码设计模式
- 30天提升技术人的写作力-第七天
- HarmonyOS 组件篇
- paip.URL跳转漏洞欺骗用户名密码
- 常用生活必备在线网页软件
- excel冻结窗口怎么设置_说说Word和Excel表头共享,全部方法供你选择
- 思科C9500交换机介绍及光模块解决方案
- BMP图片-文件头部信息
- xshell突然连接不上
- HNU数据结构哈夫曼树建立
- html 按钮位于div底部,css按钮定位在div底部
- From Shadow Generation to Shadow Removal (CVPR2021)阅读笔记
- New Bing已经出来了,怎么防止Bing跳转到国内版(cn.bing.com)?
- 推荐5个免费的字体转换网站工具
- 5月29号,Python列表
热门文章
- 嵌入式工程师的日常是啥样的?就业现状如何?
- Visual Studio 默认编码为 utf-8
- java交通信号灯毕业论文范文_信号灯设计论文,关于基于FPGA的交通信号灯控制系统设计相关参考文献资料-免费论文范文...
- C++实现LR(1)分析表的构造
- Don Box博客中文版志愿者翻译已招募
- 设计幸运大转盘h5小游戏总结
- map、set、multimap和multiset的使用【STL】
- 云教室桌面虚拟化环境搭建——flexVDI Dashboard 3.0 云桌面管理系统的使用
- 什么是HTTPS,与HTTP的区别?
- STC12驱动PCF8575