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

Image loading code needs feedback mechanism #173

Open
ctrueden opened this Issue May 7, 2014 · 1 comment

Comments

Projects
None yet
2 participants
@ctrueden
Copy link
Member

commented May 7, 2014

Now that we support CellImg backed virtual data in the file loader the feedback to the user during the loading process should be made more granular. For one image that is about a gig in size (36594.tif): the loading process informs that it will open as a CellImg and then no more updates to UI happen until it draws some minutes later. We need a progress indicator showing what is happening. This might just require a status update of some kind to happen at regular intervals.

Unfortunately, putting in a status update every time a cell is loaded (saying "Cell # / total cells loaded") noticeably decreased performance..

Also, some cases of waiting are more problematic. BrightnessContrast, for example, delegates to ComputeMinMax in imglib2, which doesn't have a context available to invoke the status service.
As a side note, doing a sysout during the minmax computation, with a check to see if a statement should be printed (e.g. at 20% increments), significantly slowed down the computation time.

Finally, @hinerm believes that a status message should only be displayed when a Reader is invoked to actually load a byte array (as opposed to when retrieving a cell from a cache) which is only known at the CellCache level. However, the CellCache has no notion of how many cells are going to be loaded. If rendering a 500x500x100000 image and only the cells of the current plane are loaded, it is not clear how to display a meaningful progress bar.

Migrated-From: http://trac.imagej.net/ticket/1911

@hinerm hinerm added this to the 0.12.0 milestone May 7, 2014

@hinerm

This comment has been minimized.

Copy link
Member

commented May 7, 2014

What if we also had a "doing work" animation? Then when the operation (loading the first plane in this case) is complete, it stops the animation..

This would also be useful for other operations, like when computing tiles in Fusion when the end number of tiles can't be known...

@hinerm hinerm modified the milestones: 0.13.0, 0.12.0, 0.15.0 May 30, 2014

@hinerm hinerm modified the milestones: 0.16.0, 0.15.0 Jun 10, 2014

@hinerm hinerm removed this from the 0.16.0 milestone Mar 10, 2015

@hinerm hinerm added the enhancement label Mar 11, 2015

@hinerm hinerm added this to the m3 milestone Mar 11, 2015

@hinerm hinerm self-assigned this Mar 11, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.