Opened 10 years ago

Closed 10 years ago

#3821 closed defect (fixed)

gdal_retile.py handles alpha incorrectly (patch)

Reported by: cdestigter Owned by: warmerdam
Priority: normal Milestone: 1.8.0
Component: Utilities Version: svn-trunk
Severity: normal Keywords:
Cc:

Description

gdal_retile.py doesn't handle alpha channels properly. This results in semi-transparent black shadows when resampling input images. The black borders are more obvious in highly shrunk (ie from high res to low res) output.

EvenR helped me out with the attached patch, which fixes the problem by setting band interpretation correctly in gdal_retile.py, and using it in GDALReprojectImage.

Here's my command line:

rm -r ~/tmp/retiled
mkdir ~/tmp/retiled
gdal_retile.py -v -co ALPHA=YES -ps 4096 4096 -ot Byte -r bilinear -levels 4 -targetDir ~/tmp/retiled ~/tmp/src-images/0000000*.tif

I'll also attach some tiny RGBA test tiffs which demonstrate the problem. Compare the output in levels 3 and 4 of output before and after patching.

Attachments (2)

gdal-retile-alpha-fix.patch (2.5 KB) - added by cdestigter 10 years ago.
gdal-retile-borders-test.zip (922.0 KB) - added by cdestigter 10 years ago.

Download all attachments as: .zip

Change History (3)

Changed 10 years ago by cdestigter

Attachment: gdal-retile-alpha-fix.patch added

Changed 10 years ago by cdestigter

comment:1 Changed 10 years ago by Even Rouault

Component: defaultUtilities
Milestone: 1.8.0
Resolution: fixed
Status: newclosed

r21095 /trunk/gdal/alg/gdalwarper.cpp: GDALReprojectImage() : correctly assign nSrcAlphaBand and nDstAlphaBand (#3821)

r21096 /trunk/gdal/swig/python/scripts/gdal_retile.py: gdal_retile.py : assign color interpretation (#3821)

r21097 /trunk/autotest/ (gcore/data/rgba.tif pyscripts/test_gdal_retile.py): Test gdal_retile.py with RGBA dataset (#3821)

Note: See TracTickets for help on using tickets.