Problems with Grid/Collection stitching

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Problems with Grid/Collection stitching

Kurt Thorn
I'm trying to stitch ~700 5.5 MP 16-bit images using the Grid/Collection
stitching plugin, and it fails during the fusion step with the following
error:

(Fiji Is Just) ImageJ 1.47v; Java 1.6.0_24 [64-bit]; Windows 7 6.1;
14291MB of 32000MB (44%)

java.lang.reflect.InvocationTargetException

     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

     at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

     at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

     at java.lang.reflect.Method.invoke(Method.java:597)

     at ij.Command.runPlugIn(Command.java:148)

     at ij.Command.runCommand(Command.java:97)

     at ij.Executer.run(Executer.java:64)

     at java.lang.Thread.run(Thread.java:662)

Caused by: java.lang.NegativeArraySizeException

     at ij.process.ShortProcessor.<init>(ShortProcessor.java:31)

     at
mpicbg.imglib.container.imageplus.ShortImagePlus.<init>(ShortImagePlus.java:78)

     at
mpicbg.imglib.container.imageplus.ImagePlusContainerFactory.createShortInstance(ImagePlusContainerFactory.java:126)

     at
mpicbg.imglib.type.numeric.integer.UnsignedShortType.createSuitableDirectAccessContainer(UnsignedShortType.java:77)

     at
mpicbg.imglib.container.DirectAccessContainerFactory.createContainer(DirectAccessContainerFactory.java:68)

     at
mpicbg.imglib.container.DirectAccessContainerFactory.createContainer(DirectAccessContainerFactory.java:54)

     at mpicbg.imglib.image.Image.<init>(Image.java:112)

     at mpicbg.imglib.image.Image.<init>(Image.java:135)

     at mpicbg.imglib.image.ImageFactory.createImage(ImageFactory.java:68)

     at mpicbg.imglib.image.ImageFactory.createImage(ImageFactory.java:71)

     at mpicbg.stitching.fusion.Fusion.fuse(Fusion.java:94)

     at plugin.Stitching_Grid.run(Stitching_Grid.java:551)

     at ij.IJ.runUserPlugIn(IJ.java:195)

     at ij.IJ.runPlugIn(IJ.java:160)

     ... 8 more

Any suggestions? I was able to stitch a smaller set of 120 images
acquired on the same system.

Also, is this plugin able to stitch data sets larger than the amount of
RAM on the machine? If not, does anyone have good solutions for this
kind of problem, short of buying more RAM?

Thanks,
Kurt

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: Problems with Grid/Collection stitching

Stephan Preibisch
Hi,

the problem is that each slice has more than 2147483648 pixels (~50000x50000 pixels). ImageJ does not support to display that.

It seems a little unlikely, but might that be the case? Otherwise there was an error during stitching that accidentally made it that big. Try increasing the correlation threshold from 0.3 to maybe 0.7 or so in this case.

Nice greetings,
Stephan

On Jul 10, 2013, at 19:22 , Kurt Thorn wrote:

> I'm trying to stitch ~700 5.5 MP 16-bit images using the Grid/Collection stitching plugin, and it fails during the fusion step with the following error:
>
> (Fiji Is Just) ImageJ 1.47v; Java 1.6.0_24 [64-bit]; Windows 7 6.1; 14291MB of 32000MB (44%)
>
> java.lang.reflect.InvocationTargetException
>
>    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>
>    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>
>    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>
>    at java.lang.reflect.Method.invoke(Method.java:597)
>
>    at ij.Command.runPlugIn(Command.java:148)
>
>    at ij.Command.runCommand(Command.java:97)
>
>    at ij.Executer.run(Executer.java:64)
>
>    at java.lang.Thread.run(Thread.java:662)
>
> Caused by: java.lang.NegativeArraySizeException
>
>    at ij.process.ShortProcessor.<init>(ShortProcessor.java:31)
>
>    at mpicbg.imglib.container.imageplus.ShortImagePlus.<init>(ShortImagePlus.java:78)
>
>    at mpicbg.imglib.container.imageplus.ImagePlusContainerFactory.createShortInstance(ImagePlusContainerFactory.java:126)
>
>    at mpicbg.imglib.type.numeric.integer.UnsignedShortType.createSuitableDirectAccessContainer(UnsignedShortType.java:77)
>
>    at mpicbg.imglib.container.DirectAccessContainerFactory.createContainer(DirectAccessContainerFactory.java:68)
>
>    at mpicbg.imglib.container.DirectAccessContainerFactory.createContainer(DirectAccessContainerFactory.java:54)
>
>    at mpicbg.imglib.image.Image.<init>(Image.java:112)
>
>    at mpicbg.imglib.image.Image.<init>(Image.java:135)
>
>    at mpicbg.imglib.image.ImageFactory.createImage(ImageFactory.java:68)
>
>    at mpicbg.imglib.image.ImageFactory.createImage(ImageFactory.java:71)
>
>    at mpicbg.stitching.fusion.Fusion.fuse(Fusion.java:94)
>
>    at plugin.Stitching_Grid.run(Stitching_Grid.java:551)
>
>    at ij.IJ.runUserPlugIn(IJ.java:195)
>
>    at ij.IJ.runPlugIn(IJ.java:160)
>
>    ... 8 more
>
> Any suggestions? I was able to stitch a smaller set of 120 images acquired on the same system.
>
> Also, is this plugin able to stitch data sets larger than the amount of RAM on the machine? If not, does anyone have good solutions for this kind of problem, short of buying more RAM?
>
> Thanks,
> Kurt
>
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: Problems with Grid/Collection stitching

Kurt Thorn
Hi Stephan -

I think we are hitting the image size limit in ImageJ. We're stitching a
20 x 28 grid of 2560 x 2160 pixel images from an Andor Zyla, so the
final image size will be somewhere around 3 gigapixels.

We'd actually like to be able to stitch images much larger than this -
does anyone have any suggestions for software that can support very
large images (10 - 100 gigapixels), preferably with support for working
on them without loading the entire image into RAM?

Thanks,
Kurt

On 7/10/2013 4:34 PM, Stephan Preibisch wrote:

> Hi,
>
> the problem is that each slice has more than 2147483648 pixels (~50000x50000 pixels). ImageJ does not support to display that.
>
> It seems a little unlikely, but might that be the case? Otherwise there was an error during stitching that accidentally made it that big. Try increasing the correlation threshold from 0.3 to maybe 0.7 or so in this case.
>
> Nice greetings,
> Stephan
>
> On Jul 10, 2013, at 19:22 , Kurt Thorn wrote:
>
>> I'm trying to stitch ~700 5.5 MP 16-bit images using the Grid/Collection stitching plugin, and it fails during the fusion step with the following error:
>>
>> (Fiji Is Just) ImageJ 1.47v; Java 1.6.0_24 [64-bit]; Windows 7 6.1; 14291MB of 32000MB (44%)
>>
>> java.lang.reflect.InvocationTargetException
>>
>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>
>>     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>
>>     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>
>>     at java.lang.reflect.Method.invoke(Method.java:597)
>>
>>     at ij.Command.runPlugIn(Command.java:148)
>>
>>     at ij.Command.runCommand(Command.java:97)
>>
>>     at ij.Executer.run(Executer.java:64)
>>
>>     at java.lang.Thread.run(Thread.java:662)
>>
>> Caused by: java.lang.NegativeArraySizeException
>>
>>     at ij.process.ShortProcessor.<init>(ShortProcessor.java:31)
>>
>>     at mpicbg.imglib.container.imageplus.ShortImagePlus.<init>(ShortImagePlus.java:78)
>>
>>     at mpicbg.imglib.container.imageplus.ImagePlusContainerFactory.createShortInstance(ImagePlusContainerFactory.java:126)
>>
>>     at mpicbg.imglib.type.numeric.integer.UnsignedShortType.createSuitableDirectAccessContainer(UnsignedShortType.java:77)
>>
>>     at mpicbg.imglib.container.DirectAccessContainerFactory.createContainer(DirectAccessContainerFactory.java:68)
>>
>>     at mpicbg.imglib.container.DirectAccessContainerFactory.createContainer(DirectAccessContainerFactory.java:54)
>>
>>     at mpicbg.imglib.image.Image.<init>(Image.java:112)
>>
>>     at mpicbg.imglib.image.Image.<init>(Image.java:135)
>>
>>     at mpicbg.imglib.image.ImageFactory.createImage(ImageFactory.java:68)
>>
>>     at mpicbg.imglib.image.ImageFactory.createImage(ImageFactory.java:71)
>>
>>     at mpicbg.stitching.fusion.Fusion.fuse(Fusion.java:94)
>>
>>     at plugin.Stitching_Grid.run(Stitching_Grid.java:551)
>>
>>     at ij.IJ.runUserPlugIn(IJ.java:195)
>>
>>     at ij.IJ.runPlugIn(IJ.java:160)
>>
>>     ... 8 more
>>
>> Any suggestions? I was able to stitch a smaller set of 120 images acquired on the same system.
>>
>> Also, is this plugin able to stitch data sets larger than the amount of RAM on the machine? If not, does anyone have good solutions for this kind of problem, short of buying more RAM?
>>
>> Thanks,
>> Kurt
>>
>> --
>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>
>

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: Problems with Grid/Collection stitching

Stephan Preibisch
Hi,

you should try TrackEM2, it is part of Fiji. It is designed for electron microscopy but works well on light microscopy as well. For reconstruction you can use SIFT or the stitching algorithm ...

http://fiji.sc/wiki/index.php/TrakEM2

Bye bye,
Stephan

On Jul 17, 2013, at 13:26 , Kurt Thorn wrote:

> Hi Stephan -
>
> I think we are hitting the image size limit in ImageJ. We're stitching a 20 x 28 grid of 2560 x 2160 pixel images from an Andor Zyla, so the final image size will be somewhere around 3 gigapixels.
>
> We'd actually like to be able to stitch images much larger than this - does anyone have any suggestions for software that can support very large images (10 - 100 gigapixels), preferably with support for working on them without loading the entire image into RAM?
>
> Thanks,
> Kurt
>
> On 7/10/2013 4:34 PM, Stephan Preibisch wrote:
>> Hi,
>>
>> the problem is that each slice has more than 2147483648 pixels (~50000x50000 pixels). ImageJ does not support to display that.
>>
>> It seems a little unlikely, but might that be the case? Otherwise there was an error during stitching that accidentally made it that big. Try increasing the correlation threshold from 0.3 to maybe 0.7 or so in this case.
>>
>> Nice greetings,
>> Stephan
>>
>> On Jul 10, 2013, at 19:22 , Kurt Thorn wrote:
>>
>>> I'm trying to stitch ~700 5.5 MP 16-bit images using the Grid/Collection stitching plugin, and it fails during the fusion step with the following error:
>>>
>>> (Fiji Is Just) ImageJ 1.47v; Java 1.6.0_24 [64-bit]; Windows 7 6.1; 14291MB of 32000MB (44%)
>>>
>>> java.lang.reflect.InvocationTargetException
>>>
>>>    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>
>>>    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>
>>>    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>
>>>    at java.lang.reflect.Method.invoke(Method.java:597)
>>>
>>>    at ij.Command.runPlugIn(Command.java:148)
>>>
>>>    at ij.Command.runCommand(Command.java:97)
>>>
>>>    at ij.Executer.run(Executer.java:64)
>>>
>>>    at java.lang.Thread.run(Thread.java:662)
>>>
>>> Caused by: java.lang.NegativeArraySizeException
>>>
>>>    at ij.process.ShortProcessor.<init>(ShortProcessor.java:31)
>>>
>>>    at mpicbg.imglib.container.imageplus.ShortImagePlus.<init>(ShortImagePlus.java:78)
>>>
>>>    at mpicbg.imglib.container.imageplus.ImagePlusContainerFactory.createShortInstance(ImagePlusContainerFactory.java:126)
>>>
>>>    at mpicbg.imglib.type.numeric.integer.UnsignedShortType.createSuitableDirectAccessContainer(UnsignedShortType.java:77)
>>>
>>>    at mpicbg.imglib.container.DirectAccessContainerFactory.createContainer(DirectAccessContainerFactory.java:68)
>>>
>>>    at mpicbg.imglib.container.DirectAccessContainerFactory.createContainer(DirectAccessContainerFactory.java:54)
>>>
>>>    at mpicbg.imglib.image.Image.<init>(Image.java:112)
>>>
>>>    at mpicbg.imglib.image.Image.<init>(Image.java:135)
>>>
>>>    at mpicbg.imglib.image.ImageFactory.createImage(ImageFactory.java:68)
>>>
>>>    at mpicbg.imglib.image.ImageFactory.createImage(ImageFactory.java:71)
>>>
>>>    at mpicbg.stitching.fusion.Fusion.fuse(Fusion.java:94)
>>>
>>>    at plugin.Stitching_Grid.run(Stitching_Grid.java:551)
>>>
>>>    at ij.IJ.runUserPlugIn(IJ.java:195)
>>>
>>>    at ij.IJ.runPlugIn(IJ.java:160)
>>>
>>>    ... 8 more
>>>
>>> Any suggestions? I was able to stitch a smaller set of 120 images acquired on the same system.
>>>
>>> Also, is this plugin able to stitch data sets larger than the amount of RAM on the machine? If not, does anyone have good solutions for this kind of problem, short of buying more RAM?
>>>
>>> Thanks,
>>> Kurt
>>>
>>> --
>>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>> --
>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>>
>>
>
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html


--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html