MCPcopy Create free account
hub / github.com/Pixel-Talk/EHM-Tracker / forward

Method forward

src/modules/pixie/models/hrnet.py:425–497  ·  view source on GitHub ↗
(self, x)

Source from the content-addressed store, hash-verified

423 return nn.Sequential(*modules), num_inchannels
424
425 def forward(self, x):
426 x = self.conv1(x)
427 x = self.bn1(x)
428 x = self.relu(x)
429 x = self.conv2(x)
430 x = self.bn2(x)
431 x = self.relu(x)
432 x = self.layer1(x)
433
434 x_list = []
435 for i in range(self.stage2_cfg['num_branches']):
436 if self.transition1[i] is not None:
437 x_list.append(self.transition1[i](x))
438 else:
439 x_list.append(x)
440 y_list = self.stage2(x_list)
441
442 x_list = []
443 for i in range(self.stage3_cfg['num_branches']):
444 if self.transition2[i] is not None:
445 if i < self.stage2_cfg['num_branches']:
446 x_list.append(self.transition2[i](y_list[i]))
447 else:
448 x_list.append(self.transition2[i](y_list[-1]))
449 else:
450 x_list.append(y_list[i])
451 y_list = self.stage3(x_list)
452
453 x_list = []
454 for i in range(self.stage4_cfg['num_branches']):
455 if self.transition3[i] is not None:
456 if i < self.stage3_cfg['num_branches']:
457 x_list.append(self.transition3[i](y_list[i]))
458 else:
459 x_list.append(self.transition3[i](y_list[-1]))
460 else:
461 x_list.append(y_list[i])
462 if not self.use_old_impl:
463 y_list = self.stage4(x_list)
464
465 output = {}
466 for idx, x in enumerate(y_list):
467 output[f'layer{idx + 1}'] = x
468
469 feat_list = []
470 if self.use_old_impl:
471 x3 = self.subsample_3(x_list[1])
472 x2 = self.subsample_2(x_list[2])
473 x1 = x_list[3]
474 feat_list = [x3, x2, x1]
475 else:
476 x4 = self.subsample_4(y_list[0])
477 x3 = self.subsample_3(y_list[1])
478 x2 = self.subsample_2(y_list[2])
479 x1 = y_list[3]
480 feat_list = [x4, x3, x2, x1]
481
482 xf = self.conv_layers(torch.cat(feat_list, dim=1))

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected