MCPcopy Create free account
hub / github.com/OpenImagingLab/FlashVSR / __init__

Method __init__

diffsynth/models/wan_video_vae.py:85–119  ·  view source on GitHub ↗
(self, dim, mode)

Source from the content-addressed store, hash-verified

83class Resample(nn.Module):
84
85 def __init__(self, dim, mode):
86 assert mode in ('none', 'upsample2d', 'upsample3d', 'downsample2d',
87 'downsample3d')
88 super().__init__()
89 self.dim = dim
90 self.mode = mode
91
92 # layers
93 if mode == 'upsample2d':
94 self.resample = nn.Sequential(
95 Upsample(scale_factor=(2., 2.), mode='nearest-exact'),
96 nn.Conv2d(dim, dim // 2, 3, padding=1))
97 elif mode == 'upsample3d':
98 self.resample = nn.Sequential(
99 Upsample(scale_factor=(2., 2.), mode='nearest-exact'),
100 nn.Conv2d(dim, dim // 2, 3, padding=1))
101 self.time_conv = CausalConv3d(dim,
102 dim * 2, (3, 1, 1),
103 padding=(1, 0, 0))
104
105 elif mode == 'downsample2d':
106 self.resample = nn.Sequential(
107 nn.ZeroPad2d((0, 1, 0, 1)),
108 nn.Conv2d(dim, dim, 3, stride=(2, 2)))
109 elif mode == 'downsample3d':
110 self.resample = nn.Sequential(
111 nn.ZeroPad2d((0, 1, 0, 1)),
112 nn.Conv2d(dim, dim, 3, stride=(2, 2)))
113 self.time_conv = CausalConv3d(dim,
114 dim, (3, 1, 1),
115 stride=(2, 1, 1),
116 padding=(0, 0, 0))
117
118 else:
119 self.resample = nn.Identity()
120
121 def forward(self, x, feat_cache=None, feat_idx=[0]):
122 b, c, t, h, w = x.size()

Callers

nothing calls this directly

Calls 3

UpsampleClass · 0.85
CausalConv3dClass · 0.70
__init__Method · 0.45

Tested by

no test coverage detected