Issue
I want to read input from camera and append frame in a list, display the frame from list. The code takes much time to read a frame and display it, after appending into the list.
def test(source_file):
ImagesSequence=[]
i=0
capture = VideoCapture(source_file)
while(1):
ret, frame = capture.read()
while(True):
imshow('Input', frame)
ImagesSequence.append(frame)
imshow('Output',ImagesSequence[i].astype(np.uint8))
i=i+1
if cv2.waitKey(60) & 0xFF == ord('q'):
break
return ImagesSequence
test(0)
Solution
As Christoph pointed out, you have an actual infinite loop running in the program, removing it will fix your program.
def test(source_file):
ImagesSequence=[]
i=0
capture = cv2.VideoCapture(source_file)
while True:
ret, frame = capture.read()
cv2.imshow('Input', frame)
ImagesSequence.append(frame)
cv2.imshow('Output',ImagesSequence[i].astype(np.uint8))
i=i+1
if cv2.waitKey(1) & 0xFF == ord('q'):
break
return ImagesSequence
test(0)
Answered By - veedata
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.