<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
Hi Guilhem,
<div class="">
<div class=""><br class="">
</div>
<div class="">although the error message is not fully indicative, you are most certainly hitting</div>
<div class="">the limit of the Java byte array which is the type returned by the openBytes</div>
<div class="">method [1].</div>
<div class=""><br class="">
</div>
<div class="">Generally when working with large XY planes, you will need to read images in tiles</div>
<div class="">rather than retrieving the whole plane. To do so, you can use the signatures of</div>
<div class="">the openBytes API allowing to pass the coordinates and the dimensions of the tile</div>
<div class="">to retrieve [2].</div>
<div class=""><br class="">
</div>
<div class="">In the MATLAB toolbox, these coordinates and dimensions can be passed to the</div>
<div class=""> bfGetPlane function e.g. to retrieve the first 1024x1024 tile:</div>
<div class=""><br class="">
</div>
<div class="">r = bfGetReader(file);</div>
<div class="">I = bfGetPlane(r, 1, 1, 1, 1024, 1024);</div>
<div class=""><br class="">
</div>
<div class="">Best regards</div>
<div class="">Sebastien</div>
<div class=""><br class="">
</div>
<div class="">[1] <a href="https://downloads.openmicroscopy.org/bio-formats/5.7.3/api/loci/formats/IFormatReader.html#openBytes-int-" class="">https://downloads.openmicroscopy.org/bio-formats/5.7.3/api/loci/formats/IFormatReader.html#openBytes-int-</a> </div>
<div class="">[2] <a href="https://downloads.openmicroscopy.org/bio-formats/5.7.3/api/loci/formats/IFormatReader.html#openBytes-int-int-int-int-int-" class="">
https://downloads.openmicroscopy.org/bio-formats/5.7.3/api/loci/formats/IFormatReader.html#openBytes-int-int-int-int-int-</a></div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class="">
<div>
<blockquote type="cite" class="">
<div class="">On 10 Jan 2018, at 15:56, Guilhem Chenon <<a href="mailto:guilhem.chenon@espci.fr" class="">guilhem.chenon@espci.fr</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div text="#000000" bgcolor="#FFFFFF" class="">
<p class="">Hello,</p>
<p class="">I could not find any report of this issue online so I have to ask it here. Thanks in advance for your help.</p>
<p class="">So I have Bio-formats 5.7.2 installed on both Matlab R2017b with 7000MB of Java Heap space (with bfmatlab folder) and ImageJ (with .jar package). What I want to do is open an ND2 file (20112x20173 ; 16-bit resolution) of 11,2 Gb (12 111 798 272
 bytes). It consists of 6 timepoints each containing 3 channels. So the "time points" (consisting of 3 channels and encoded as series by the Nikon Software (NIS-Elements)), are each over 2*10^9 bytes.
<br class="">
</p>
<p class="">Here is an example code:<br class="">
</p>
<p class="">[file,path] = uigetfile('*.nd2','Select .nd2 file');            <br class="">
cd(fileparts(path));<br class="">
r = bfGetReader(file);<br class="">
I = bfGetPlane(r, 1);<br class="">
</p>
<p class="">which gives, with the file cited above, the following error (same with ImageJ and Icy which all rely on LOCI) :<br class="">
</p>
<p class=""><i class="">Error using bfGetPlane (line 78)</i><i class=""><br class="">
</i><i class="">Java exception occurred:</i><i class=""><br class="">
</i><i class="">java.lang.NegativeArraySizeException</i><i class=""><br class="">
</i><i class=""><br class="">
</i><i class="">    at loci.formats.in.NativeND2Reader.openBytes(NativeND2Reader.java:298)</i><i class=""><br class="">
</i><i class=""><br class="">
</i><i class="">    at loci.formats.DelegateReader.openBytes(DelegateReader.java:227)</i><i class=""><br class="">
</i><i class=""><br class="">
</i><i class="">    at loci.formats.ImageReader.openBytes(ImageReader.java:457)</i><i class=""><br class="">
</i><i class=""><br class="">
</i><i class="">    at loci.formats.ChannelFiller.openBytes(ChannelFiller.java:156)</i><i class=""><br class="">
</i><i class=""><br class="">
</i><i class="">    at loci.formats.ChannelSeparator.openBytes(ChannelSeparator.java:227)</i><i class=""><br class="">
</i><i class=""><br class="">
</i><i class="">    at loci.formats.ChannelSeparator.openBytes(ChannelSeparator.java:159)</i></p>
<p class="">I tried to open this .nd2 with as much as 30Gb of memory in the last version of ImageJ with no success, so I does not think it has anything to do with available RAM.<br class="">
<i class=""></i></p>
<p class="">The onl<i class="">y way</i> I know to prevent the error is to use "crop on import" with Bio-formats plugin in ImageJ. I can open one serie if it's cropped to around 18800x18800px because I think it gets under the 2 Gb limit.<br class="">
<i class=""></i></p>
<p class="">So what i want to know is if there exist a workaround or do I have to crop/bin my files? If requested I can upload the file through FTP.<br class="">
</p>
<p class="">Thank you very much for your time and your help. I hope I explained myself clearly.<br class="">
</p>
<p class="">Best regards,<br class="">
</p>
<div class="moz-signature">-- <br class="">
Guilhem CHENON <br class="">
LCMD - ESPCI Paris</div>
<div id="DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2" class=""><br class="">
<table style="border-top: 1px solid #D3D4DE;" class="">
<tbody class="">
<tr class="">
<td style="width: 55px; padding-top: 18px;" class=""><a href="http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient" target="_blank" class=""><img src="https://ipmcdn.avast.com/images/icons/icon-envelope-tick-green-avg-v1.png" alt="" width="46" height="29" style="width: 46px; height: 29px;" class=""></a></td>
<td style="width: 470px; padding-top: 17px; color: #41424e; font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 18px;" class="">
Garanti sans virus. <a href="http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient" target="_blank" style="color: #4453ea;" class="">
www.avg.com</a> </td>
</tr>
</tbody>
</table>
<a href="x-msg://3/#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2" width="1" height="1" class=""></a></div>
</div>
_______________________________________________<br class="">
ome-users mailing list<br class="">
<a href="mailto:ome-users@lists.openmicroscopy.org.uk" class="">ome-users@lists.openmicroscopy.org.uk</a><br class="">
http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-users<br class="">
</div>
</blockquote>
</div>
<br class="">
</div>
</div>
</div>
<br>
<span style="font-size:10pt;">The University of Dundee is a registered Scottish Charity, No: SC015096</span>
</body>
</html>