Tensorflow2.0构造Unet网络

时间:2019-12-09 22:31:54   收藏:0   阅读:921

试着用Tensorflow2.0实现Unet网络结构,遇到了一点问题:

Sequential模式下的跳跃连接不知道如何实现,我会继续思考和完善

def make_generator_model():
model = tf.keras.Sequential()
model.add(tf.keras.layers.Conv2D(filters=64,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.LeakyReLU())
model.add(tf.keras.layers.Conv2D(filters=128,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.LeakyReLU())
model.add(tf.keras.layers.Conv2D(filters=256,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.LeakyReLU())
model.add(tf.keras.layers.Conv2D(filters=512,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.LeakyReLU())
model.add(tf.keras.layers.Conv2D(filters=512,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.LeakyReLU())
model.add(tf.keras.layers.Conv2D(filters=512,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.LeakyReLU())
model.add(tf.keras.layers.Conv2D(filters=512,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.LeakyReLU())
model.add(tf.keras.layers.Conv2D(filters=512,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.LeakyReLU())

model.add(tf.keras.layers.Conv2DTranspose(512,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.Dropout(0.5))

model.add(tf.keras.layers.Conv2DTranspose(512,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.Dropout(0.5))

model.add(tf.keras.layers.Conv2DTranspose(512,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.Dropout(0.5))

model.add(tf.keras.layers.Conv2DTranspose(512,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.Dropout(0.5))

model.add(tf.keras.layers.Conv2DTranspose(256,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.Dropout(0.5))

model.add(tf.keras.layers.Conv2DTranspose(128,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.Dropout(0.5))

model.add(tf.keras.layers.Conv2DTranspose(64,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.Dropout(0.5))

model.add(tf.keras.layers.Conv2DTranspose(3,kernel_size=4,strides=2,padding=‘same‘,use_bias=False))
model.add(tf.keras.layers.BatchNormalization())

return model

原文:https://www.cnblogs.com/no-pants/p/12013598.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!