Python在不关闭脚本的情况下关闭摄影机(CV)
我正在尝试制作一个脚本,用USB网络摄像机制作一些图片,并将它们存储在一个目录中。这些照片后来被用于人脸识别。一切都很好,但相机总是嗡嗡作响,所以我无法使用人脸识别或从其他用户那里拍摄更多照片。当我退出脚本时,相机关闭,但我不想重新打开它 代码:Python在不关闭脚本的情况下关闭摄影机(CV),python,camera,Python,Camera,我正在尝试制作一个脚本,用USB网络摄像机制作一些图片,并将它们存储在一个目录中。这些照片后来被用于人脸识别。一切都很好,但相机总是嗡嗡作响,所以我无法使用人脸识别或从其他用户那里拍摄更多照片。当我退出脚本时,相机关闭,但我不想重新打开它 代码: import cv2.cv as cv import cv2 def fotos(): print "Vul de naam van de nieuwe gebruiker in" pri
import cv2.cv as cv
import cv2
def fotos():
print "Vul de naam van de nieuwe gebruiker in"
print "Dit Proces kan een aantal seconden duren.\nBlijf in de camera kijken tot het menu weer verschijnt."
Naam = raw_input("--> ")
directory = 'Fotos/'+ Naam + '/'
if not os.path.exists(directory):
os.makedirs(directory)
capture = cv.CaptureFromCAM(0)
i = 0
while (i < 50):
time.sleep(0.5)
img = cv.QueryFrame(capture)
cv.SaveImage('Fotos/'+ Naam + '/' + 'pic{:>05}.jpg'.format(i), img)
print("Fotos/" + Naam + '/' + 'pic{' + str(i) + '.jpg')
if cv.WaitKey(10) == 27:
break
i += 1
cv.DestroyWindow('capture')
menu()
我找到了解决办法:
del(camera)
我目前没有安装OpenCV,因此无法尝试您的代码。但是您是否尝试过
cv2.destroyAllWindows()
这就是我的所有CV程序在python3k=cv2.waitKey(30)&0xff中结束的方式,如果k==27:Cap.release()cv2.destroyAllWindows()break
destroyAllWindows()不工作:(我不断发现设备嗡嗡作响的错误。请使用问题上的编辑链接添加其他信息。回答后按钮应仅用于问题的完整答案。-@AlSweigart,这是joey的答案-这绝对不是问题的一部分。不过,它确实需要正确的解释!尽管此代码可能有助于解决问题,但它没有解释为什么和/或如何回答问题。提供此附加上下文将显著提高其长期价值。请您的答案添加解释,包括适用的限制和假设。
del(camera)