Provided by: grass-doc_6.4.3-3_all bug


       imageryintro - Image processing introduction

       Image processing introduction

Image processing in GRASS GIS

   General introduction
       Digital numbers and physical values (reflection/radiance-at-sensor):

       Satellite  imagery  is  commonly stored in Digital Numbers (DN) for minimizing the storage
       volume, i.e. the originally sampled analog physical value  (color,  temperature,  etc)  is
       stored  a  discrete  representation  in 8-16 bits. For example, Landsat data are stored in
       8bit values (i.e., ranging from 0 to 255); other satellite data may be stored in 10 or  16
       bits. Having data stored in DN, it implies that these data are not yet the observed ground
       reality. Such data are called "at-satellite", for example the amount of energy  sensed  by
       the  sensor  of the satellite platform is encoded in 8 or more bits. This energy is called
       radiance-at-sensor. To obtain physical values from DNs, satellite image  providers  use  a
       linear  transform  equation  (y  =  a * x + b) to encode the radiance-at-sensor in 8 to 16
       bits. DNs can be turned back into physical values by applying the reverse formula (x =  (y
       - b) / a).

       The  GRASS  GIS  module i.landsat.toar easily transforms Landsat DN to radiance-at-sensor.
       For other satellites, r.mapcalc can be employed.

       Reflection/radiance-at-sensor and surface reflectance

       When radiance-at-sensor has been obtained, still the atmosphere influences the  signal  as
       recorded  at  the  sensor. This atmospheric interaction with the sun energy reflected back
       into space by ground/vegetation/soil needs to be corrected. There are two  ways  to  apply
       atmospheric  correction  for  satellite  imagery.  The  simple  way  for  Landsat  is with
       i.landsat.toar, using the DOS correction method. The more accurate way is  using  i.atcorr
       (which  works  for  many  satellite  sensors).  The  atmospherically corrected sensor data
       represent surface reflectance, which ranges theoretically from 0% to 100%. Note that  this
       level  of  data  correction  is  the  proper  level  of correction to calculate vegetation

       In GRASS GIS, image data are identical to raster data.  However, a couple of commands  are
       explicitly  dedicated to image processing. The geographic boundaries of the raster/imagery
       file are described by the north, south, east, and west fields. These values  describe  the
       lines  which bound the map at its edges. These lines do NOT pass through the center of the
       grid cells at the edge of the map, but along the edge of the map itself.

       As a general rule in GRASS:

               Raster/imagery output maps have their bounds and resolution equal to those of  the
              current region.

               Raster/imagery  input  maps  are  automatically cropped/padded and rescaled (using
              nearest-neighbor resampling) to match the current region.

   Imagery import
       The module offers a common interface for many  different  raster  and  satellite
       image  formats.  Additionally, it also offers options such as on-the-fly location creation
       or extension of the default region to match the extent of the imported  raster  map.   For
       special  cases,  other  import  modules  are  available.  Always the full map is imported.
       Imagery data can be group (e.g. channel-wise) with

       For importing scanned maps, the user will need to create a x,y-location, scan the  map  in
       the  desired  resolution  and  save it into an appropriate raster format (e.g. tiff, jpeg,
       png, pbm) and then use to import it. Based on reference points the  scanned  map
       can be rectified to obtain geocoded data.

   Image processing operations
       GRASS  raster/imagery  map  processing  is always performed in the current region settings
       (see g.region), i.e. the current region extent and current raster resolution is  used.  If
       the  resolution  differs  from  that  of the input raster map(s), on-the-fly resampling is
       performed (nearest neighbor resampling). If this is not desired, the input map(s) has/have
       to be resampled beforehand with one of the dedicated modules.

   Geocoding of imagery data
       GRASS is able to geocode raster and image data of various types:

                     unreferenced   scanned  maps  by  defining  four  corner  points  (,

                     unreferenced satellite data from optical and Radar  sensors  by  defining  a
                     certain number of ground control points (, i.rectify)

                     orthophoto based on DEM:

                     digital handheld camera geocoding: modified procedure for

   Visualizing (true) color composites
       To  quickly  combine  the  first  three  channels to a near natural color image, the GRASS
       command d.rgb can be used or the graphical GIS manager (gis.m). It assigns each channel to
       a  color  which  is  then  mixed  while displayed. With a bit more work of tuning the grey
       scales of the channels, nearly perfect colors can be achieved. Channel histograms  can  be
       shown with d.histogram.

   Calculation of vegetation indices
       An  example for indices derived from multispectral data is the NDVI (normalized difference
       vegetation index). To study the vegetation status with NDVI, the Red and the Near Infrared
       channels  (NIR)  are  taken  as  used as input for simple map algebra in the GRASS command
       r.mapcalc (ndvi = 1.0 * (nir - red)/(nir + red)). With r.colors an optimized "ndvi"  color
       table can be assigned afterward. Also other vegetation indices can be generated likewise.

   Calibration of thermal channel
       The  encoded  digital  numbers  of a thermal infrared channel can be transformed to degree
       Celsius (or other temperature units) which represent the temperature of the observed  land
       surface.  This  requires  a  few  algebraic steps with r.mapcalc which are outlined in the
       literature to apply gain and bias values from the image metadata.

   Image classification
       Single and multispectral data can be  classified  to  user  defined  land  use/land  cover
       classes.  In  case  of  a  single  channel, segmentation will be used.  GRASS supports the
       following methods:

                      Radiometric classification:

                             Unsupervised classification (i.cluster, i.maxlik) using the  Maximum
                            Likelihood classification method

                             Supervised  classification  (i.gensig or i.maxlik) using the Maximum
                            Likelihood classification method
              Combined  radiometric/geometric  (segmentation  based)  supervised   classification
              (i.gensigset, i.smap)
       Kappa statistic can be calculated to validate the results (r.kappa).

   Image fusion
       In  case  of  using  multispectral  data,  improvements of the resolution can be gained by
       merging the panchromatic channel with color channels. GRASS provides the  HIS  (i.rgb.his,
       i.his.rgb) and the Brovey transform (i.fusion.brovey) methods.

   Time series processing
       GRASS  also  offers support for time series processing (<a href="r.series.html">r.series).
       Statistics can be derived from a set of coregistered  input  maps  such  as  multitemporal
       satellite  data.  The  common  univariate  statistics  and  also  linear regression can be

   See also
                      GRASS GIS Wiki page: Image processing

                     The GRASS 4 Image Processing manual

                     Introduction to GRASS 2D raster map processing

                     Introduction to GRASS 3D raster map (voxel) processing

                     Introduction to GRASS vector map processing

       imagery index - full index

       © 2008-2012 GRASS Development Team