Make viewer's loading time faster by skipping loading all images
Hello! First of all, thanks for the v1.0.0 update! Looks amazing and promising very much.
I have a question / request: is it somehow possible to make model's loading time in the viewer faster?
It seems that the viewer loads all training images before rendering, as well as the checkpoint itself. I assume that a certain part of the viewer's code requires the number of training images (maybe the appearance embedding?), which can be exhaustive and time-consuming when the dataset is very large. If my assumption is true, can't we store the number of images as an attribute after loading them for training? If not, what is the reason for loading the images and how can i manually override this?
Thank you very much in advance!
I think this is kind of tricky. The whole pipeline is instantiated when you run viser, and all the images is cached when the datamanager is instantiated with the pipeline. In more detail, the dataparser pass the path to the images to the datamanager then datamanager caches them. I used a super hacky way to bypass these, but I don't think it worth a try. (actually the viser can still show images without caching them...and it is like 10s faster for 200 images) So there is no elegant method I think and preventing the datamanager from initializing just breaks everything... Maybe I can try add an option just not to init the pipeline and not use the information in it/another choice is to use a third party visualizer.
btw, ns-export does not require cache images too. So it indeed slows the whole process.