OpenCV能以MJPEG的格式读取摄像头数据吗

 我来答
生生钟程6936
2017-05-30 · TA获得超过2758个赞
知道小有建树答主
回答量:1330
采纳率:0%
帮助的人:420万
展开全部
不太懂linux下的情况,大概了解windows下的情况,估计是类似的。
调用OpenCV的cv::VideoCapture打开摄像头,内部调用的是Direct Show接口(等效于Linux下的v4l2吧),先查找当前电脑已经连接的摄像头设备,然后以cv::VideoCapture构造函数中传入的整数作为下标,访问对应的摄像头,然后直接选取默认的摄像头输出的分辨率,码率和编码格式等,输出摄像头数据。
其实不少摄像头都能够输出多种分辨率,多种码率和多种编码格式的数据,OpenCV为了用户的使用方便把这些操作都简化了。
如果想对摄像头调用进行定制化,可能需要直接调用v4l2进行操作。或者调用FFmpeg进行。
另外,题主提到60fps的是MJPEG格式的,为了获取原始的YUV或者BGR的数据,还需要进行解码和颜色空间转换,FFmpeg是能够做到这些的,干脆直接用FFmpeg算了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式