我是openCv的新手,我只是用python写了一个小程序来进行实时摄像机捕获。我想将以px为单位的帧大小从标准640x480更改为1280x720。我的Logitech相机具有HD分辨率(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:\projects\opencv-python\opencv\modules\highgui\src\window.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(在Windows 10上使用CMD Administrator窗口使用Pip):
pip uninstall opencv-contrib-python
安装旧版本的命令:pip install opencv-python==(Version you wanna install, i installed 3.1.0.5)
关于python - 如何更改帧分辨率opencv python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54522278/