def forward(self, agn, clt):
    feature_agn = self.extraction_agnostic(agn)
    feature_clt = self.extraction_cloth(clt)
    feature_agn = self.l2norm(feature_agn)
    feature_clt = self.l2norm(feature_clt)
    coorelation_0 = self.correlation(feature_agn, feature_clt)
    theta = self.regression_zero(coorelation_0)
    grid_zero = self.gridGen(theta)
    warped_coarse_cloth = F.grid_sample(clt, grid_zero, padding_mode='border')
    feature_wc = self.extraction_warped_cloth(warped_coarse_cloth)
    feature_wc = self.l2norm(feature_wc)
    coorelation_1 = self.correlation(feature_agn, feature_wc)
    delta_theta = self.regression_one(coorelation_1)
    grid_one = self.gridGen(theta.add(delta_theta))
    return (grid_zero, theta, grid_one, delta_theta)
def forward(self, agn, clt):
    feature_agn = self.extraction_agnostic(agn)
    feature_clt = self.extraction_cloth(clt)
    feature_agn = self.l2norm(feature_agn)
    feature_clt = self.l2norm(feature_clt)
    coorelation_0 = self.correlation(feature_agn, feature_clt)
    theta = self.regression_zero(coorelation_0)
    grid_zero = self.gridGen(theta)
    warped_coarse_cloth = F.grid_sample(clt, grid_zero, padding_mode='border')
    feature_wc = self.extraction_warped_cloth(warped_coarse_cloth)
    feature_wc = self.l2norm(feature_wc)
    coorelation_1 = self.correlation(feature_agn, feature_wc)
    delta_theta = self.regression_one(coorelation_1)
    grid_one = self.gridGen(theta.add(delta_theta))
    return (grid_zero, theta, grid_one, delta_theta)