-
Notifications
You must be signed in to change notification settings - Fork 2.8k
Mge/zoom #714
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
Open
Open
Mge/zoom #714
+67
−44
Conversation
This file contains hidden or 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
In some cases, calibration gives central point cx,cy != (0.5,0.5), or it can be decided to crop the input images. In those cases, it is necessary to split fovx to fovXleft,fovXright and fovy to fovYtop,fovYbottom Note that the export of cameras to cameras.json merges those values back to the basic fovx,fovy. This aims at avoiding the modification of diff_gaussian_rasterization branch used for SIBR_gaussianViewer_app. Signed-off-by: Matthieu Gendrin <matthieu.gendrin@orange.com>
...nsform to cuda code full_projection_transform is the multiplication of view_matrix and projection_matrix. Thus, passing (view_matrix, projection_matrix) is equivalent to (view_matrix, full_projection_transform). Passing projection_matrix as arguments to rasterize_gaussians enables to get intrinsics informations in the rendering code. Since we'll need central point (cx, cy), this is the aim of this refacto commit. Signed-off-by: Matthieu Gendrin <matthieu.gendrin@orange.com>
fovx and fovy are not relevant anymore. Intrinsics are read from projection_matrix. Thus, we don't pass them to the rendering code. Signed-off-by: Matthieu Gendrin <matthieu.gendrin@orange.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Some data have image centers different from (w/2,h/2). This can be after a correction of distortion, or because some images are cropped.
To manage this case, we pass projmatrix to the rendering classes, which include cx,cy information (on top of fx, fy).
Note that this evolution depends on a change the signature of the diff-gaussian-rasterization module: CudaRasterizer::Rasterizer::forward projmatrix parameter is now the plain projection_matrix (whereas it used to be the full_projection_matrix), and tan_fovx and tan_fovy are not needed anymore.
How to test:
0. build the submodule
$ pip install diff-gaussian-rasterization