Implement a simple GAN with Python and use it to generate Chinese character digits


I choose this project to get familiar with GAN. After training a self-collected Chinese characters numbers from 0 to 9, we expect to get a batch of fake numbers in the same style. I use deep convolutional GAN and self-collected training dataset.


Numbers in Chinese character : 0 to 9

1) In the beginning, I used two sets of hand-writing numbers, which seems too hard to get a better result because of thin strokes

2) Then I chose to use thick strokes numbers

Use the to expand the training dataset to 10,000 pictures.


Deep Convolutional GAN:

Discriminator - With three convolutional layers and one fully-connected layer.

Generator - With three convolutional layers and one fully-connected layer.

Use Adam optimizer and fixed learning rate 0.0002 and momentum term of 0.8.

Use batch normalization in both discriminator and generator and leaky ReLU.



Here is the result after training 20000 epochs.



A high-quality training dataset is critical for GAN.