Implement a video GAN to create fake videos

Description: 

This is the first atempt to generate a video with 3D GAN.


Dataset:

UCF101-Action Recognition Data Set and Weizmann Action database

Download a sample of the train videos


Dependencies:

1) numpy

2) keras

3) matplotlib

4) skimage

5) skvideo



3D GAN:

1) Discriminator - 3D Convolutional network.

Plot of the Discriminator Model:

3dgan_discriminator

2) Generator -3D Convolutional network.

Plot of the Generator Model:

3dgan_generator

3) Use Adam optimizer and fixed learning rate 0.0002.

4) Use dropout rate 0.4.

Download 3d_video_gan.py


Output:

128 by 128 mp4 videos with 8 frames.

Download predicted video1

Download predicted video2



Conclusion:

1) 3D GAN alone cannot predict plausible videos

2) Extend training time cannot always create better quality videos

3) The 3D GAN works better for low-resolution videos