資源簡介
使用Wgan生成二次元人物頭像,train部分代碼寫的不全,自己根據需求補就行了,數據就使用李宏毅網課上提供的數據,太大了上傳不了,網絡使用的是DenseNet

代碼片段和文件信息
from?GAN.Discriminator?import?discriminator
from?GAN.Generator?import?generator
from?GAN.CreateData?import?read_data
import?tensorflow?as?tf
import?numpy?as?np
from?PIL?import?Image
true_image?=?read_data(‘./dataset/CartoonCharacters/faces‘)
batch_size?=?64
learning_rate?=?1e-4
epochs?=?100
train_steps?=?int(true_image.__len__()/batch_size)?+?1
if?__name__?==?‘__main__‘:
????is_training?=?tf.placeholder(tf.bool)
????dropout_rate?=?tf.placeholder(tf.float32)
????X?=?tf.placeholder(tf.float32[batch_size96963])
????G?=?generator(growth_rate_K=12is_training=is_trainingdropout_rate=dropout_rate).generator(batch_size=batch_size)
????D_real?=?discriminator(growth_rate_K=12is_training=is_trainingdropout_rate=dropout_rate).discriminator(input=X)
????D_fake?=?discriminator(growth_rate_K=12is_training=is_trainingdropout_rate=dropout_rate).discriminator(input=G)
????G_cost?=?-tf.reduce_mean(D_fake)
????D_cost?=?tf.reduce_mean(D_fake)?-?tf.reduce_mean(D_real)
????update_ops?=?tf.get_collection(tf.GraphKeys.UPDATE_OPS)
????with?tf.control_dependencies(update_ops):
????????G_train_op?=?tf.train.AdamOptimizer(learning_rate=learning_rate).minimize(G_cost)
????????D_train_op?=?tf.train.AdamOptimizer(learning_rate=learning_rate).minimize(D_cost)
????sess?=?tf.InteractiveSession()
????sess.run(tf.global_variables_initializer())
????for?epoch?in?range(epochs):
????????for?i?in?range(train_steps):
????????????start?=?i*batch_size
????????????end?=?min((i+1)*batch_sizetrue_image.__len__())
????????????batch?=?true_image[start:end]
????????????feed_dict_real?=?{
????????????????is_training:True
????????????????dropout_rate:0.2
????????????????X:batch
????????????}
????????????feed_dict_fake?=?{
????????????????is_training:True
????????????????dropout_rate:0.2
????????????}
????????????for?j?in?range(05):
????????????????_?D_loss?=?sess.run([D_train_opD_cost]feed_dict=feed_dict_real)
????????????_?G_loss?=?sess.run([G_train_opG_cost]feed_dict=feed_dict_fake)
????????????print(‘Epochs:?{}?training:?{}?D_cost:?{}?G_cost:?{}‘.format(epoch?i?D_loss?G_loss))
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2019-09-27?16:48??tensorflow-GAN-CreateCartoonFaces\
?????目錄???????????0??2019-09-27?17:00??tensorflow-GAN-CreateCartoonFaces\dataset\
?????目錄???????????0??2019-09-27?17:00??tensorflow-GAN-CreateCartoonFaces\dataset\CartoonCharacters\
?????文件????????2102??2019-09-27?16:48??tensorflow-GAN-CreateCartoonFaces\train.py
?????目錄???????????0??2019-09-27?16:52??tensorflow-GAN-CreateCartoonFaces\Network\
?????文件???????????0??2019-09-24?13:37??tensorflow-GAN-CreateCartoonFaces\Network\__init__.py
?????文件????????7218??2019-09-27?13:36??tensorflow-GAN-CreateCartoonFaces\Network\DenseNet.py
?????目錄???????????0??2019-09-27?16:49??tensorflow-GAN-CreateCartoonFaces\GAN\
?????文件???????????0??2019-09-27?12:34??tensorflow-GAN-CreateCartoonFaces\GAN\__init__.py
?????文件?????????290??2019-09-27?16:49??tensorflow-GAN-CreateCartoonFaces\GAN\CreateData.py
?????文件?????????319??2019-09-27?15:11??tensorflow-GAN-CreateCartoonFaces\GAN\Discriminator.py
?????文件?????????825??2019-09-27?16:49??tensorflow-GAN-CreateCartoonFaces\GAN\Generator.py
評論
共有 條評論