Image Reader with CZI

Hi,

I have a problem reading in (Image Reader) the following czi:

https://www.dropbox.com/s/pzzacv53dyc2bsj/Experiment-21-Scene-01-P1-B4.czi?dl=0

I get the error message:

ERROR  ReadFileImgTable                  java.lang.ArrayIndexOutOfBoundsException: 1

 

However, FIJI has no problem reading the Image. So it can’t be a Bioformats problem right?

 

Kind regards,

Flaviu

Hi Flaviu, thats correct, must be a problem with our reader.

Which version of KNIME Image Processing are you using? Nightly build?

If not: can you try to use the nightly build and check if the problem still occurs?

Christian

Seems to work just fine with our current nightly build. Can you confirm?

It is working with the nightly build thank you :).

 

I have another question regarding the Java Heap Space.

Usually I’m working on a workstation with enough ram. The last days I was working on a laptop with only 8 GB of RAM and I encountered problems with Heap Space.

I know that I can adjust the Xmx and  XX:MaxPermSize in the knime.ini but because I am not really a Java programmer I have no knowledge or “feeling” about these two variables.

Could you please describe them a little more in detail especially regarding to Image sizes, dimensions, etc.?

 

Thanks,

Flaviu

 

UPDATE:

New Error message I am encountering:

ERROR     ReadFileImgTable                   io.scif.img.ImgIOException: io.scif.FormatException: loci.formats.FormatException: Invalid tile size: x=0, y=2640, w=2752, h=48

By watching my Task manager it seems to me that this occurs when I load to many CZI Files and I run out of RAM on my PC. Which brings me again to my question asked regarding to java Heap Space :D

 

Hi Flaviu,

Try the following:

-Xmx6G -XX:MaxPermSize=192m

this should work. -Xmx sets the maximum heap memory which java can use, -XX:MaxPermSize stores information about classes and so on and is part of the heap. 192m and 256m are enough for this one.

Does that help?


Christian

 

It seems that the problem was that I had also FIJI running in the background which also took RAM space so there was a clash of the RAM space between KNIME and FIJI :D

Kind of irritating though that if you load let’s say 2 GB of Images (just the image reader nothing else) the task manager shows that KNIME already took 8-9 GB of RAM.

this may be due to BioFormats. If  the images are read in as e.g. ShortType, but the actual values which was saved is ByteType, then KNIME may use more RAM than expected. Do you experience the same problem in FIJI?

Anyway, KNIME should automatically clear RAM while reading in images. You can force KNIME to do that by using the vm parameter:

  -Dorg.knime.container.cellsinmemory=1


Let me know if you have any further problems,


Christian