我正在尝试对视频进行面部识别。我的目标是每10秒抓取一个框架,检查是否有脸,然后显示框架和脸框(如果有)。
我正在使用ffmpeg读取视频帧(正在工作)。现在,我只是尝试使用matplotlib.animation来显示新的视频帧。我有一个读取视频的函数get_frame()。
import matplotlib.animation as animation
fnum = 100
fig = plt.figure()
#print(get_frame(fnum).shape)
img = plt.imshow(get_frame(fnum), animated=True)
def init():
global fnum, img
img.set_data(get_frame(fnum))
print(type([img]))
return [img]
def updatefig(frame):
global fnum
fnum += 300
print(frame,fnum)
img.set_data(get_frame(fnum))
print(type((img,)))
return (img,)
ani = animation.FuncAnimation(fig, updatefig, frames=20, interval=2000, blit=True)
plt.show()
我只得到一帧显示,结束。