tags:

views:

552

answers:

6

Hello,

I am working on TIFF images for image compression.

I want to know how is the actual raw image data i.e. R,G,B components organised/stored in the TIFF file.

Is it stored as G0B0R0G1B1R1... (1 byte each for each color component, all components intereleaved)

or is it some other way viz. planar format or something else?

Thank you.

-AD.

A: 

The TIFF specification can be found here: http://partners.adobe.com/public/developer/tiff/index.html

tomasso
@tomasso: This document is not available. Does one need to be a member to login there. or is it not free?
goldenmean
I have no problem accessing it.
jimka
A: 

I have been doing the same, with tiff files looking at multi resoution tiffs.

Adobe have TIFF 6 documentation on their website.

You should be able to use P/Invoke on LibTiff with c# or vb.net.

Their are many types of compression, some of them proprietary.

Elijah Glover
@Elijah: This document is not available. Does one need to be a member to login there. or is it not free?
goldenmean
http://partners.adobe.com/public/developer/en/tiff/TIFF6.pdf
Elijah Glover
+3  A: 

TIFF specifies:

  • How attributes are associated with a page
  • How multiple pages (and their attributes) are packed into a single file

Page attributes include properties such as:

  • Dimensions
  • Encoding scheme

In other words, a TIFF file may contain data that's encoding using any of many different encoding schemes.

ChrisW
+1  A: 

The TIFF file can store various image types:

  • Bilevel (B/W)
  • Grayscale
  • Palette-color
  • RGB full-color

The storing of actual image data is done differently for each image type.

The specification is not the scariest I have seen, but it is definitely not trivial!

Ola Eldøy
A: 

Looking at the doc supplied by tomassao, I see that uncompressed RGB is just one of the possible tiff encodings.

It looks like the data is not interleaved. In fact, you can specify more than 3 samples per pixels (but RGB is 3), and you can specify different numbers of bits per sample (but 8,8,8 is common).

I assume you already know about how the headers work. The document covers it if you don't.

UncleO
A: 

Tiff compression is available for free with libtiff or ImageMagick, and built into .NET and Java. If you require advanced features, companies, like mine (Atalasoft), offer more control over the exact encoding (support tiles or strips, old style JPEG encoding, easier tiff tag access, etc).

Lou Franco