码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • opencv python 相机启动慢问题 VideoCapture 感觉c++同理


    着急看去下面看结果

    首先先说一下总共我自己的环境加上我找朋友帮忙测试的环境

    系统 win10 win11 都有

    环境包含 python310 ue整套c++开发环境 前端环境 后端环境

    摄像头牌子 包含

    笔记本自带 雷蛇灵刃15---小米3050ti的游戏本---mac pro m1pro

    usb独立摄像头,为了避免型号误差,直接截图,贵的便宜的都有


     所有机器采用同样的代码,代码如下

    1. import cv2
    2. startTime = time.time()
    3. cap = cv2.VideoCapture(0) # 开摄像头耗时位置
    4. readyTime = time.time()-startTime
    5. print(int(readyTime)) # 打印一波
    6. while cap.isOpened():
    7. success, image = cap.read()
    8. if not success:
    9. continue
    10. nowImage = cv2.flip(image, 1)
    11. cv2.imshow('LJason', nowImage)
    12. if cv2.waitKey(1) & 0xFF == 27:
    13. break
    14. cap.release()

     结果如下

    雷蛇 、小米、奥尼两个、罗技    均启动超过5s慢的起飞

    海康两个、索盈、Mac 基本1s左右


     额。。。我知道这个结果很尴尬。。。

    网上各种方法什么改格式,啥的乱七八糟的,只是能稍微快点

    有一个比较重要

    cap = cv2.VideoCapture(0, cv2.CAP_DSHOW)

    DSHOW确实能快一倍,我测出来的结果比如我常用的罗技

    7s能缩到3s左右

    看起来像是解码方式吧没注意查,因为本质我是想知道为什么启动慢


    当然如果你改了参数,比如更大分辨率,更高帧率,那只会更慢更慢

    1. cap = cv2.VideoCapture(0)
    2. cap.set(cv2.CAP_PROP_FPS, 60)
    3. cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1920)
    4. cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 1080)
    5. cap.set(cv2.CAP_PROP_FOURCC, cv2.VideoWriter_fourcc('M', 'J', 'P', 'G'))

    感受下45s?

    添加DSHOW

    1. cap = cv2.VideoCapture(0, cv2.CAP_DSHOW)
    2. cap.set(cv2.CAP_PROP_FPS, 60)
    3. cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1920)
    4. cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 1080)
    5. cap.set(cv2.CAP_PROP_FOURCC, cv2.VideoWriter_fourcc('M', 'J', 'P', 'G'))

    确实DSHOW很有效果,建议带上吧

  • 相关阅读:
    物联网IOT发展智慧农业 助力乡村振兴
    退化维度详解
    四.STM32F030C8T6 MCU开发之利用 TIM1+ADC1+DMA1 实现5路(3路外部电压模拟信号+内部2路信号)采集
    xilinx FPGA IOB约束使用以及注意事项
    谈谈你对 finalize 方法的理解,该怎样回答才能体现出高水平?浮于表面的答案永远不行!
    webrtc nack
    python+vue+elementui大学生假期志愿者公益网站django
    selenium打开火狐浏览器
    KubeCon热点报告:AIStation调度平台实现RoCE网络下大模型的高效稳定训练
    《最新出炉》系列入门篇-Python+Playwright自动化测试-43-分页测试
  • 原文地址:https://blog.csdn.net/ljason1993/article/details/127433273
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号