[gdal-dev] gdal create tif, errors with gdaladdo

Stephen Woodbridge woodbri at swoodbridge.com
Fri Mar 20 23:10:18 EDT 2009


Even,

Thank you for all the extra work you did, I very much appreciate it.
Looks like I get to spend my weekend trying to rebuild the Lenny Source 
package for libtiff based on 3.9.0.

This is probably not the right list, but looking at:

ftp://ftp.remotesensing.org/pub/libtiff/

3.9.0 looks to be beta since 7/13/2007
4.0.0 looks to be beta since 1/21/2009

Did these ever get released? Am I looking at the correct site?

Thanks again for you assistance.

-Steve

Even Rouault wrote:
> Stephen,
> 
> I've managed to reproduce your issue with GDAL 1.5 compiled with libtiff 3.8.2 
> (and I'm not so surprised, as I remember that it was a known issue). But when 
> built with internal libtiff or against external libtiff 3.9.0 (CVS head 
> version), it works fine. So it is due to some bug in libtiff 3.8.2.
> So you could either compile GDAL with internal libtiff support, or just build 
> libtiff 3.9.0 and trick GDAL to link against it by using LD_LIBRARY_PATH. 
> You'll need to create a symlink from the generated libtiff.so to libtiff.so.4 
> which is expected by the Debian libgdal.so. I've tried that and it works 
> fine.
> 
> Best regards,
> 
> Even
> 
> Le Friday 20 March 2009 04:43:39 Stephen Woodbridge, vous avez écrit :
>> Even,
>>
>> So I just happened to have made a backup copy of the tif files before
>> adding the overviews. And as a said, all the files without overviews did
>> not report errors with gdalinfo -checksum file.tif.  I also check all
>> the files with the overviews and some of them, not all, do report
>> errors. I'm seeing reported:
>>
>> Warning 1: TIFFReadDirectory:n-41-35_0-0.tif: Wrong "StripByteCounts"
>> field, ignoring and calculating from imagelength
>>
>> on some of the files that have overviews added. I went back and checked
>> output from the gdaladdo and it shows up in places there also.
>>
>> This is the file without overviews added:
>>
>> woodbri at mappy:/u/leaddog-200903013/af-bck$ gdalinfo -checksum
>> n-41-35_0-0.tif
>> Driver: GTiff/GeoTIFF
>> Files: n-41-35_0-0.tif
>> Size is 26688, 16853
>> Coordinate System is:
>> GEOGCS["WGS 84",
>>      DATUM["WGS_1984",
>>          SPHEROID["WGS 84",6378137,298.2572235630016,
>>              AUTHORITY["EPSG","7030"]],
>>          AUTHORITY["EPSG","6326"]],
>>      PRIMEM["Greenwich",0],
>>      UNIT["degree",0.0174532925199433],
>>      AUTHORITY["EPSG","4326"]]
>> Origin = (59.025339626823701,37.469898080618897)
>> Pixel Size = (0.000148923698721,-0.000148923698721)
>> Metadata:
>>    AREA_OR_POINT=Area
>> Image Structure Metadata:
>>    INTERLEAVE=PIXEL
>> Corner Coordinates:
>> Upper Left  (  59.0253396,  37.4698981) ( 59d 1'31.22"E, 37d28'11.63"N)
>> Lower Left  (  59.0253396,  34.9600870) ( 59d 1'31.22"E, 34d57'36.31"N)
>> Upper Right (  62.9998153,  37.4698981) ( 62d59'59.34"E, 37d28'11.63"N)
>> Lower Right (  62.9998153,  34.9600870) ( 62d59'59.34"E, 34d57'36.31"N)
>> Center      (  61.0125775,  36.2149925) ( 61d 0'45.28"E, 36d12'53.97"N)
>> Band 1 Block=256x256 Type=Byte, ColorInterp=Red
>>    Checksum=4400
>>    NoData Value=0
>> Band 2 Block=256x256 Type=Byte, ColorInterp=Green
>>    Checksum=18333
>>    NoData Value=0
>> Band 3 Block=256x256 Type=Byte, ColorInterp=Blue
>>    Checksum=64262
>>    NoData Value=0
>>
>> And here is the samefile after adding the overviews:
>>
>> woodbri at mappy:/u/leaddog-200903013/af-bck$ cd ../af
>> woodbri at mappy:/u/leaddog-200903013/af$ gdalinfo -checksum n-41-35_0-0.tif
>> Warning 1: TIFFReadDirectory:n-41-35_0-0.tif: Wrong "StripByteCounts"
>> field, ignoring and calculating from imagelength
>> Driver: GTiff/GeoTIFF
>> Files: n-41-35_0-0.tif
>> Size is 26688, 16853
>> Coordinate System is:
>> GEOGCS["WGS 84",
>>      DATUM["WGS_1984",
>>          SPHEROID["WGS 84",6378137,298.2572235630016,
>>              AUTHORITY["EPSG","7030"]],
>>          AUTHORITY["EPSG","6326"]],
>>      PRIMEM["Greenwich",0],
>>      UNIT["degree",0.0174532925199433],
>>      AUTHORITY["EPSG","4326"]]
>> Origin = (59.025339626823701,37.469898080618897)
>> Pixel Size = (0.000148923698721,-0.000148923698721)
>> Metadata:
>>    AREA_OR_POINT=Area
>> Image Structure Metadata:
>>    INTERLEAVE=PIXEL
>> Corner Coordinates:
>> Upper Left  (  59.0253396,  37.4698981) ( 59d 1'31.22"E, 37d28'11.63"N)
>> Lower Left  (  59.0253396,  34.9600870) ( 59d 1'31.22"E, 34d57'36.31"N)
>> Upper Right (  62.9998153,  37.4698981) ( 62d59'59.34"E, 37d28'11.63"N)
>> Lower Right (  62.9998153,  34.9600870) ( 62d59'59.34"E, 34d57'36.31"N)
>> Center      (  61.0125775,  36.2149925) ( 61d 0'45.28"E, 36d12'53.97"N)
>> Band 1 Block=256x256 Type=Byte, ColorInterp=Red
>>    Checksum=4400
>>    NoData Value=0
>>    Overviews: 13344x8427, 6672x4214, 3336x2107, 1668x1054, 834x527,
>> 417x264, 209x132, 105x66
>> Band 2 Block=256x256 Type=Byte, ColorInterp=Green
>>    Checksum=18333
>>    NoData Value=0
>>    Overviews: 13344x8427, 6672x4214, 3336x2107, 1668x1054, 834x527,
>> 417x264, 209x132, 105x66
>> Band 3 Block=256x256 Type=Byte, ColorInterp=Blue
>>    Checksum=64262
>>    NoData Value=0
>>    Overviews: 13344x8427, 6672x4214, 3336x2107, 1668x1054, 834x527,
>> 417x264, 209x132, 105x66
>> Warning 1: TIFFReadDirectory:n-41-35_0-0.tif: Wrong "StripByteCounts"
>> field, ignoring and calculating from imagelength
>>
>> Stephen Woodbridge wrote:
>>> Even,
>>>
>>> I ran gdalinfo -checksum on all 51GB of images and none of them reported
>>> any errors. And none of the images are compressed.
>>>
>>> I'm using Debian Lenny packages. There is an ldd output below.
>>>
>>> $ uname -a
>>> Linux mappy 2.6.23-1-amd64 #1 SMP Fri Oct 12 23:45:48 UTC 2007 x86_64
>>> GNU/Linux
>>>
>>> $ gdalinfo --version
>>> GDAL 1.5.2, released 2008/05/29
>>>
>>> $ apt-cache show libtiff4
>>> Package: libtiff4
>>> Priority: optional
>>> Section: libs
>>> Installed-Size: 484
>>> Maintainer: Jay Berkenbilt <qjb at debian.org>
>>> Architecture: amd64
>>> Source: tiff
>>> Version: 3.8.2-11
>>> Depends: libc6 (>= 2.7-1), libjpeg62, zlib1g (>= 1:1.1.4)
>>> Filename: pool/main/t/tiff/libtiff4_3.8.2-11_amd64.deb
>>> Size: 169372
>>> MD5sum: 8c0019eef3a752760dca8f14c80c3820
>>> SHA1: 3af8b1abde23f8b55eb840ff874cd0839d340e0f
>>> SHA256: e6d69f5e619e97bea1513f080750dc847eab04ef7f3eb9dc26985b2e2f3bcb56
>>> Description: Tag Image File Format (TIFF) library
>>>  libtiff is a library providing support for the Tag Image File Format
>>>  (TIFF), a widely used format for storing image data.  This package
>>>  includes the shared library.
>>> Homepage: http://libtiff.maptools.org
>>> Tag: role::shared-lib, works-with::image:raster
>>>
>>> A typical gdalinfo on one of the files is:
>>>
>>> $ gdalinfo -checksum n-41-25_0-0.tif
>>> Files: n-41-25_0-0.tif
>>> Size is 27192, 18091
>>> Coordinate System is:
>>> GEOGCS["WGS 84",
>>>     DATUM["WGS_1984",
>>>         SPHEROID["WGS 84",6378137,298.2572235630016,
>>>             AUTHORITY["EPSG","7030"]],
>>>         AUTHORITY["EPSG","6326"]],
>>>     PRIMEM["Greenwich",0],
>>>     UNIT["degree",0.0174532925199433],
>>>     AUTHORITY["EPSG","4326"]]
>>> Origin = (59.228401534356898,27.479955940770701)
>>> Pixel Size = (0.000138699063483,-0.000138699063483)
>>> Metadata:
>>>   AREA_OR_POINT=Area
>>> Image Structure Metadata:
>>>   INTERLEAVE=PIXEL
>>> Corner Coordinates:
>>> Upper Left  (  59.2284015,  27.4799559) ( 59d13'42.25"E, 27d28'47.84"N)
>>> Lower Left  (  59.2284015,  24.9707512) ( 59d13'42.25"E, 24d58'14.70"N)
>>> Upper Right (  62.9999065,  27.4799559) ( 62d59'59.66"E, 27d28'47.84"N)
>>> Lower Right (  62.9999065,  24.9707512) ( 62d59'59.66"E, 24d58'14.70"N)
>>> Center      (  61.1141540,  26.2253536) ( 61d 6'50.95"E, 26d13'31.27"N)
>>> Band 1 Block=256x256 Type=Byte, ColorInterp=Red
>>>   Checksum=29566
>>>   NoData Value=0
>>> Band 2 Block=256x256 Type=Byte, ColorInterp=Green
>>>   Checksum=34905
>>>   NoData Value=0
>>> Band 3 Block=256x256 Type=Byte, ColorInterp=Blue
>>>   Checksum=24337
>>>   NoData Value=0
>>>
>>>
>>> woodbri at mappy:/u/leaddog-200903013$ ldd /usr/bin/gdalinfo
>>>         linux-vdso.so.1 =>  (0x00007fff937fe000)
>>>         libgdal1.5.0.so.1 => /usr/lib/libgdal1.5.0.so.1
>>> (0x00002ac017605000)
>>>         libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00002ac017dd4000)
>>>         libm.so.6 => /lib/libm.so.6 (0x00002ac0180e0000)
>>>         libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002ac018364000)
>>>         libc.so.6 => /lib/libc.so.6 (0x00002ac01857b000)
>>>         libgeos_c.so.1 => /usr/lib/libgeos_c.so.1 (0x00002ac0188ce000)
>>>         libsqlite3.so.0 => /usr/lib/libsqlite3.so.0 (0x00002ac018adf000)
>>>         libodbc.so.1 => /usr/lib/libodbc.so.1 (0x00002ac018d55000)
>>>         libodbcinst.so.1 => /usr/lib/libodbcinst.so.1
>>> (0x00002ac018fb1000) libexpat.so.1 => /usr/lib/libexpat.so.1
>>> (0x00002ac0191be000) libxerces-c.so.28 => /usr/lib/libxerces-c.so.28
>>> (0x00002ac0193e7000)
>>>         libjasper.so.1 => /usr/lib/libjasper.so.1 (0x00002ac0199e0000)
>>>         libhdf5-1.6.6.so.0 => /usr/lib/libhdf5-1.6.6.so.0
>>> (0x00002ac019c3a000)
>>>         libmfhdf.so.4 => /usr/lib/libmfhdf.so.4 (0x00002ac019f61000)
>>>         libdf.so.4 => /usr/lib/libdf.so.4 (0x00002ac01a188000)
>>>         libogdi.so.3.2 => /usr/lib/libogdi.so.3.2 (0x00002ac01a43a000)
>>>         libgif.so.4 => /usr/lib/libgif.so.4 (0x00002ac01a65a000)
>>>         libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x00002ac01a862000)
>>>         libtiff.so.4 => /usr/lib/libtiff.so.4 (0x00002ac01aa85000)
>>>         libpng12.so.0 => /usr/lib/libpng12.so.0 (0x00002ac01ace1000)
>>>         libnetcdf.so.4 => /usr/lib/libnetcdf.so.4 (0x00002ac01af06000)
>>>         libpq.so.5 => /usr/lib/libpq.so.5 (0x00002ac01b13c000)
>>>         libz.so.1 => /usr/lib/libz.so.1 (0x00002ac01b360000)
>>>         libpthread.so.0 => /lib/libpthread.so.0 (0x00002ac01b577000)
>>>         librt.so.1 => /lib/librt.so.1 (0x00002ac01b794000)
>>>         libdl.so.2 => /lib/libdl.so.2 (0x00002ac01b99d000)
>>>         libcurl-gnutls.so.4 => /usr/lib/libcurl-gnutls.so.4
>>> (0x00002ac01bba1000)
>>>         libmysqlclient.so.15 => /usr/lib/libmysqlclient.so.15
>>> (0x00002ac01bde0000)
>>>         /lib64/ld-linux-x86-64.so.2 (0x00002ac0173e8000)
>>>         libgeos-3.0.0.so => /usr/lib/libgeos-3.0.0.so
>>> (0x00002ac01c1eb000) libltdl.so.3 => /usr/lib/libltdl.so.3
>>> (0x00002ac01c53a000) libicuuc.so.38 => /usr/lib/libicuuc.so.38
>>> (0x00002ac01c741000) libicudata.so.38 => /usr/lib/libicudata.so.38
>>> (0x00002ac01ca82000) libproj.so.0 => /usr/lib/libproj.so.0
>>> (0x00002ac01d759000) libssl.so.0.9.8 => /usr/lib/libssl.so.0.9.8
>>> (0x00002ac01d99a000) libcrypto.so.0.9.8 => /usr/lib/libcrypto.so.0.9.8
>>> (0x00002ac01dbec000)
>>>         libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0x00002ac01df87000)
>>>         libcom_err.so.2 => /lib/libcom_err.so.2 (0x00002ac01e228000)
>>>         libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2
>>> (0x00002ac01e42c000)
>>>         libcrypt.so.1 => /lib/libcrypt.so.1 (0x00002ac01e658000)
>>>         libldap_r-2.4.so.2 => /usr/lib/libldap_r-2.4.so.2
>>> (0x00002ac01e890000)
>>>         libidn.so.11 => /usr/lib/libidn.so.11 (0x00002ac01eada000)
>>>         liblber-2.4.so.2 => /usr/lib/liblber-2.4.so.2
>>> (0x00002ac01ed0c000) libgnutls.so.26 => /usr/lib/libgnutls.so.26
>>> (0x00002ac01ef1b000) libnsl.so.1 => /lib/libnsl.so.1 (0x00002ac01f1ce000)
>>>         libk5crypto.so.3 => /usr/lib/libk5crypto.so.3
>>> (0x00002ac01f3e6000) libkrb5support.so.0 => /usr/lib/libkrb5support.so.0
>>> (0x00002ac01f60d000)
>>>         libkeyutils.so.1 => /lib/libkeyutils.so.1 (0x00002ac01f815000)
>>>         libresolv.so.2 => /lib/libresolv.so.2 (0x00002ac01fa17000)
>>>         libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0x00002ac01fc2c000)
>>>         libtasn1.so.3 => /usr/lib/libtasn1.so.3 (0x00002ac01fe46000)
>>>         libgpg-error.so.0 => /usr/lib/libgpg-error.so.0
>>> (0x00002ac020056000)
>>>         libgcrypt.so.11 => /usr/lib/libgcrypt.so.11 (0x00002ac02015a000)
>>>
>>> Even Rouault wrote:
>>>> Hi,
>>>>
>>>> no those warnings don't sound good at all ! The number of overviews
>>>> should be fine too.
>>>>
>>>> Could you precise the version of GDAL you're using and if you have
>>>> built with internal libtiff or external libtiff ?
>>>> (Such warnings could happen with older libtiff, especially with TIFF
>>>> compression)
>>>> Could you just check gdalinfo -checksum file.tif on your original file
>>>> before running gdaladdo and check that it doesn't throw similar errors ?
>>>>
>>>> Best regards,
>>>> Even
>>>>
>>>> Le Thursday 19 March 2009 22:41:53 Stephen Woodbridge, vous avez écrit :
>>>>> Hi,
>>>>>
>>>>> I just created a bunch of tif files from a mrsid file and when I use
>>>>> gdaladdo file.tif 2 4 8 16 32 64 128 256
>>>>>
>>>>> I get over a 1000 errors like:
>>>>>
>>>>> ERROR 1: n-41-25_0-0.tif:DumpModeDecode: Not enough data for scanline
>>>>> 1536
>>>>> ERROR 1: TIFFReadEncodedTile() failed.
>>>>> ERROR 1: IReadBlock failed at X offset 12, Y offset 7
>>>>> ERROR 1: GetBlockRef failed at X block offset 12, Y block offset 7
>>>>> ERROR 1: n-41-25_0-0.tif:DumpModeDecode: Not enough data for scanline
>>>>> 1664
>>>>> ERROR 1: TIFFReadEncodedTile() failed.
>>>>> ERROR 1: IReadBlock failed at X offset 13, Y offset 7
>>>>> ERROR 1: GetBlockRef failed at X block offset 13, Y block offset 7
>>>>>
>>>>>
>>>>>
>>>>> Is this because of the number of overviews I requested? ot something
>>>>> else? Is it safe to ignore these?
>>>>>
>>>>> -Steve
>>>>> _______________________________________________
>>>>> gdal-dev mailing list
>>>>> gdal-dev at lists.osgeo.org
>>>>> http://lists.osgeo.org/mailman/listinfo/gdal-dev
>>> _______________________________________________
>>> gdal-dev mailing list
>>> gdal-dev at lists.osgeo.org
>>> http://lists.osgeo.org/mailman/listinfo/gdal-dev
> 
> 



More information about the gdal-dev mailing list