【发布时间】:2021-03-23 20:21:46
【问题描述】:
有一个视频,正在处理中。该过程可以在控制台中看到为帧处理 1/1000、2/1000 等。输出视频已经完成,但是如果我想在运行期间查看结果,则会出现灰屏 - 无响应 (screenshot of program running )。
加载movi的代码:
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))
在运行期间显示视频的代码:
cv2.imshow('Video', frame)
怎么看流程?
更新
我使用了 while 循环,我只是不想包含太多代码。 但这里是:
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)
【问题讨论】:
-
我不明白..你使用了while函数吗?并把一个 ret,frame = input_movie.read() 放进去?