0
我正嘗試使用我的攝像頭Trust Spotlight Webcam PRO與Python和OpenCV,並且在程序結束後拿着攝像頭出現問題。即使在Python程序結束後,攝像頭仍然保留
簡單腳本:
import cv2
vc = cv2.VideoCapture(1)
while True:
_, frame = vc.read()
cv2.imshow('Web cam', frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
vc.release()
cv2.destroyAllWindows()
一切運作良好時,我的網絡攝像頭連接到我的筆記本電腦,我運行腳本 - 我看到攝像機圖像。當我通過按'q'鍵停止捕捉循環時,我會認爲vc.release()
命令將攝像機從使用中釋放出來。但是,這第一次運行後,我無法再次運行該腳本,因爲這個時候我得到的錯誤信息:
OpenCV Error: Assertion failed (size.width>0 && size.height>0) in cv::imshow, file ..\..\..\..\opencv\modules\highgui\src\window.cpp, line 261
Traceback (most recent call last):
File ".../sample.py", line 8, in <module>
cv2.imshow('Web cam', frame)
cv2.error: ..\..\..\..\opencv\modules\highgui\src\window.cpp:261: error: (-215) size.width>0 && size.height>0 in function cv::imshow
我敢肯定,一些過程中仍保持我的攝像頭。這段時間我也無法連接到這個網絡攝像頭從任何其他程序(我試過Skype)。當我將網絡攝像頭連接到筆記本電腦,通過Skype連接到網絡攝像頭並運行上面的腳本時,我也會遇到同樣的錯誤。
如何釋放我的攝像頭以供將來使用?