K00B404 commited on
Commit
071bd98
·
verified ·
1 Parent(s): 9ba87f1

Create 1024_model.py

Browse files
Files changed (1) hide show
  1. 1024_model.py +36 -0
1024_model.py ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ class UNet(nn.Module):
2
+ def __init__(self):
3
+ super(UNet, self).__init__()
4
+
5
+ # Encoder
6
+ self.encoder = nn.Sequential(
7
+ nn.Conv2d(3, 64, kernel_size=4, stride=2, padding=1), # 256 -> 128
8
+ nn.ReLU(inplace=True),
9
+ nn.Conv2d(64, 128, kernel_size=4, stride=2, padding=1), # 128 -> 64
10
+ nn.ReLU(inplace=True),
11
+ nn.Conv2d(128, 256, kernel_size=4, stride=2, padding=1), # 64 -> 32
12
+ nn.ReLU(inplace=True),
13
+ nn.Conv2d(256, 512, kernel_size=4, stride=2, padding=1), # 32 -> 16
14
+ nn.ReLU(inplace=True),
15
+ nn.Conv2d(512, 1024, kernel_size=4, stride=2, padding=1), # 16 -> 8
16
+ nn.ReLU(inplace=True)
17
+ )
18
+
19
+ # Decoder
20
+ self.decoder = nn.Sequential(
21
+ nn.ConvTranspose2d(1024, 512, kernel_size=4, stride=2, padding=1), # 8 -> 16
22
+ nn.ReLU(inplace=True),
23
+ nn.ConvTranspose2d(512, 256, kernel_size=4, stride=2, padding=1), # 16 -> 32
24
+ nn.ReLU(inplace=True),
25
+ nn.ConvTranspose2d(256, 128, kernel_size=4, stride=2, padding=1), # 32 -> 64
26
+ nn.ReLU(inplace=True),
27
+ nn.ConvTranspose2d(128, 64, kernel_size=4, stride=2, padding=1), # 64 -> 128
28
+ nn.ReLU(inplace=True),
29
+ nn.ConvTranspose2d(64, 3, kernel_size=4, stride=2, padding=1), # 128 -> 256
30
+ nn.Tanh() # Output range [-1, 1]
31
+ )
32
+
33
+ def forward(self, x):
34
+ enc = self.encoder(x)
35
+ dec = self.decoder(enc)
36
+ return dec