[gdal-dev] create mosaic using mask bands
Etienne Tourigny
etourigny.dev at gmail.com
Fri Apr 13 15:22:06 EDT 2012
You should use gdalwarp only, no ned for gdal_merge.py.
The order of input datasets is important, so in your case you should use
gdalwarp south.tif north.tif merge.tif
Plus you don't need a mask, the last input file will override the first one.
Etienne
On Fri, Apr 13, 2012 at 4:09 PM, Gregory, Matthew
<matt.gregory at oregonstate.edu> wrote:
> Hi all,
>
> I don't think I'm understanding correctly how to use masking bands. My goal is to create a mosaic between two adjacent rasters using mask bands on each raster to define the valid data. As a test, I have two single band GeoTiffs (north.tif and south.tif) that overlap by about 400 rows. I use the following Python script to create a small mask at the top center of the south image which creates the desired .msk file:
>
> from osgeo import gdal, gdalconst
> ds = gdal.Open('south.tif', gdalconst.GA_ReadOnly)
> ds.CreateMaskBand(2)
> rb = ds.GetRasterBand(1)
> mask = rb.GetMaskBand()
> data = mask.ReadAsArray()
> data[:] = 255
> data[0:500,2500:3000] = 0
> mask.WriteArray(data)
> ds = None
>
> Then I try to merge the two images together:
>
> gdal_merge.py -o merge.tif -of GTiff -createonly north.tif south.tif
> gdalwarp north.tif south.tif merge.tif
>
> I was expecting that the masked pixels from south.tif would be considered NODATA allowing the north.tif pixels to 'shine through' in that location. Instead the original pixel values from south.tif also show up in the mosaic.
>
> thanks, matt
> _______________________________________________
> 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