在OpenCV中更改真实相机分辨率

时间:2019-04-15 13:54:25

标签: python-3.x opencv camera

我正在尝试使用OpenCV拍摄4k图片,但是当我更改分辨率时,图片看起来只是调整大小,而不是更好的质量。

我正在使用OpenCV版本4,Python 3.6,Logitech BRIO 4k网络摄像头和Windows 10。

如果我不更改相机分辨率,则默认为640 x480。如果更改分辨率,则照片看起来像是模糊的,就像它们已经调整大小一样,实际上并不是更好的质量。我可以使用Windows 10上的“摄像头”应用来验证摄像头能否以4k分辨率工作。

这就是我在做什么:

import cv2
cam = cv2.VideoCapture(0)
cam.set(3, 3840)
cam.set(4, 2160)
cv2.namedWindow("test")

while True:
    ret, frame = cam.read()
    cv2.imshow("test", frame)

    if not ret:
        break
    k = cv2.waitKey(1)

    if k%256 == 32:
        # SPACE pressed
        img_name = "opencv_frame.png"
        cv2.imwrite(img_name, frame)
        print("{} written!".format(img_name))

我希望能够更改图片的实际分辨率。

0 个答案:

没有答案