小编bli*_*ice的帖子

无法使用 [OpenCV] cv2.VideoCapture.set() 设置帧的宽度和高度

我正在尝试将视频捕获的帧/窗口大小减小到,320x180但我似乎无法做到。我正在使用适用于 Xbox One 的 Windows Kinect,它使用适配器连接到我的电脑。

我曾尝试将 设置cv2.CAP_PROP_FRAME_WIDTH为 320 和cv2.CAP_PROP_FRAME_HEIGHT180,但是一旦我尝试获取它返回的值 1920 和 1080。我还尝试安装和重新安装 Kinect SDK 和驱动程序。

import cv2
import numpy as np

vid = cv2.VideoCapture(0)

vid.set(cv2.CAP_PROP_FRAME_WIDTH, 320)
vid.set(cv2.CAP_PROP_FRAME_HEIGHT, 180)
vid.set(cv2.CAP_PROP_FPS, 25)

print(vid.get(cv2.CAP_PROP_FPS))
print(vid.get(cv2.CAP_PROP_FRAME_WIDTH))

while True:
    ret, frame = vid.read()
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

    # Display the resulting frame
    cv2.imshow('frame', gray)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

vid.release()
cv2.destroyAllWindows()
Run Code Online (Sandbox Code Playgroud)

打印输出

我想帮助了解问题的根源并希望得到解决。

python video opencv video-capture kinect

8
推荐指数
2
解决办法
2万
查看次数

标签 统计

kinect ×1

opencv ×1

python ×1

video ×1

video-capture ×1