imageryintro.html 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254
  1. <!-- meta page description: Image processing in GRASS GIS -->
  2. <!-- meta page index: imagery -->
  3. <h3>Image processing in general</h3>
  4. <b>Digital numbers and physical values (reflection/radiance-at-sensor):</b>
  5. <p>
  6. Satellite imagery is commonly stored in Digital Numbers (DN) for
  7. minimizing the storage volume, i.e. the originally sampled analog
  8. physical value (color, temperature, etc) is stored a discrete
  9. representation in 8-16 bits. For example, Landsat data are stored in
  10. 8bit values (i.e., ranging from 0 to 255); other satellite data may
  11. be stored in 10 or 16 bits. Having data stored in DN, it implies
  12. that these data are not yet the observed ground reality. Such data
  13. are called "at-satellite", for example the amount of energy sensed
  14. by the sensor of the satellite platform is encoded in 8 or more
  15. bits. This energy is called radiance-at-sensor. To obtain physical
  16. values from DNs, satellite image providers use a linear transform
  17. equation <tt>(y = a * x + b)</tt> to encode the radiance-at-sensor
  18. in 8 to 16 bits. DNs can be turned back into physical values by
  19. applying the reverse formula <tt>(x = (y - b) / a)</tt>.
  20. <p>
  21. The GRASS GIS module <a href="i.landsat.toar.html">i.landsat.toar</a>
  22. easily transforms Landsat DN to radiance-at-sensor (top of atmosphere,
  23. TOA). The equivalent module for ASTER data is
  24. <a href="i.aster.toar.html">i.aster.toar</a>.
  25. For other satellites, <a href="r.mapcalc.html">r.mapcalc</a> can
  26. be employed.
  27. <p>
  28. <b>Reflection/radiance-at-sensor and surface reflectance</b>
  29. <p>
  30. When radiance-at-sensor has been obtained, still the atmosphere
  31. influences the signal as recorded at the sensor. This atmospheric
  32. interaction with the sun energy reflected back into space by
  33. ground/vegetation/soil needs to be corrected. The need of
  34. removing atmospheric artifacts stems from the fact that the
  35. atmosphericic conditions are changing over time. Hence, to gain
  36. comparability between Earth surface images taken at different
  37. times, atmospheric need to be removed converting at-sensor values
  38. which are top of atmosphere to surface reflectance values.
  39. <p>
  40. In GRASS GIS, there are two ways to apply atmospheric correction for
  41. satellite imagery. A simple, less accurate way for Landsat is with
  42. <a href="i.landsat.toar.html">i.landsat.toar</a>,
  43. using the DOS correction method. The more accurate way is using
  44. <a href="i.atcorr.html">i.atcorr</a> (which supports many satellite
  45. sensors). The atmospherically corrected sensor data represent
  46. surface <a href="http://en.wikipedia.org/wiki/reflectance">reflectance</a>,
  47. which ranges theoretically from 0% to 100%. Note that this level of
  48. data correction is the proper level of correction to calculate
  49. vegetation indices.
  50. <p>
  51. In GRASS GIS, image data are identical to <a href="rasterintro.html">raster data</a>.
  52. However, a couple of commands are explicitly dedicated to image
  53. processing. The geographic boundaries of the raster/imagery file are
  54. described by the north, south, east, and west fields. These values
  55. describe the lines which bound the map at its edges. These lines do
  56. NOT pass through the center of the grid cells at the edge of the
  57. map, but along the edge of the map itself.
  58. <p>
  59. As a general rule in GRASS:
  60. <ol>
  61. <li> Raster/imagery output maps have their bounds and resolution equal
  62. to those of the current region.
  63. <li> Raster/imagery input maps are automatically cropped/padded and
  64. rescaled (using nearest-neighbor resampling) to match the current
  65. region.
  66. </ol>
  67. <h3>Imagery import</h3>
  68. The module <a href="r.in.gdal.html">r.in.gdal</a> offers a common
  69. interface for many different raster and satellite image
  70. formats. Additionally, it also offers options such as on-the-fly
  71. location creation or extension of the default region to match the
  72. extent of the imported raster map. For special cases, other import
  73. modules are available. Always the full map is imported. Imagery data
  74. can be group (e.g. channel-wise) with <a href="i.group.html">i.group</a>.
  75. <p>
  76. For importing scanned maps, the user will need to create a
  77. x,y-location, scan the map in the desired resolution and save it into
  78. an appropriate raster format (e.g. tiff, jpeg, png, pbm) and then use
  79. <a href="r.in.gdal.html">r.in.gdal</a> to import it. Based on
  80. reference points the scanned map can be rectified to obtain geocoded
  81. data.
  82. <h3>Image processing operations</h3>
  83. GRASS raster/imagery map processing is always performed in the current
  84. region settings (see <a href="g.region.html">g.region</a>), i.e. the
  85. current region extent and current raster resolution is used. If the
  86. resolution differs from that of the input raster map(s), on-the-fly
  87. resampling is performed (nearest neighbor resampling). If this is not
  88. desired, the input map(s) has/have to be resampled beforehand with one
  89. of the dedicated modules.
  90. <h3>Geocoding of imagery data</h3>
  91. GRASS is able to geocode raster and image data of various types:
  92. <ul>
  93. <li>unreferenced scanned maps by defining four corner points
  94. (<a href="i.group.html">i.group</a>, <a href="i.target.html">i.target</a>,
  95. <a href="g.gui.gcp.html">g.gui.gcp</a>, <a href="i.rectify.html">i.rectify</a>)</li>
  96. <li>unreferenced satellite data from optical and Radar sensors by
  97. defining a certain number of ground control points
  98. (<a href="i.group.html">i.group</a>, <a href="i.target.html">i.target</a>,
  99. <a href="g.gui.gcp.html">g.gui.gcp</a>, <a href="i.rectify.html">i.rectify</a>)</li>
  100. <li>interactive graphical <a href="wxGUI.gcp.html">Ground Control Point (GCP) manager</a></li>
  101. <!--
  102. <li>orthophoto generation based on DEM: <a href="i.ortho.photo.html">i.ortho.photo</a></li>
  103. <li>digital handheld camera geocoding: modified procedure for
  104. <a href="i.ortho.photo.html">i.ortho.photo</a></li>
  105. -->
  106. </ul>
  107. <h3>Visualizing (true) color composites</h3>
  108. To quickly combine the first three channels to a near natural color
  109. image, the GRASS command <a href="d.rgb.html">d.rgb</a> can be used or
  110. the graphical GIS manager (<a href="wxGUI.html">wxGUI</a>). It assigns
  111. each channel to a color which is then mixed while displayed. With a
  112. bit more work of tuning the grey scales of the channels, nearly
  113. perfect colors can be achieved. Channel histograms can be shown with
  114. <a href="d.histogram.html">d.histogram</a>.
  115. <h3>Calculation of vegetation indices</h3>
  116. An example for indices derived from multispectral data is the NDVI
  117. (normalized difference vegetation index). To study the vegetation
  118. status with NDVI, the Red and the Near Infrared channels (NIR) are
  119. taken as used as input for simple map algebra in the GRASS command
  120. <a href="r.mapcalc.html">r.mapcalc</a>
  121. (<tt>ndvi = 1.0 * (nir - red)/(nir + red)</tt>). With
  122. <a href="r.colors.html">r.colors</a> an optimized "ndvi" color table
  123. can be assigned afterward. Also other vegetation indices can be
  124. generated likewise.
  125. <h3>Calibration of thermal channel</h3>
  126. The encoded digital numbers of a thermal infrared channel can be
  127. transformed to degree Celsius (or other temperature units) which
  128. represent the temperature of the observed land surface. This requires
  129. a few algebraic steps with <a href="r.mapcalc.html">r.mapcalc</a>
  130. which are outlined in the literature to apply gain and bias values
  131. from the image metadata.
  132. <h3>Image classification</h3>
  133. Single and multispectral data can be classified to user defined land
  134. use/land cover classes. In case of a single channel, segmentation will
  135. be used.
  136. GRASS supports the following methods:
  137. <ul>
  138. <li> Radiometric classification:
  139. <ul>
  140. <li> Unsupervised classification (<a href="i.cluster.html">i.cluster</a>,
  141. <a href="i.maxlik.html">i.maxlik</a>) using the Maximum Likelihood
  142. classification method</li>
  143. <li> Supervised classification (<a href="i.gensig.html">i.gensig</a>
  144. or <a href="g.gui.iclass.html">g.gui.iclass</a>, <a href="i.maxlik.html">i.maxlik</a>)
  145. using the Maximum Likelihood classification method</li>
  146. </ul>
  147. <li> Combined radiometric/geometric (segmentation based) classification:
  148. <ul>
  149. <li> Supervised classification (<a href="i.gensigset.html">i.gensigset</a>,
  150. <a href="i.smap.html">i.smap</a>)
  151. </ul>
  152. <li> Object-oriented classification:
  153. <ul>
  154. <li> Unsupervised classification (segmentation based:
  155. <a href="i.segment.html">i.segment</a>)
  156. </ul>
  157. </ul>
  158. Kappa statistic can be calculated to validate the results
  159. (<a href="r.kappa.html">r.kappa</a>). Covariance/correlation matrices can be
  160. calculated with <a href="r.covar.html">r.covar</a>.
  161. <h3>Image fusion</h3>
  162. In case of using multispectral data, improvements of the resolution
  163. can be gained by merging the panchromatic channel with color
  164. channels. GRASS provides the HIS (<a href="i.rgb.his.html">i.rgb.his</a>,
  165. <a href="i.his.rgb.html">i.his.rgb</a>) and the Brovey and PCA transform
  166. (<a href="i.pansharpen.html">i.pansharpen</a>) methods.
  167. <h3>Radiometric corrections</h3>
  168. Atmospheric effects can be removed with <a href="i.atcorr.html">i.atcorr</a>.
  169. Correction for topographic/terrain effects is offered in <a href="i.topo.corr.html">i.topo.corr</a>.
  170. Clouds in LANDSAT data can be identified and removed with
  171. <a href="i.landsat.acca.html">i.landsat.acca</a>.
  172. Calibrated digital numbers of LANDSAT and ASTER imagery may be converted to
  173. top-of-atmosphere radiance or reflectance and temperature (<a href="i.aster.toar.html">i.aster.toar</a>,
  174. <a href="i.landsat.toar.html">i.landsat.toar</a>).
  175. <h3>Time series processing</h3>
  176. GRASS also offers support for time series processing (<a
  177. href="r.series.html">r.series</a>). Statistics can be derived from a
  178. set of coregistered input maps such as multitemporal satellite
  179. data. The common univariate statistics and also linear regression can
  180. be calculated.
  181. <h3>Evapotranspiration modeling</h3>
  182. In GRASS, several types of evapotranspiration (ET) modeling methods
  183. are available:
  184. <ul>
  185. <li> Reference ET: Hargreaves (<a href="i.evapo.mh.html">i.evapo.mh</a>),
  186. Penman-Monteith (<a href="i.evapo.pm.html">i.evapo.pm</a>);</li>
  187. <li> Potential ET: Priestley-Taylor (<a href="i.evapo.pt.html">i.evapo.pt</a>);</li>
  188. <li> Actual ET: <a href="i.evapo.time.html">i.evapo.time</a>.</li>
  189. </ul>
  190. Evaporative fraction: <a href="i.eb.evapfr.html">i.eb.evapfr</a>,
  191. <a href="i.eb.hsebal01.html">i.eb.hsebal01</a>.
  192. <h3>Energy balance</h3>
  193. Emissivity can be calculated with <a href="i.emissivity.html">i.emissivity</a>.
  194. Several modules support the calculation of the energy balance:
  195. <ul>
  196. <li> Actual evapotranspiration for diurnal period (<a href="i.eb.eta.html">i.eb.eta</a>);</li>
  197. <li> Evaporative fraction and root zone soil moisture (<a href="i.eb.evapfr.html">i.eb.evapfr</a>);</li>
  198. <li> Sensible heat flux iteration (<a href="i.eb.hsebal01.html">i.eb.hsebal01</a>);</li>
  199. <li> Net radiation approximation (<a href="i.eb.netrad.html">i.eb.netrad</a>);</li>
  200. <li> Soil heat flux approximation (<a href="i.eb.soilheatflux.html">i.eb.soilheatflux</a>).</li>
  201. </ul>
  202. <h3>See also</h3>
  203. <ul>
  204. <li> GRASS GIS Wiki page: <a href="http://grasswiki.osgeo.org/wiki/Image_processing">Image processing</a></li>
  205. <li>The GRASS 4
  206. <em><a href="http://grass.osgeo.org/gdp/imagery/grass4_image_processing.pdf">Image
  207. Processing manual</a></em></li>
  208. <li><a href="rasterintro.html">Introduction into raster data processing</a></li>
  209. <li><a href="raster3dintro.html">Introduction into 3D raster data (voxel) processing</a></li>
  210. <li><a href="vectorintro.html">Introduction into vector data processing</a></li>
  211. <li><a href="temporalintro.html">Introduction into temporal data processing</a></li>
  212. <li><a href="databaseintro.html">Database management</a></li>
  213. <li><a href="projectionintro.html">Projections and spatial transformations</a></li>
  214. </ul>