Боюсь, что я столкнулся с чем-то, что немного выходит за рамки моих способностей новичков. Краткое резюме проблемы: Я пытаюсь захватить живой видеопоток во время эксперимента (используя OpenSesame) с веб-камеры, используя модуль OpenCV python. Я могу заставить его работать, но моя проблема заключается в том, что код всплывает, открывая новое окно, чтобы показать живой поток, который он записывает. Как мне изменить этот код, чтобы НЕ показывать живое окно, но все же можно нажать «q», чтобы отключить прямой эфир?Захват веб-камеры OpenCV
import numpy as np
import cv2
subject = str(self.get('subject_nr'))
cap = cv2.VideoCapture(0)
w=int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
h=int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
#Define the codec and create VideoWriter object
#fourcc = cv2.VideoWriter_fourcc(*'DIVX')
fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter('path\to\output'+ subject + '.avi', -1, 20.0, (w,h))
while(cap.isOpened()):
ret, frame = cap.read()
if ret==True:
out.write(frame)
cv2.imshow('frame',frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
else:
break
#Release everything if job is finished
cap.release()
out.release()
cv2.destroyAllWindows()
Вы можете попробовать комментирования 'cv2.imshow ('кадр', кадр)' и 'попробовать если ((cv.waitKey (1) & 0xFF == Ord ('д')) сломаться;' –
Ah , спасибо за ваш ответ! Мы приближаемся! Код запускается и записывается, но я все еще не могу использовать нажатие клавиши, чтобы освободить задание. – DrPineapple
Можете ли вы попробовать нажатие клавиши с активной консолью? –