Satellite imagery and orthophotos (aerial photographs) are handled in GRASS as raster maps and specialized tasks are performed using the imagery (i.*) modules. All general operations are handled by the raster modules.
- : A short introduction to image processing in GRASS 6
- Full GRASS 4.0 Image Processing manual (PDF, 47 pages)
- : Imagery module help pages
- Data import is generally handled by the module
- The imagery screenshots page
The wxGUI offers a convenient tool for single map and bulk import:
- see Importing data
Sea Surface Temperature (SST)
High resolution data
- Georectification tool is available from the File menu in the GUI.
- , (scanned maps, satellite images)
- (aerial images)
A multi-band image may be grouped and georectified with a single set of ground control points (, , ).
See also the Georeferencing wiki page
Correction for atmospheric effects
- GRASS AddOns) : simple dark-object/Tasseled Cap based haze minimization (from
- Atmospheric correction : more complex correction but based on atmospheric models - see tutorial:
Correction for topographic/terrain effects
In rugged terrain, such correction might be useful to minimize negative effects.
- simple "cosine correction" using , (tends to overshoot when slopes are high)
the following correction methods are implemented: cosine, minnaert, percent, c-factor.
- Note, that for the sun's zenith (in degrees) parameter, the equation "Sun's Zenith = 90 - Sun's Elevation" is generally valid
See the dedicated Image classification page.
- : Performs contextual image classification using sequential maximum a posteriori (SMAP) estimation.
- : Performs image segmentation and discontinuity detection (based on the Mumford-Shah variational model).
- i.segment: Image Segmentation
- see also Image destriping
Canonical Component Analysis
Principal Component Analysis
- see also Principal Components Analysis
A series of commonly used texture measures (derived from the Grey Level Co-occurrence Matrix, GLCM), also called Haralick's texture features are available:
- : In case of panchromatic maps or limited amount of channels, it is often recommended to generate synthetic channels through texture analysis
- manual) is used to perform Spectral Unmixing (
- : version for GRASS GIS 7
Time series analysis
- Decorrelation stretching with or
- Density slicing with
- Principal Component Analysis with
Geometric Enhancements - Image Fusion - Pansharpening - Image Segmentation
Image fusion and Pansharpening:
- and : can be used for image fusion
- : image fusion of pan-chromatic and color channels
- : Image fusion algorithms to sharpen multispectral with high-res panchromatic channels (GRASS 7)
- which performs image segmentation and discontinuity detection (based on the Mumford-Shah variational model). The module generates a piece-wise smooth approximation of the input raster map and a raster map of the discontinuities of the output approximation. The discontinuities of the output approximation are preserved from being smoothed. (Addons)
- : Identifies segments (objects) from imagery data (GRASS 7)
Optimal channel selection for color composites
- see Stereo anaglyphs
Ideas collection for improving GRASS' Image processing capabilities
Below modules need some tuning before being added to GRASS 6. Volunteers welcome.
Spectral unmixing ideas
- Make use of the Spectral Python (SPy) which is a pure Python module for processing hyperspectral image data
Spectral angle mapping ideas
- : geocoding with lines (instead of points) with homography (as improved i.points; it was formerly called i.linespoints)
- support splines from GDAL (see GRASS_AddOns#Imagery_add-ons)
- New Georectifier: see also http://gama.fsv.cvut.cz/~landa/grass/swf/georect.html
Image matching ideas
- : automated search of GCPs based on FFT correlation (as improved i.points)
- Reference: M. Neteler, D. Grasso, I. Michelazzi, L. Miori, S. Merler, and C. Furlanello, 2005: An integrated toolbox for image registration, fusion and classification. International Journal of Geoinformatics, 1(1), pp. 51-61 PDF
Image classification ideas
This is stand-alone stereo modeling software (DEM extraction etc). Waits for integration into GRASS.
Bundle block adjustment
Needed to orthorectify a series aerial images taken sequentially with overlap. "Histoical" method which is nowadays interesting for UAV flights with octocopters and such.
Automatec GPC search could be done by "auto-sift".
Available: Octave code which prepares input to anbatch job (contact Markus Neteler).
Lidar LAS format
LAS Tools by M. Isenburg, Howard Butler et al.: http://www.liblas.org
las2txt | r.in.xyz in=- fs=" "
Update:and implemented by Markus Metz (GRASS 7)
Improving the existing code
It might be sensible to merge the various image libraries:
- GRASS 6 standard libs:
- lib/imagery/: standard lib, in use (i.* except for i.points3, i.rectify3, see below)
- imagery/i.ortho.photo/libes/: standard lib, in use ( , photo.*)
- GRASS 5 (! only) image3 lib:
- GRASS 5/6 image proc commands:
- merge of , , i.points3 (see above)
- merge of and i.rectify3 (see above)
addition of new resampling algorithms such as bilinear, cubic convolution (take from(done 10/2010) or )
- add other warping methods (maybe lanczos or thin splines from GDAL?): Addons#i.warp
- implement/finish linewise ortho-rectification of satellite data