MCPcopy Create free account
hub / github.com/Meshcapade/difflocks / __init__

Method __init__

models/strand_codec.py:113–153  ·  view source on GitHub ↗
(self, do_vae, out_channels=128, num_pts=256)

Source from the content-addressed store, hash-verified

111
112class StrandEncoder1dCNNWN(nn.Module):
113 def __init__(self, do_vae, out_channels=128, num_pts=256):
114 super(StrandEncoder1dCNNWN, self).__init__()
115
116 self.do_vae = do_vae
117 self.num_pts = num_pts
118
119 # self.training = False
120
121
122 in_channels = 0
123 in_channels += 3 # 3 for xyz
124 in_channels += 3 # 3 for dirs
125
126
127 self.cnn_encoder = torch.nn.Sequential(
128 Conv1dWN_v2(in_channels, 64, kernel_size=4, stride=2, padding=1, padding_mode='replicate'),torch.nn.SiLU(),
129 Conv1dWN_v2(64, 64, kernel_size=4, stride=2, padding=1, padding_mode='replicate'), torch.nn.SiLU(),
130 Conv1dWN_v2(64, 128, kernel_size=4, stride=2, padding=1, padding_mode='replicate'), torch.nn.SiLU(),
131 Conv1dWN_v2(128, 128, kernel_size=4, stride=2, padding=1, padding_mode='replicate'), torch.nn.SiLU(),
132 Conv1dWN_v2(128, 256, kernel_size=4, stride=2, padding=1, padding_mode='replicate'), torch.nn.SiLU(),
133 Conv1dWN_v2(256, 256, kernel_size=4, stride=2, padding=1, padding_mode='replicate'), torch.nn.SiLU(),
134 )
135
136
137 self.aggregate_towards_mean = torch.nn.Sequential(
138 LinearWN_v2(256 * 4, 512), torch.nn.SiLU(),
139 )
140 self.pred_mean = LinearWN_v2(512, out_channels)
141
142 self.aggregate_towards_logstd = torch.nn.Sequential(
143 LinearWN_v2(256 * 4, 512), torch.nn.SiLU(),
144 )
145 self.pred_logstd = LinearWN_v2(512, out_channels)
146
147
148 self.apply(lambda x: kaiming_init(x, False, nonlinearity="silu"))
149 kaiming_init(self.pred_mean, True)
150 kaiming_init(self.pred_logstd, True)
151
152
153 self.tanh = torch.nn.Tanh()
154
155
156 def forward(self, gt_dict):

Callers

nothing calls this directly

Calls 4

Conv1dWN_v2Class · 0.90
LinearWN_v2Class · 0.90
kaiming_initFunction · 0.90
__init__Method · 0.45

Tested by

no test coverage detected