解决OpenCV使用USB摄像头获取高分辨率视频低帧率、卡、果冻画面的问题

在制作移动设备时遇到USB摄像头使用问题,发现不能通过分线器连接多个摄像头,同时高分辨率下会有严重的卡顿现象。尝试设置opencv的MJPG编码和帧率未见改善。降低摄像头的分辨率到1560*1080,虽然低于设定值,但摄像头会自动调整到接近的高分辨率档位,从而实现流畅运行,避免了卡顿和果冻效果。问题可能是opencv设置与摄像头默认设置冲突所致。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近制作移动设备,需要安置多个usb摄像头到电脑,踩了几个坑,记录一下解决方案。

  1. 不能使用分线器插多个usb摄像头,同一时间只能加载一个。
  2. usb摄像头调高分辨率时,非常卡顿,视频画面像果冻一样,及不流畅

第二个情况具体描述:

摄像头支持1920*1080  60fps,opencv在videocapture后,设置了MJPG和视频尺寸,但依然很卡。

    cv::VideoCapture cap1(1);
	int codec = cv::VideoWriter::fourcc('M', 'J', 'P', 'G');//无法改善!!!!!
	cap1.set(cv::CAP_PROP_FOURCC, codec);//无法改善!!!!!

	cap1.set(cv::CAP_PROP_FRAME_WIDTH, 1920);
	cap1.set(cv::CAP_PROP_FRAME_HEIGHT, 1080);
	cap1.set(cv::CAP_PROP_FPS, 60);//无法改善!!!!!

看到博客说要设置MJPG,并且要用一个变量接收cv::VideoWriter::fourcc('M', 'J', 'P', 'G'),再set(cv::CAP_PROP_FOURCC, c

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值