StyleGAN_PyTorch icon indicating copy to clipboard operation
StyleGAN_PyTorch copied to clipboard

Some questions about `networks_stylegan.py`

Open XiaoqiangZhou opened this issue 5 years ago • 4 comments

Thanks for your reimplementation!

  1. In networks_stylegan.py, line 107 f = f[:, :, ::-1, ::-1], I think you should consider use f = torch.flip(f, [2, 3])
  2. In networks_stylegan.py, line 247, x = self.noise(x, noise), I think you should consider add a condition judgement before this line, like if self.noise is not None:
  3. In defination of forward function of the class GBlock, do you miss a 3x3 convolution between upsmaple and the first adaIn1?

XiaoqiangZhou avatar Aug 08 '19 04:08 XiaoqiangZhou

Thanks a lot! It has been a few months that I haven't kept pace with progress in PyTorch, could you please explain is there a difference between f = f[:, :, ::-1, ::-1] and torch.flip(f, [2, 3])? The advice 2, 3 looks good to me, you could pull request a version to improve it and i will have it look and merge if it works well.

^.^ Samuel

tomguluson92 avatar Aug 09 '19 02:08 tomguluson92

Thanks for your reply. For the first problem, if you use [::-1] index for a torch.tensor, you will get an error ValueError: negative step not yet supported, i.e., cannot flip a torch.tensor like numpy array. Besides, I'm working on this project and it will be my pleasure to pull a request later.

XiaoqiangZhou avatar Aug 09 '19 02:08 XiaoqiangZhou

Thanks for your reply. For the first problem, if you use [::-1] index for a torch.tensor, you will get an error ValueError: negative step not yet supported, i.e., cannot flip a torch.tensor like numpy array. Besides, I'm working on this project and it will be my pleasure to pull a request later.

Thanks!

tomguluson92 avatar Aug 09 '19 02:08 tomguluson92

Thanks for your reimplementation!

  1. In networks_stylegan.py, line 107 f = f[:, :, ::-1, ::-1], I think you should consider use f = torch.flip(f, [2, 3])
  2. In networks_stylegan.py, line 247, x = self.noise(x, noise), I think you should consider add a condition judgement before this line, like if self.noise is not None:
  3. In defination of forward function of the class GBlock, do you miss a 3x3 convolution between upsmaple and the first adaIn1?

Did you find the answer for 3? I was thinking the same about missing a convolution between upsample and first adaln1 so I checked the issues and saw your question. I think the layer is missing as well but I haven't tested the code myself yet so I don't know if it works or not.

ulucsahin avatar Jan 24 '20 11:01 ulucsahin