Hello,
Can I open image sets in Slicer as virtual stacks similarly to Fiji (ImageJ)? This would be great when dealing with image stacks that are not stored on the computer (but on a hard drive).
Hello,
Can I open image sets in Slicer as virtual stacks similarly to Fiji (ImageJ)? This would be great when dealing with image stacks that are not stored on the computer (but on a hard drive).
I am not sure what you mean by “imagestacks not stored on computer but hard drive”.
Virtual stacks in Fiji allows loading datasets that are larger than memory, so only portions of the data is read, while you are navigating the stack.
That is not possible in Slicer, all the data needs to be reloaded into the memory. You can achieve the same level of functionality by increasing the virtual memory size (up to a point. If your image stack is couple terabytes, then of course it won’t work).
Hi Murat,
Thank you for the fast response. I meant “external drive.” Many of the datasets I am working on require cropping as the first step, and in many cases, I don’t copy the original files to my computer’s hard drive but open them as virtual stacks in FIJI, crop them, and save the end product (which is much smaller) to my computer’s hard drive. When I try doing this with Slicer, it takes much longer than using FIJI’s virtual stack approach.
All the best:
István
Have you tried the ImageStacks
module in SlicerMorph? If you need cropping it does it way better than Fiji, since it allows you to retain the spatial relationship of the cropped region with regards to the whole volume. In a nutshell, you load the whole sequence in low resolution mode, then set your ROI for the region you want to extract, and then reprocess it as a separate object with ROI constraints and change the resolution to full quality.
What will give you in the end is only the contents of the ROI at the full resolution, and you get to set the ROI in 3D, not in just slice view.
See the full tutorial: Tutorials/ImageStacks at main · SlicerMorph/Tutorials · GitHub
Hi Murat,
It worked! I loaded the imagestack in slicermoprh, trimmed and rotated the low-res volume, cropped it with the Crop Volume module, then reloaded the high-res volume. It was loaded in according to the new settings. Amazing!
I have only one question left, though: the only step I’m still using ImageJ for is creating image stacks (often I receive multi-TIFF files) for Slicermorph. Is there any way in Slicer to save data into image sets?
Thanks a lot!
I gave the wrong sequence in my previous response, I first reloaded the high res volume and only then cropped it with the crop volume. Anyway, it works.
Thanks!
If you look at the tutorial, you will see that you don’t need to use the crop volume, and do everything inside the ImageStacks.
Crop Volume approach is fine too, but when you have very large sequences (100s of GBs) this approach is more memory efficient as you don’t need to load the whole volume at full resolution.