MCPcopy Create free account
hub / github.com/ActiveVisionLab/DFNet / __init__

Method __init__

script/feature/dfnet.py:83–107  ·  view source on GitHub ↗
(self, feat_dim=12, places365_model_path='')

Source from the content-addressed store, hash-verified

81 std = [0.229, 0.224, 0.225]
82
83 def __init__(self, feat_dim=12, places365_model_path=''):
84 super(DFNet, self).__init__()
85
86 self.layer_to_index = {k: v for v, k in enumerate(vgg16_layers.keys())}
87 self.hypercolumn_indices = [self.layer_to_index[n] for n in self.default_conf['hypercolumn_layers']] # [2, 14, 28]
88
89 # Initialize architecture
90 vgg16 = models.vgg16(pretrained=True)
91
92 self.encoder = nn.Sequential(*list(vgg16.features.children()))
93
94 self.scales = []
95 current_scale = 0
96 for i, layer in enumerate(self.encoder):
97 if isinstance(layer, torch.nn.MaxPool2d):
98 current_scale += 1
99 if i in self.hypercolumn_indices:
100 self.scales.append(2**current_scale)
101
102 ## adaptation layers, see off branches from fig.3 in S2DNet paper
103 self.adaptation_layers = AdaptLayers(self.default_conf['hypercolumn_layers'], self.default_conf['output_dim'])
104
105 # pose regression layers
106 self.avgpool = nn.AdaptiveAvgPool2d(1)
107 self.fc_pose = nn.Linear(512, feat_dim)
108
109 def forward(self, x, return_feature=False, isSingleStream=False, return_pose=True, upsampleH=240, upsampleW=427):
110 '''

Callers 2

__init__Method · 0.45
__init__Method · 0.45

Calls 1

AdaptLayersClass · 0.70

Tested by

no test coverage detected