nerfstudio icon indicating copy to clipboard operation
nerfstudio copied to clipboard

Add direct render+export and notifications

Open ginazhouhuiwu opened this issue 1 year ago • 8 comments

Directly render and export things from the viewer, with notifications!

Uses a simple notification addition from nerfstudio-project/viser#225.

https://github.com/nerfstudio-project/nerfstudio/assets/42229107/147d3fd9-1c8e-432e-a616-9f2b5e2a0435


TODO:

  • [x] thoroughly test export functionality
  • [x] add error notifications if encountered during render/export

ginazhouhuiwu avatar Jun 13 '24 05:06 ginazhouhuiwu

Nice PR. @ginazhouhuiwu, is it possible to also add the option to "capture frame" or something similar, where only a single image is saved instead of a video.

maturk avatar Jun 13 '24 10:06 maturk

that sounds like a great feature I will try implementing! Thanks for taking a look : )

ginazhouhuiwu avatar Jun 13 '24 15:06 ginazhouhuiwu

that sounds like a great feature I will try implementing! Thanks for taking a look : )

Yeah, it has been a feature that I have seen some users bring up a few times in the past, just to quickly take some snapshots from a certain angle (perhaps using the same camera intrinsics as the original training dataset, but I think that is configurable in the gui anyways). Just some additional thoughts ... :)

maturk avatar Jun 13 '24 15:06 maturk

Super cool! Would also be great to build out some functionality for previewing the render as it goes and perhaps canceling it. Would be cool to also integrate with viser's download functionality to download the final render directly to someone's machine :)

kerrj avatar Jun 13 '24 20:06 kerrj

Local download! Supported for both render and exports now : )

https://github.com/nerfstudio-project/nerfstudio/assets/42229107/901dcdd9-58c3-4730-ad47-6c0b7afbb9be

ginazhouhuiwu avatar Jun 22 '24 01:06 ginazhouhuiwu

Some finishing touches with suggestions from @kerrj, namely disabling render button when render is already in progress or if no keyframes are added, only enabling download button once file is ready, and allowing render to be canceled. The generate command button is added back as an additional option.

This PR is ready once nerfstudio-project/viser#225 is and I need to clean pyright. EDIT: is ready now : )

https://github.com/user-attachments/assets/89b16cb0-c401-4945-8668-efa28576120d

ginazhouhuiwu avatar Aug 27 '24 03:08 ginazhouhuiwu

Some observations from testing it out:

  • If you load a path the render button doesn't become available to click until you add another keyframe.
  • If you click render before 2000 steps, there's no error message except in the terminal (probably shouldn't give a rendering notification unless the render has successfuly started)

kerrj avatar Sep 05 '24 18:09 kerrj

Ok sg thanks for testing! I can probably add some error messages in the ui

ginazhouhuiwu avatar Sep 05 '24 22:09 ginazhouhuiwu

How is this going? would be good to merge soon so it doesn't go forgotten about

kerrj avatar Oct 21 '24 20:10 kerrj

Fixed:

  • error message when user clicks render/export before 2000 training steps
  • able to directly load existing path for rendering
Screenshot 2024-11-06 at 3 58 59 PM

ginazhouhuiwu avatar Nov 06 '24 23:11 ginazhouhuiwu