writer.log_video fails to add gif to tensorboard
Traceback (most recent call last):
File "train.py", line 282, in <module>
main()
File "train.py", line 269, in main
perf_metrics = training_run(settings=settings)
File "train.py", line 244, in training_run
model.learn(timesteps=settings["max_timesteps"], callback=callback, start_timesteps=settings["start_timesteps"], incremental_replay_buffer=settings["incremental_replay_buffer"])
File "/home/luke/work/rl_pcb/src/training/TD3.py", line 333, in learn
callback.on_training_end()
File "/home/luke/work/rl_pcb/src/training/callbacks.py", line 191, in on_training_end
self.best_metrics = self.evaluate(model=os.path.join(self.model_path,'best'), tag='final_evals/training_dataset', training_dataset=True, quick_eval=False, periodic=False, long=True)
File "/home/luke/work/rl_pcb/src/training/callbacks.py", line 377, in evaluate
self.log_video(vids=vids, tag=video_tag, global_step=i)
File "/home/luke/work/rl_pcb/src/training/callbacks.py", line 401, in log_video
self.writer.add_video(tag=tag, vid_tensor=vids, global_step=global_step, fps=30)
File "/home/luke/work/rl_pcb/venv/lib/python3.8/site-packages/torch/utils/tensorboard/writer.py", line 773, in add_video
video(tag, vid_tensor, fps), global_step, walltime
File "/home/luke/work/rl_pcb/venv/lib/python3.8/site-packages/torch/utils/tensorboard/summary.py", line 517, in video
video = make_video(tensor, fps)
File "/home/luke/work/rl_pcb/venv/lib/python3.8/site-packages/torch/utils/tensorboard/summary.py", line 544, in make_video
clip.write_gif(filename, verbose=False, logger=None)
File "<decorator-gen-60>", line 2, in write_gif
File "/home/luke/work/rl_pcb/venv/lib/python3.8/site-packages/moviepy/decorators.py", line 54, in requires_duration
return f(clip, *a, **k)
File "<decorator-gen-59>", line 2, in write_gif
File "/home/luke/work/rl_pcb/venv/lib/python3.8/site-packages/moviepy/decorators.py", line 22, in convert_masks_to_RGB
return f(clip, *a, **k)
File "/home/luke/work/rl_pcb/venv/lib/python3.8/site-packages/moviepy/video/VideoClip.py", line 432, in write_gif
write_gif_with_image_io(self, filename, fps=fps, opt=opt, loop=loop,
File "/home/luke/work/rl_pcb/venv/lib/python3.8/site-packages/moviepy/video/io/gif_writers.py", line 285, in write_gif_with_image_io
writer.append_data(frame)
File "/home/luke/work/rl_pcb/venv/lib/python3.8/site-packages/imageio/v2.py", line 215, in append_data
return self.instance.write(im, **self.write_args)
File "/home/luke/work/rl_pcb/venv/lib/python3.8/site-packages/imageio/plugins/pillow.py", line 376, in write
raise ValueError("Can't write images with one color channel.")
ValueError: Can't write images with one color channel.