Page Summary
-
Image.addBandsreturns an image with all bands from the first input plus selected bands from the second input. -
Bands with the same name in the second input can optionally overwrite bands in the first input image.
-
The returned image inherits the metadata and footprint from the first input image.
-
You can specify a list of band names to copy from the source image, or copy all bands by default.
| Usage | Returns |
|---|---|
Image.
addBands
(srcImg, names
, overwrite
)
|
Image |
| Argument | Type | Details |
|---|---|---|
|
this:
dstImg
|
Image | An image into which to copy bands. |
srcImg
|
Image | An image containing bands to copy. |
names
|
List, default: null | Optional list of band names to copy. If names is omitted, all bands from srcImg will be copied over. |
overwrite
|
Boolean, default: false | If true, bands from `srcImg` will override bands with the same names in `dstImg`. Otherwise the new band will be renamed with a numerical suffix (`foo` to `foo_1` unless `foo_1` exists, then `foo_2` unless it exists, etc). |
Examples
Code Editor (JavaScript)
// A Sentinel-2 surface reflectance image. var img = ee . Image ( 'COPERNICUS/S2_SR/20210109T185751_20210109T185931_T10SEG' ); print ( 'Original image' , img ); // Scale reflectance bands and overwrite the original bands. var reflBands = img . select ( 'B.*' ). divide ( 10000 ); img = img . addBands ({ srcImg : reflBands , overwrite : true }); // Compute and add a single band (NDVI). var ndvi = img . normalizedDifference ([ 'B8' , 'B4' ]). rename ( 'NDVI' ); img = img . addBands ( ndvi ); // Compute and add multiple bands (NDWI and NBR). var ndwi = img . normalizedDifference ([ 'B3' , 'B8' ]). rename ( 'NDWI' ); var nbr = img . normalizedDifference ([ 'B8' , 'B12' ]). rename ( 'NBR' ); var newBands = ee . Image ([ ndwi , nbr ]); img = img . addBands ( newBands ); print ( 'Image with added/modified bands' , img );
import ee import geemap.core as geemap
Colab (Python)
# A Sentinel-2 surface reflectance image. img = ee . Image ( 'COPERNICUS/S2_SR/20210109T185751_20210109T185931_T10SEG' ) display ( 'Original image:' , img ) # Scale reflectance bands and overwrite the original bands. refl_bands = img . select ( 'B.*' ) . divide ( 10000 ) img = img . addBands ( srcImg = refl_bands , overwrite = True ) # Compute and add a single band (NDVI). ndvi = img . normalizedDifference ([ 'B8' , 'B4' ]) . rename ( 'NDVI' ) img = img . addBands ( ndvi ) # Compute and add multiple bands (NDWI and NBR). ndwi = img . normalizedDifference ([ 'B3' , 'B8' ]) . rename ( 'NDWI' ) nbr = img . normalizedDifference ([ 'B8' , 'B12' ]) . rename ( 'NBR' ) new_bands = ee . Image ([ ndwi , nbr ]) img = img . addBands ( new_bands ) display ( 'Image with added/modified bands:' , img )

