【linux】opencv修改摄像头分辨率

这篇具有很好参考价值的文章主要介绍了【linux】opencv修改摄像头分辨率。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

起因

发现linux系统下调用opencv修改摄像头分辨率,一直修改不成功。

原本

正常在window下面读取摄像头数据是如下代码:

 # capture from web cam
 cap = cv2.VideoCapture(0)
 # set width
 cap.set(3, 1280)
 # set height
 cap.set(4, 720)

 while self._run_flag:
     ret, img = cap.read()
     if ret:
         # do something
         #
 # shut down capture system
 cap.release()

但是在Ubuntu下没办法修改摄像头分辨率,一直都是640x360。

解决

怀疑是摄像头的问题,使用linux下的v4l2查看usb摄像头支持的分辨率

1. 查看目前有的摄像头设备

v4l2-ctl --list-devices

opencv 摄像头分辨率设置,linux,bug解决,opencv,计算机视觉,linux
0代表实际摄像头,1代表虚拟摄像头

2.查看摄像头具体信息

v4l2-ctl --device=/dev/video0 --list-formats-ext

opencv 摄像头分辨率设置,linux,bug解决,opencv,计算机视觉,linux
opencv默认读的是YUYV422,这个相机在这个模式下只有640360,因此修改不了分辨率,如果要修改需要指定解码方式MJPGH264 ,这两个分辨率都支持1280720或1920*1080

cap.set(cv2.CAP_PROP_FOURCC, cv2.VideoWriter_fourcc('M', 'J', 'P', 'G'))
# set width
cap.set(3, 1280)
# set height
cap.set(4, 720)

就可以修改为720*1280的分辨率了。

同理,这个方法也可以用于修改视频帧率。文章来源地址https://www.toymoban.com/news/detail-622078.html

到了这里,关于【linux】opencv修改摄像头分辨率的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 屏幕和摄像头中的视频分辨率P,I,K,MP表示的含义,720p,1080p,2k,5MP

    标准的像素和分辨率是有一定关系的,一般使用 16:9的屏幕尺寸比 (也就是我们常见的电脑屏幕)。 例如1080p,可以认为是1080行,1920列( 可认为是2k )( 1920:1800=16:9 )。 对应的像素 是1920*1080=2,073,600(大概是 200万像素 。也就是 2MP ) 参考: P:表示逐行扫描progressiv

    2024年02月17日
    浏览(185)
  • opencv在linux上调用usb摄像头进行拍照

    一般video1就是usb摄像头

    2024年02月06日
    浏览(45)
  • 【OpenCV-Torch-dlib-ubuntu】Vm虚拟机linux环境摄像头调用方法与dilb模型探究

    随着金秋时节的来临,国庆和中秋的双重喜庆汇聚成一片温暖的节日氛围。在这个美好的时刻,我们有幸共同迎来一次长达8天的假期,为心灵充电,为身体放松,为未来充实自己。今年的国庆不仅仅是家国团聚的时刻,更是展现自我的舞台。我在这个特殊的假期里,决定探究

    2024年02月07日
    浏览(43)
  • Opencv(C++)笔记--打开摄像头、保存摄像头视频

    关键代码语句: ① VideoCapture cam(0); ② cam.read(img); ③ imshow(\\\"cam\\\", img); 关键代码: ①VideoWriter vw ②vw.open(): fourcc指定编码格式(常见编码方式)、 fps指定帧率、 Size指定大小 ③vw.write() 注:在Windows上执行上述代码可能会报以下错误: 解决方法:在输出的网址下载对应版本的库

    2024年02月11日
    浏览(57)
  • 使用OpenCV调用摄像头

    1.创建一个摄像头调用的空项目 2.添加上篇博客里已经改好的属性表——现有属性表 3.返回解决方案资源管理器,在源文件里添加新建项命名为摄像头调用 4.输入以下代码,开始调试,然后就会弹出摄像头 #include opencv2/highgui/highgui.hpp  #include opencv2/imgproc/imgproc.hpp  #include ope

    2024年02月05日
    浏览(45)
  • 【opencv+图像处理】(Gui Features in OpenCV) 1-1摄像头:采集摄像头视频,读取视频帧,录制视频

    本专栏代码总库地址 https://github.com/xiawei20161308104/xv_opencv_tutorials 本节代码路径 xv_opencv_tutorials/VideoRelated/get_started_with_videos.py xv_opencv_tutorials/VideoRelated/get_and_set_video.py xv_opencv_tutorials/VideoRelated/save_video.py 参考官网 https://docs.opencv.org/4.x/d6/d00/tutorial_py_root.html 从设备,可以是摄像

    2024年02月03日
    浏览(68)
  • openCV使用c#操作摄像头

    效果如下: 1.创建一个winform的窗体项目(框架.NET Framework 4.7.2) 2.Nuget引入opencv的c#程序包(版本最好和我一致) 3.后台代码

    2024年02月13日
    浏览(39)
  • opencv调用海康威视工业摄像头

    opencv调用海康威视工业摄像头需要用到官方接口VideoCapture() 接口:cv2.VideoCapture() 作用:获取本地目录下的视频文件或者使用本电脑的摄像头获取实时数据;  “0” ,调用的是本地电脑摄像头 “1” ,调用的是外接摄像头 打开MVS  正常设置使画面正常  然后找到宽度和长度

    2024年02月13日
    浏览(44)
  • 如何使用Opencv调用电脑摄像头?

    当我们想要使用opencv对视频图像进行处理时,往往第一步便是需要调用电脑摄像头,下面博主将提供两种版本的代码(含详细注释),帮助大家学习如何使用Opencv调用电脑摄像头进行视频录制并保存: 一、C++版本 1. 从相机中读取视频 2. 从文件中读取视频 3. 保存视频 二、P

    2024年02月11日
    浏览(51)
  • opencv人与摄像头距离检测

    参考: https://chtseng.wordpress.com/2018/09/18/%E5%A6%82%E4%BD%95%E4%BC%B0%E7%AE%97%E5%89%8D%E6%96%B9%E4%BA%BA%E7%89%A9%E7%9A%84%E8%B7%9D%E9%9B%A2/ https://blog.csdn.net/captain5339/article/details/128857313

    2024年02月08日
    浏览(60)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包