AWARE [SYSTEMS] Imaging expertise for the Delphi developer
AWare Systems, Imaging expertise for the Delphi developer, Home TIFF and LibTiff Mailing List Archive

LibTiff Mailing List

TIFF and LibTiff Mailing List Archive
February 2010

Previous Thread
Next Thread

Previous by Thread
Next by Thread

Previous by Date
Next by Date

Contact

The TIFF Mailing List Homepage
This list is run by Frank Warmerdam
Archive maintained by AWare Systems



Valid HTML 4.01!



Thread

2010.02.08 21:39 "FFT on two TIFF images", by Richard Nolde
2010.02.08 23:05 "Re: FFT on two TIFF images", by Andy Cave
2010.02.09 08:16 "Re: FFT on two TIFF images", by Debora Gil
2010.02.09 09:11 "Re: FFT on two TIFF images", by <jcupitt@gmail.com>
2010.02.09 15:39 "Re: FFT on two TIFF images", by Lee Howard
2010.02.09 16:37 "Re: FFT on two TIFF images", by Bob Friesenhahn

2010.02.08 21:39 "FFT on two TIFF images", by Richard Nolde

Deborah,
    Either you are making lots of assumptions about TIFF images or your 
needs are very restricted. Here are a few things to consider if you want 
to use LIBTIFF.

1) G3/G4 Faxes are encoded with 8 samples per byte before compression, 
not 8 eight bits per sample so you have to extract a single sample from 
each byte with bit masks and shifts and then promote that bit to a 
double. LIBTIFF will handle the encode/decode of the compressed data 
stream into your buffer, but then you have to extract the samples from 
that packed buffer into a much larger buffer. Tiffcrop contains code 
that extracts single bits from the G3/G4 decoded buffer if you want to 
look at it. Promoting the values to double would just be a matter of 
casting the returned samples as you copy them into your complex buffer 
from the default buffer returned to your application by LibTIFF.

2) Fourier Transforms only work if the width of the sample is a power of 
two, which is pretty unlikely to be the case with faxes.  You will need 
to pad each line out to a power of two with zeros before processing your 
data with an FFT.

3) If both images are of different sizes, you may need to compare only 
the parts that overlap, which could require some knowledge of the 
individual images to determine which parts to extract.

4) Faxes from physical fax machines (they do still exist) are often 
skewed and this may effect the accuracy of your results.

5) It has been a long time since I wrote an FFT, so I'm not too sure 
about this next comment. You may want to check if there is any value in 
doing an FFT on bilevel images. I think it is more common to do FFTs on 
grayscale images where the rate of transition from light to dark can 
vary over a wide area instead of being a simple on/off transition.

A fellow developer in Germany has recommended Libfreeimage as a good way 
to get access to TIFF files using LibTiff. On Fedora, the RPMs are 
called freeimage and freeimage-devel. I don't know which TIFF formats it 
supports and what level of access it provides, but it might be worth a 
check.

Richard Nolde
Tiffcrop author.