关于使用opencv在相机的高分辨率情况下,解决相机输出视频流到opencv窗口卡顿的可行性解决方案

开发环境:Win10系统,深圳市锐尔威视科技有限公司 生产的800W高清摄像头(3840*2160),VS2017

遇到问题:在4k采集模式下,画面卡顿厉害。

通常设置是下面这样的,但是在2K以下还能平稳顺滑输出视频流,但是下面这种方法超过2K以后的分辨率,就会严重卡顿

  1. //1.打开摄像机设备(默认第一个)

  2. cv::VideoCapture cap= cv::VideoCapture(0);

  3. //2.一定要先设置采集格式!!!

  4. cap.set(CV_CAP_PROP_FOURCC, cv::VideoWriter::fourcc('M', 'J', 'P', 'G'));

  5. //3.然后再设置高清采集分辨率

  6. cap.set(CV_CAP_PROP_FRAME_WIDTH, 1920);

  7. cap.set(CV_CAP_PROP_FRAME_HEIGHT, 1080);

解决方式:将设置MJPG的地方挪一下位置,将设置采集模式放到最后,我在项目上就顺利解决了卡顿问题。具体引起卡顿的问题还未找到,还希望有大佬看到后能在评论区告知,但是解决方案就是以下这种。

  1. //1.打开摄像机设备(默认第一个)

  2. cv::VideoCapture cap= cv::VideoCapture(0);

  3. //3.然后再设置高清采集分辨率

  4. cap.set(CV_CAP_PROP_FRAME_WIDTH, 1920);

  5. cap.set(CV_CAP_PROP_FRAME_HEIGHT, 1080);

  6. //2.一定要先设置采集格式!!!

  7. cap.set(CV_CAP_PROP_FOURCC, cv::VideoWriter::fourcc('M', 'J', 'P', 'G'));

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值