fiji / Stitching

Fiji's Stitching plugins reconstruct big images from tiled input images.
http://imagej.net/Stitching
GNU General Public License v2.0
96 stars 64 forks source link

Add options to restrict region of operation #9

Open hinerm opened 10 years ago

hinerm commented 10 years ago

To facilitate fusing planes that will not fit in memory, it would be ideal if we had the ability to crop regions of interest before overlap is computed.

This could also greatly speed up these operations when we only really want to view a subset of our dataset.

It is important to have this option in addition to the existing downsampling feature, as we need to be able to operate on the true data and not downsampled/modified data.

NB: it is not completely clear how we should achieve this cropping yet. A conceivable workflow for working with datasets that won't fit in memory would be: 1) Stitch once with downsampling + Add tiles as ROIs. 2) Identify regions of interest (note that this may be post-overlap movement, so the actual stage coordinates should be used. This would require those coordinates to be reported - e.g. in the ROI title) 3) Stitch again with cropping on the desired stage X,Y stage coordinates (e.g. upper left, lower right corners)

Then, before overlap is computed, any tiles that don't fall within the specified X,Y bounding box would be discarded.

However, there is a caveat in that we also want this option to be able to accommodate data that isn't acquired in perfect rectangular planes. But perhaps a bounding box + checking for overlap is sufficient.

StephanPreibisch commented 10 years ago

Hi @hinerm

I do not understand, this is done already, it always just compares a small region that is potentially overlapping. This is what in pairwise stitching the ROI is for and in the grid/collection stitching the approximate overlap.

Do misunderstand something?

Cheers, Stephan

hinerm commented 10 years ago

@StephanPreibisch Yes, sorry it is not clear.

What I mean is this scenario:

Suppose you have a dataset that when stitched has 30 tiles (images) per plane. If individual images are too large you may not be able to open a stitched image due to the memory limitations on individual planes. The only option right now in this case is to downsample.

However, we can't run our analyses on the downsampled pixels; we want to do so against the actual true data values.

So in this case, suppose the region we actually care about are the middle 4 tiles of tile rows 2,3 and 4. This ticket is about creating an easy way via the interface to discard the tiles outside of that region when computing overlap and fusing. Thus we end up with a full resolution, unmodified fusion of the area of interest.

If we're mistaken and there's already a way to do this, or if it still is not clear, please let me know!

Thanks, Mark