如何更改帧分辨率 opencv python



我是openCv的新手,我刚刚用python编写了一个用于实时相机捕获的小程序。我想以像素为单位更改帧大小,从标准的 640x480 更改为 1280x720。我的罗技相机具有高清分辨率(720p(,所以我知道这不是相机问题......

这是代码:

import numpy as np
from time import sleep
import cv2
import time
cap = cv2.VideoCapture(0)
cap.set(3,1280)
cap.set(4,720)
sleep(2)

while(True):
    ret, s = cap.read()
    cv2.imshow('frame', s)
    if cv2.waitKey(20) & 0xFF == ord('q'):
        break

cap.release()
cv2.destroyAllWindows()

但是当我运行它时,我收到此错误:

================== RESTART: C:/Users/Mattia/Desktop/fgs.py ==================
    Traceback (most recent call last):
      File "C:/Users/Mattia/Desktop/fgs.py", line 18, in <module>
        cv2.imshow('frame', s)
    cv2.error: OpenCV(4.0.0) C:projectsopencv-pythonopencvmoduleshighguisrcwindow.cpp:350: error: (-215:Assertion failed) size.width>0 && size.height>0 in function 'cv::imshow'

我正在使用python 3.6和openCv 4.0

有人可以帮助我吗?谢谢!

我发现了问题,openCV 4.0.0.21有一个错误,它只是无缘无故地显示错误,我只是更改为较旧的 openCV 版本,它刚刚工作!

要卸载 openCV(使用 Pip,在 Windows 10 上,使用 CMD 管理员窗口(:

pip uninstall opencv-contrib-python

安装旧版本的命令:

pip install opencv-python==(Version you wanna install, i installed 3.1.0.5)

相关内容

  • 没有找到相关文章

最新更新