Method
__init__
(
self,
num_features,
norm_layer,
context_channels=256,
conditions=("ScanNet", "S3DIS", "Structured3D"),
decouple=True,
adaptive=False,
)
Source from the content-addressed store, hash-verified
| 254 | |
| 255 | class PDNorm(PointModule): |
| 256 | def __init__( |
| 257 | self, |
| 258 | num_features, |
| 259 | norm_layer, |
| 260 | context_channels=256, |
| 261 | conditions=("ScanNet", "S3DIS", "Structured3D"), |
| 262 | decouple=True, |
| 263 | adaptive=False, |
| 264 | ): |
| 265 | super().__init__() |
| 266 | self.conditions = conditions |
| 267 | self.decouple = decouple |
| 268 | self.adaptive = adaptive |
| 269 | if self.decouple: |
| 270 | self.norm = nn.ModuleList([norm_layer(num_features) for _ in conditions]) |
| 271 | else: |
| 272 | self.norm = norm_layer |
| 273 | if self.adaptive: |
| 274 | self.modulation = nn.Sequential( |
| 275 | nn.SiLU(), nn.Linear(context_channels, 2 * num_features, bias=True) |
| 276 | ) |
| 277 | |
| 278 | def forward(self, point): |
| 279 | assert {"feat", "condition"}.issubset(point.keys()) |
Callers
nothing calls this directly
Tested by
no test coverage detected