Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[No positional encoding for position and direction] #17

Open
tomguluson92 opened this issue Aug 4, 2021 · 5 comments
Open

[No positional encoding for position and direction] #17

tomguluson92 opened this issue Aug 4, 2021 · 5 comments

Comments

@tomguluson92
Copy link

Dear marco,
Thanks for open source the code! I am curious about why positional encoding is not involved in pi-GAN's implementation.
As in https://github.com/marcoamonteiro/pi-GAN/blob/master/generators/generators.py#L49, could you please be so kind to tell me the reason of removing positional encoding to transformed_points (xyz) and ray_directions (d)?
Thank you for your time!

@RaymondJiangkw
Copy link

I think it would be better to look at their paper. They use SIREN, which has been demonstrated to be as effective as positional encoding. This discovery has been "officially" acknowledged by original NeRF team in their follow-up paper.

@tomguluson92
Copy link
Author

I think it would be better to look at their paper. They use SIREN, which has been demonstrated to be as effective as positional encoding. This discovery has been "officially" acknowledged by original NeRF team in their follow-up paper.

Thanks!

@dichen-cd
Copy link

Hi @RaymondJiangkw ,

I think it would be better to look at their paper. They use SIREN, which has been demonstrated to be as effective as positional encoding. This discovery has been "officially" acknowledged by original NeRF team in their follow-up paper.

I guess "officially acknowledged" is a little bit too strong as a claim, since the SIREN based net is only used for 2D image regression in the paper. For novel view synthesis with NeRF, they still use ReLU MLPs with positional encoding.

@RaymondJiangkw
Copy link

Hi, @DeanChan

Hi @RaymondJiangkw ,

I think it would be better to look at their paper. They use SIREN, which has been demonstrated to be as effective as positional encoding. This discovery has been "officially" acknowledged by original NeRF team in their follow-up paper.

I guess "officially acknowledged" is a little bit too strong as a claim, since the SIREN based net is only used for 2D image regression in the paper. For novel view synthesis with NeRF, they still use ReLU MLPs with positional encoding.

Of course, it's strange, haha, and that's the reason why there's a double quote. In the paper of original NeRF team, they acknowledged the effectiveness of SIREN when dealing with the problem of Coordinate-Based Neural Representations, even though they only applied it to 2D image regression, and positional encoding is exactly targeted at solving the same issue.

I'm sorry if you feel my words are not accurate, but what I want to emphasize is that formula-GAN choosing SIREN as an alternative way is plausible and has its theoretical foundation.

Sorry for my informal claim. 😳

@dichen-cd
Copy link

Hi @RaymondJiangkw

Many thanks for your quick reply 😄 It's much clearer now.

I just found a repo applying SIREN to NeRF--, which may support the effectiveness of SIREN.

In their implementation, there's no positional encoding for SIREN-based NeRF either. See frameworks.py#L28-L38

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants