Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I have a lot of 50-100 MP colour images that I would like to view on linux.

For example, 10000x17000 size is typical, but most image viewers will fail with out-of-memory.

The file format is png or jpg.

What I want is the ability to view such image in part and in whole, with the ability to scroll around the image. Low memory consumption, so no full image unpacked into bitmap in memory.

share|improve this question
    
Work is apparently going into this - see the LinuxJournal article on LIMP. –  new123456 Nov 10 '11 at 21:35
    
Is this with 64-bit Linux? –  Ken Nov 10 '11 at 23:49
    
No, it is 32-bit. The png image is very heavy compressed, up to several mb. Jpgs are 20-50 mb. –  osgx Nov 11 '11 at 0:27
add comment

2 Answers

Gwenview

This is the default KDE image viewer. I just tried it on a 128-megapixel color JPEG (my OS is 32-bit). Gwenview loaded the image about 1 second.

  • It loads the image zoomed out initially. The process is using only 55.8 MB of memory, so clearly it hasn't loaded the full uncompressed image data.

  • At 100% zoom, it is quite snappy when I pan the image. The process is now using 520 MB of memory, which is slightly more than the 489 MB the uncompressed 32-bit image would take up.

However, with images of the size you described, loading the whole thing in memory is tractable on a recent computer. (The 32-bit addressing limit is 3 GB on Linux.)

ImageMagick

ImageMagick supports processing huge images without storing it all in memory.

To do this, use

display -limit memory 256mb huge_img.png

(replace 256mb with however much memory you want to use). ImageMagick will store the remainder of the pixel data on disk (/tmp/magick-12345678), so that it doesn't have to hold it all in memory.

It seems to be slower than Gwenview, but you might prefer it if you don't want to install all of Gwenview's KDE dependencies, or are heavily resource-constrained.

share|improve this answer
add comment

The compressed jpgs may only be 50 meg but the pure raster would be about 700 meg. Given 32 bit OSs can only access 2 or 3 gigs of memory in a process ... With the OS load and the graphics program there may not be room.

The question is do the images tools you are using work with a raster internally. To do the windowed viewing the tools would need bit by bit access to the jpg data. I don't know if that is possible.

Can you try this on a 64 bit OS with 8 or 16 gig memory. If it works there then you know that they are expanding the jpg.

share|improve this answer
    
The question was to find programs which need no to store full (detalized) raster in memory. When I viewing part of image, only this part (and some raster arounf) should be unpacked; if move to other part, I'll wait for new unpacking. When viewing full image, raster can be scaled down immediately after unpacking. I think, OpenEV is an example of such program - and my images are geospatial data. –  osgx Oct 10 '12 at 23:16
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.