这里有一段经典摄像头打开并显示画面的代码

import cv2cap = cv2.VideoCapture(0)while(1):# 获得图片ret, frame = cap.read()# 展示图片cv2.imshow("capture", frame)if cv2.waitKey(1) & 0xFF == ord('q'):# 存储图片cv2.imwrite("camera.jpg", frame)breakcap.release()
cv2.destroyAllWindows()

一般电脑是可以运行成功的,但是有的电脑不行,主要体现为:

1.运行时摄像头会打开,过一会会报错python运行出错,并强制停止。

2.有时候会有报错没有属性shape。

困了我一下午的问题。

解决方案:

cv2.CAP_DSHOW是微软定义的一个数 cv::CAP_DSHOW = 700,

可能加了这个数就可以适应电脑(具体我也不清楚,参见opencv介绍)

最终将

#cap = cv2.VideoCapture(0)
#改为
cap = cv2.VideoCapture(0+cv2.CAP_DSHOW)

这种情况同样适用imutils包下的 WebcamVideoStream

#stream = WebcamVideoStream(src=0,name="WebcamVideoStream").start()  # default camera
#改为
stream = WebcamVideoStream(src=0+cv2.CAP_DSHOW).start()  # default camera

关于opencv不能调用本地摄像头,报错没有shape属性相关推荐

  1. OpenCV+python调用本地摄像头并录制视频

    1.调用摄像头并录制视频 from cv2 import cv2 #捕获摄像头帧 cameraCapture = cv2.VideoCapture(0) fps = 30 size=(int(came ...

  2. python 摄像头录视频教程,OpenCV+python调用本地摄像头并录制视频

    1.调用摄像头并录制视频 from cv2 import cv2 #捕获摄像头帧 cameraCapture = cv2.VideoCapture(0) fps = 30 size=(int(came ...

  3. imx8mini openCV mipi摄像头报错: VIDIOC_QUERYCTRL: Inappropriate ioctl for device

    imx8mini openCV摄像头报错: VIDIOC_QUERYCTRL: Inappropriate ioctl for device 简单介绍: 首先来看python 源码 然后是openCV ...

  4. Vue调用本地摄像头权限

    使用电脑本地摄像头的权限 关于如何调用本地摄像头的问题 准备工具 (VS Code,Vue脚手架工具,Element UI) vue调用本地摄像头实现拍照功能,由于调用摄像头有使用权限,只能在本地运行 ...

  5. opencv 编译安装时出现报错 modules/videoio/src/cap_ffmpeg_impl.hpp:585:34: error: ‘AVStream {aka struct AVStre

    目录 1. 报错 2. 报错原因 3. 卸载当前ffmpeg 3.1. 卸载apt安装的ffmpeg 3.2. 卸载编译安装的ffmpeg 4. 编译安装ffmpeg 4.3 4.1. 下载安装包 4 ...

  6. hive导出数据到本地文件报错解决方法

    hive导出数据到本地文件报错解决方法 参考文章: (1)hive导出数据到本地文件报错解决方法 (2)https://www.cnblogs.com/yaopeiyun/p/12232251.htm ...

  7. ROS调用本地摄像头数据并在rviz里显示

    ROS调用本地摄像头数据并在rviz里显示: 1 通过usb_cam驱动包启动摄像头 1.1 创建并编译usb_cam驱动程序 1.2 启动usb_cam_node节点 1.3 在rviz中显示本地摄 ...

  8. 使用 Feign 调用分页接口报错:Method has too many Body parameters(亲测)

    一.背景 接口定义: @ApiOperation(value = "分页查询会话") @PostMapping(Routes.SESSIONS_QUERY) JsonResult& ...

  9. 【MySQL】MySQL 8 IDEA连接本地MySQL报错 Host DESKTOP-MISSMJIJ is not allowed to connect to this serv

    1.背景 在window10 下开发,MySQL 8 IDEA连接本地MySQL报错 MySQL 8 Host DESKTOP-MISSMJIJ is not allowed to connect t ...

最新文章

  1. 今日工作总结及计划: 2022-02-14
  2. 【mysql】mysql的数据库主从(一主一从)
  3. 【Java面试题】正整数A和正整数B 的最小公倍数是指 能被A和B整除的最小的正整数值,设计一个算法,求输入A和B的最小公倍数。
  4. Boost:bimap双图lambda表达式的测试程序
  5. CSS样式:覆盖规则
  6. 云上的数据安全,是企业互联网化发展的生命线!
  7. 映射java是什么_java – 映射,绑定和解析有什么区别?
  8. python自动化测试怎么提高效率_自动化测试更适合缺陷预防,而不是提高测试效率...
  9. ceph luminous 版本 osd掉线处置
  10. 海康威视监控有线/无线安装调试
  11. 微信群怎么添加二狗机器人?
  12. Mockplus 3.2前瞻,五大特色功能让你惊喜!
  13. 【数模/预测】灰色预测
  14. C语言中的类型限定符有哪些?
  15. 数字转换成中文汉字数字
  16. r与python语法_Python和R:我推荐Python的几大理由
  17. 【报告分享】2021年中国植物肉行业洞察白皮书-商业周刊星期零(附下载)
  18. ILI9341的使用之【六】命令二
  19. Convolutional Neural Networks with TensorFlow
  20. 如何使用Python创建AI虚拟助手

热门文章

  1. Tomcat部署在Eclipse
  2. [集中式] SVN的安装与详细使用教程
  3. 实现自动WiFi连接
  4. php yii应用运维,Yii 框架应用(Applications)操作实例详解
  5. IntellIdea+SpingMVC简单项目
  6. (HEM/OHEM)hard negative(example)mining难例挖掘 与focal loss、GHM损失函数
  7. 理解 Linux 网络栈:Linux 网络协议栈简单总结
  8. 自动与Internet时间服务器同步
  9. 期货配资的优势和劣势
  10. gensim安装教程