mask_lr_lr_feat_lr = self.content_encoder(compressed_lr_feat) #从hr_feat得到另一部分初始低通滤波特征
在初始ALPF生成器过程中,为什么直接使用low resolution特征进行低通核的生成,后续又使用high resolution的低通核对其carafe上采样,且此处代码存在上采样的重复性:mask_lr_lr_feat = F.interpolate( #利用初始低通滤波对另一部分初始低通滤波特征上采样
carafe(mask_lr_lr_feat_lr, mask_lr_init, self.lowpass_kernel, self.up_group, 2), size=compressed_hr_feat.shape[-2:], mode='nearest') 此处 carafe(mask_lr_lr_feat_lr, mask_lr_init, self.lowpass_kernel, self.up_group, 2)已经上采样2倍
最大的问题是原文中的意思是通过high resolution生成的低通核对特征Y进行上采样,另外X自身进行AHPF,后续生成的Z去生成ALPF和AHPF核,但代码中完全没体现这点,代码中的操作对象都是经过content_encoder后的核而不是特征。
最后,原文中强调的Offset Generator也是默认没有启用的,是因为效果不好吗,还是?
mask_lr_lr_feat_lr = self.content_encoder(compressed_lr_feat) #从hr_feat得到另一部分初始低通滤波特征
在初始ALPF生成器过程中,为什么直接使用low resolution特征进行低通核的生成,后续又使用high resolution的低通核对其carafe上采样,且此处代码存在上采样的重复性:mask_lr_lr_feat = F.interpolate( #利用初始低通滤波对另一部分初始低通滤波特征上采样
carafe(mask_lr_lr_feat_lr, mask_lr_init, self.lowpass_kernel, self.up_group, 2), size=compressed_hr_feat.shape[-2:], mode='nearest') 此处 carafe(mask_lr_lr_feat_lr, mask_lr_init, self.lowpass_kernel, self.up_group, 2)已经上采样2倍
最大的问题是原文中的意思是通过high resolution生成的低通核对特征Y进行上采样,另外X自身进行AHPF,后续生成的Z去生成ALPF和AHPF核,但代码中完全没体现这点,代码中的操作对象都是经过content_encoder后的核而不是特征。
最后,原文中强调的Offset Generator也是默认没有启用的,是因为效果不好吗,还是?