在我的tkinter
GUI中显示了视频,用户可以获取视频的快照。现在,我正在尝试保存此快照,但是我不知道该怎么做。由于文件的图像类型,我无法使用常见的Image.save()
视频循环:
def stream(label):
for image in video.iter_data():
global frame_image
frame_image = ImageTk.PhotoImage(Image.fromarray(image))
label.config(image=frame_image)
label.image = frame_image
time.sleep(0.015)
快照功能:
def snapshot():
global frame_image
frame_label.config(image = frame_image)
frame_label.image = frame_image
我尝试了几件事,但似乎无济于事。
试图将其转换为cv2
格式以使用cv2.imwrite
:
open_cv_image = numpy.array(frame_image)
cv2.imwrite("C:\\test.jpg", open_cv_image)
试图使用PIL.Image.open
在新图像中打开它:
pic = Image.open(frame_image).convert("RGB")
pic.save("C:\\test.jpg")
有什么想法可以最终解决我的问题吗?