There is a video, that is being processed. The process can be seen in console as frame processing 1/1000, 2/1000 etc. The output video has done ok, but if i want to see the results during the run, there is a grey screen - not responding ( screenshot of program running ).
Code, where movi is loaded:
input_movie = cv2.VideoCapture(r"test.mp4")
length = int(input_movie.get(cv2.CAP_PROP_FRAME_COUNT))
fourcc = cv2.VideoWriter_fourcc(*'XVID')
output_movie = cv2.VideoWriter('myoutput_01.avi', fourcc, 29.97, (480, 360))
Code to show video duriing the run:
cv2.imshow('Video', frame)
How to see the process?
UPDATE
I used the while cycle, i just didn't want to include much code. But here it is:
while True:
ret, frame = input_movie.read()
frame_number += 1
if not ret:
break
cv2.imshow('Video', frame)
rgb_frame = frame[:, :, ::-1]
face_locations = face_recognition.face_locations(rgb_frame)
face_encodings = face_recognition.face_encodings(rgb_frame, face_locations)
Looking at what you have here; I'm not sure you understood how to deal with videos in opencv-python.
input_movie = cv2.VideoCapture(r"test.mp4")
here will open the test.mp4 video (as maybe you understood). But now, you'll need to tell to opencv to read each frame of this video using a while function and read input_movie
In general, this is how we do:
input_movie = cv2.VideoCapture(r"test.mp4")
while (input_movie.isOpened()):
ret, frame = input_movie.read() # here we extract the frame
cv2.imshow('Video',frame) # here we display it
if cv2.waitKey(1) & 0xFF == ord('q'): # by press 'q' you quit the process
break
input_movie.release() # remove input_movie from memory
cv2.destroyAllWindows() # destroy all opencv windows
more informations here https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_gui/py_video_display/py_video_display.html
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.