【问题标题】:Switch between 640x480 and 640x360 resolution in OpenCV在 OpenCV 中切换 640x480 和 640x360 分辨率
【发布时间】:2021-02-15 10:14:04
【问题描述】:

我使用 OpenCV 4.3 和 c++ 和 VideoCapture 从罗技 C922 Pro 网络摄像头获取视频流。

我正在改变分辨率

cap.set(CAP_PROP_FRAME_HEIGHT,height)
cap.set(CAP_PROP_FRAME_WIDTH,width)

在我使用 640x480 或 640x360 的分辨率之前,这可以正常工作。在这种情况下,OpenCV 保持之前的纵横比(启动时为 640x480)。

有没有一种有效的方法可以将分辨率更改为正确的,而不是之前更改为另一个?

【问题讨论】:

    标签: opencv webcam


    【解决方案1】:

    CAP_PROP_FRAME_HEIGHTCAP_PROP_FRAME_WIDTH 用于切换相机的分辨率。如果您的相机不支持您设置的分辨率,则代码将不起作用。如果您检查specs of Logitech C922,您会发现它不包含您想要的分辨率。

    您还可以应用其他选项:

    1- 您可以从主框架中裁剪所需的尺寸(例如 640,360)。

    2- 您可以resize 帧,但这会导致纵横比崩溃。

    【讨论】:

    • 我只能找到 1080/30 或 720/60 的“最大分辨率”。正如我所写,可以设置所需的分辨率,但绕道而行。此外,我可以使用这些命令设置许多其他分辨率。
    猜你喜欢
    • 1970-01-01
    • 2016-03-24
    • 2012-12-24
    • 2017-08-01
    • 1970-01-01
    • 2016-04-22
    • 1970-01-01
    • 2018-02-03
    • 2011-09-06
    相关资源
    最近更新 更多