[ITK Community] Problem with multi-image tiff on Linux (ubuntu)

Gib Bogle g.bogle at auckland.ac.nz
Wed Mar 5 13:59:02 EST 2014


As you say, Brad, it is not at all clear where the problem lies.  I will run the tests you suggest - thanks very much - but it will probably not be today.  I am about to go fishing :)

Best
Gib
________________________________
From: Bradley Lowekamp [blowekamp at mail.nih.gov]
Sent: Thursday, 6 March 2014 7:47 a.m.
To: Gib Bogle
Cc: community at itk.org
Subject: Re: [ITK Community] Problem with multi-image tiff on Linux (ubuntu)

Hello,

There are some large TIFF IO tests. We should check to see if they are passing on your system.

They are defined here:

https://github.com/InsightSoftwareConsortium/ITK/blob/master/Modules/IO/TIFF/test/CMakeLists.txt#L146-L192

To enable them you need to define in CMake ITK_COMPUTER_MEMORY_SIZE to be sufficiently large.

Then you are run just these tests labeled with "BigIO":

$ ctest -L BigIO -R TIFF

These tests are slow and not run on many systems on the dashboard ( actually I can't find them any where, they were all passing last I checked). If you are trying out different TIFF libraries, it'd may be good to verify that these test pass.

They test on my Redhat 6 system with the current version of ITK libtiff. At this point it's not clear to me if this less that 1GB failure is related it ITK, ITK hacked for 4.0.2 libtiff, or your version of libtiff.

Brad



On Mar 5, 2014, at 1:26 PM, Gib Bogle <g.bogle at auckland.ac.nz> wrote:

Hi Brad,

Thanks for your bug fix enabling ITK to build on ubuntu!

The only info I managed to locate about large tiffs was a note from Luis Ibanez that referred to a Windows limit of 2GB.  I guess that was before the ITK_USE_64BITS_IDS option was implemented.  I'll give Windows a try again.

The odd thing is that my truncation problem on Linux is occurring with a file that is not so big - 601*1380*693, i.e. less than 1GB.

Best
Gib
________________________________
From: Bradley Lowekamp [blowekamp at mail.nih.gov<mailto:blowekamp at mail.nih.gov>]
Sent: Thursday, 6 March 2014 2:55 a.m.
To: Gib Bogle
Cc: community at itk.org<mailto:community at itk.org>
Subject: Re: [ITK Community] Problem with multi-image tiff on Linux (ubuntu)

Hello,

For windows to handle larger than 4GB image the CMake option ITK_USE_64BITS_IDS needs to be turned on. (  In this day and age it really should be turned on by default now. )

I have had similar problems trying to convert large image to tiffs too. Specifically, I recall getting the same type of truncation when trying to convert the Visible Human cyro-slices to big tiff.

I think some serious time needs to be spend looking at itkTIFFImageIO for 64-bit issues, as my casual looks have not turned up anything.

Brad

On Mar 5, 2014, at 3:28 AM, Gib Bogle <g.bogle at auckland.ac.nz<mailto:g.bogle at auckland.ac.nz>> wrote:

I have recently started having to work with big multi-image tiff files, e.g. 4.5 GB.  I discovered that ITK on Windows cannot handle such large images, so I am trying to use Linux (64-bit ubuntu 12.10).  I managed to build ITK with libtiff5 (actually 4.0.2 I think) which does have bigtiff support, after downloading the latest source code with git, which contains a patch fix for a bug that prevented building.  The patch was applied yesterday, so that was a bit of luck.

But there is something screwy happening when I read my multi-image tiff with ITK.  After reading the image (which is compressed with Deflate) I look at each z-frame and compute the sum of pixel intensities.  After z=346 all the intensities are 0, but I know this is not correct.  I can view the frames with Imagemagick's display program, and those at z>346 are not qualitatively different from the earlier ones.

After reading the image in I am using a pointer to the buffer to access the data:

p = (unsigned char *)(im->GetBufferPointer());

then I access the voxel value at (x,y,z) as p[z*xysize+y*width+x]

I have declared x, y, z, width and xysize = width*height all as long int.

Another way to show the problem: When the compressed tiff that looks correct when viewed with Imagemagick-display is read with ITK and then written without compression, the uncompressed version has blank frames for z>346.  This tiff has 693 frames, each 601x1380.  Exactly the same thing is seen with another tiff that has 693 frames each 779x1380 - again the uncompressed version is blank after frame 346.

I'd be interested to know if anyone else is reading big tiffs with ITK, on Linux.

Thanks
Gib
_______________________________________________
Community mailing list
Community at itk.org<mailto:Community at itk.org>
http://public.kitware.com/cgi-bin/mailman/listinfo/community

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/community/attachments/20140305/43170064/attachment-0002.html>


More information about the Community mailing list