-
Notifications
You must be signed in to change notification settings - Fork 312
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
Implement normal consistency loss. #273
Open
jefequien
wants to merge
77
commits into
nerfstudio-project:main
Choose a base branch
from
jefequien:jeff/normal_consistency
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 32 commits
Commits
Show all changes
77 commits
Select commit
Hold shift + click to select a range
d31aa2b
use inria cuda to train
jefequien 6a58dc3
canvas list
jefequien 1b6e094
2dgs
jefequien 55b39bb
lambda_dist
jefequien f4ea0e0
clean up
jefequien 87748f4
format
jefequien 7ee6c20
3m garden first
jefequien 143af51
2dgs_mcmc_sfm
jefequien 6670314
train 3dgs without normal loss
jefequien 286867b
Merge branch 'main' into jeff/inria
jefequien a8fd7a9
3dgs normal working
jefequien 5870b25
baseline no gradient
jefequien a8adfe5
normal backprob
jefequien 08637cb
cleanup
jefequien ea6ce1a
cleanup
jefequien f7f0b9c
cleanup
jefequien 468c451
cmocean dense
jefequien 8cfa0fc
cmo ice
jefequien 20cd888
voltage
jefequien 503ac93
edit bash
jefequien 23f9984
clean up benchmark script
jefequien 02e00fb
remove dist_loss
jefequien 96e8d23
depth must be last
jefequien f336b95
colors normal depth
jefequien 54f137e
reduce diff
jefequien 50749de
cleanup
jefequien bcac804
remove distloss
jefequien 5752261
benchmark script
jefequien dadaf75
refactor
jefequien 6800602
compile bug
jefequien 98573e6
Merge branch 'main' into jeff/normal_consistency
jefequien 6d156d2
remove benchmark script
jefequien 9c06a24
support packed and sparse
jefequien 7294be4
refactor
jefequien 0a9ce04
bugfix
jefequien 1bd9e91
utils/
jefequien d7a2916
rasterization backend
jefequien 0274d1b
v_rotmat
jefequien 6840727
render traj
jefequien 5fdc934
point inward during ellipse
jefequien e3dc5e5
add tests for fwd and bwd pass
jefequien 467ffe6
all but one test passing
jefequien 8e158a2
weird bug
jefequien e5c9b64
merge
jefequien 08b4631
test passes but test suite does not pass
jefequien c7e2fd4
count radii
jefequien ee40bb2
change sel to pass tests
jefequien 6f21cb7
__sel
jefequien d2f89ab
cleanup
jefequien 12723b1
simplify utils
jefequien 433b313
merge
jefequien fadb7b4
util
jefequien f40b879
test rasterization
jefequien d766117
benchmark script
jefequien 8e8d681
__init__
jefequien 90c62af
merge
jefequien 24eb1b5
fix normal consistency
jefequien a86ef37
ellipse
jefequien f0b93f0
cleanup
jefequien a014c89
uncomment
jefequien 35b21c4
canvas list
jefequien 9aaf257
Merge branch 'main' into jeff/normal_consistency
jefequien 1afd41a
merge with traj
jefequien f072f17
cleanup
jefequien 1fa189c
fix tests
jefequien b9ef876
remove 2dgs inria
jefequien c08a23e
script
jefequien 1535db1
merge
jefequien 6346132
merge
jefequien bfd78bc
fix merge
jefequien 0a1dc09
fix utils
jefequien 5b5a7c3
reduce diff test_basic
jefequien 9c4186a
tests not passing
jefequien 0c5e3ed
all tests passed
jefequien 541990a
merge
jefequien 38f2532
summarize stats
jefequien 72d38d6
merge
jefequien File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do you need to multiply with alphas? Isn’t normals_surf already normalized here: https://github.com/jefequien/gsplat-mcmc/blob/6d156d2d447d9557e432b7f4b94fa6b3b9527187/gsplat/normal_utils.py#L41?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You can either normalize both the rendered normals and surface normals or use the alpha-composited rendered normals and multiply the surface normals by alpha. The latter results in normals that look better visually.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the clarification. I was using the first one in GOF.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The latter one should be more robust when dealing with semi-transparent pixels (accumulate_alpha < 1).