Deep Zoom file layout
Deep Zoom is good for sharing large images over the net. This technology could be used to provide a web-based IJ image viewer. For example if you're running headless perhaps you could have an internal web server that allows the user to examine outputs. This would be also be a good way to display images on handheld devices.
(It's an interesting side-note to contemplate how this technique would work in n-dimensions. You could still get a pyramid, only each level would be n-dimensional, scaled by half in each dimension. A 2D mipmap takes about 1.33 the space of the original image, for n-D I think it would be (1.33)^(n-1).) (Correction: Stephan S. points out 3D space requirement is 1 + 1/8 + 1/64... which is less than 1 + 1/4 + 1/16...)
I'm working on a prototype viewer, strongly typed for RGBA. I plan to initially try saving the tiles uncompressed in one big temporary file.
Deep Zoom viewers use 'spring animation' to create a very smooth viewing experience. They give the illusion of infinite zoom levels but I think there are only about three interpolated levels available between mipmap levels.
I believe these three levels could be interpolated very quickly using pixel area interpolation.
Three-level tile interpolation
It would be good to have a version that uses arbitrary pixel Types and better interpolation. This would be useful for example if you want to zoom into an image and then play with the LUT at that zoom level. You'd get high performance since you don't have to rebuild the mipmap with every change.
Deep Zoom jar is available in ImageJDev Maven Repository
Under loci/deep-zoom-plugin/1.0-SNAPSHOT. You have to rename it with an underscore in the name, sorry.
Source code http://dev.loci.wisc.edu/svn/java/trunk/projects/deep-zoom-plugin/