def __call__()

in jcm/models/lpips.py [0:0]


    def __call__(self, x, t):
        x = self.vgg((x + 1) / 2)
        t = self.vgg((t + 1) / 2)

        feats_x, feats_t, diffs = {}, {}, {}
        for i, f in enumerate(self.feature_names):
            feats_x[i], feats_t[i] = normalize_tensor(x[f]), normalize_tensor(t[f])
            diffs[i] = (feats_x[i] - feats_t[i]) ** 2

        # We should maybe vectorize this better
        res = [
            spatial_average(self.lins[i](diffs[i]), keepdims=True)
            for i in range(len(self.feature_names))
        ]

        val = res[0]
        for i in range(1, len(res)):
            val += res[i]
        return val