[[interimage:|InterIMAGE wiki]] ====== TerraAIDA Operators Documentation ====== Operators reference version: 1.0.6 InterIMAGE is a multi-platform framework, written in C++, currently with implementations for LINUX and Windows operational systems. Moreover, InterIMAGE provides support for the integration of image processing operators in the interpretation process and, as such operators are treated as external programs by its control mechanism, they can be coded in any computer language, and even in proprietary programs. The InterIMAGE framework offers, nonetheless, a repository of operators, called TerraAIDA ([[http://www.dpi.inpe.br/terraaida]]), assembled with software classes and functions supplied by the [[http://www.terralib.org/|TerraLib]] library. ===== TA Arithmetic ===== **Authors** Emiliano Castejon, [[castejon@dpi.inpe.br]]\\ Carolina Moutinho Duque de Pinho, [[carolina@dpi.inpe.br]] **Description** Generate segments based on the threshold image. It is the result of an arithmetic operation from the given input images. **Type** Top-Down operator. **Applies to** Any node. **Multi-Class support** Yes. If you select //true// in the "Top Down Multi-Class" option, you must create another node in the same level with a corresponding opposite name, with prefix "n-". For example, if this class name is "MyClass" the opposite class name will be "n-MyClass". Hypothesis discarded by this operator will be classified as "n-MyClass". Alternatively, you can define a new node name in the input parameter named **Non Class Name**. [[interimage:example_supervised_c45|Example of using Multi-Class support.]] **Processing sequence** -Read input Images -Apply Arithmetic expression over the input images -Apply thresholding (by Min and Max) -Morphology (by the number of iterations) -Segments filtering (by Polygons Min Area) -Apply the user decision rule using the supplied training set. -Generate the output hypothesis **Input parameters** ^ Parameter Name ^ Type ^ Description ^ Valid Values ^ Note ^ | Input Images | * .tif | Input images. | Valid image file names. | The image type must be supported by TerraLib. | | Threshold Min | Floating point | The minimum value for the filtering threshold. | Greater than 0. | Only pixels with values between Threshold Min and Threshold Max will generate output areas. | | Threshold Max | Floating point | The maximum value for the filtering threshold. | Greater than 0. | Only pixels with values between Threshold Min and Threshold Max will generate output areas. | | Polygons Min Area | Integer | Generated polygons minimum allowed area (pixels). | | Only polygons with area greater than the supplied values will generate hypothesis. | | Dummy Value (no data) | Floating point | The dummy value from input images. | | If not present, all image data will be processed. | | Arithmetic Expression | String | One valid arithmetic expression, formed by a combination of the following elements, separated by spaces. | Operators: +, -, *, /, Real Numbers, Raster indexes and bands R0:1, R1:2 | Example: Quickbird-2 image with bands (0=B,1=G,2=R,3=NIR), the NDVI is calculated by ( R0:3 - R0:2 ) / ( R0:3 + R0:2 ). **The blank space around the mathematical operators +, -, *, / are mandatory.** | | Morphological Filter Iterations | Integer | Number of morphological (mode) iterations applied to the result. | Greater or equal to 0. | The use of a value greater than or equal to 1 is advised to avoid the creation of to small hypothesis | | Training Set File | *.shp | A file with training samples for supervised classification. | The file must be in the InterIMAGE region format. | | | Decision Rule | Decision Rule | Decision rule applied to the generated hypothesis. | | Leave blank to accept all generated hypothesis. | | Reliability | Floating point | The reliability (higher priority will be given to nodes with higher weights in cases where there are geographic overlays). | [0.0, 1.0] | | | Non Class Name | String | If Multi-Class support is active, the discarded hypothesis will fall in the node named by this parameter. | One string with the name of some node in the tree, in the same level. | | ===== TA Baatz Segmenter ===== **Authors** Thales Sehn Korting, [[tkorting@dpi.inpe.br]]\\ Emiliano Castejon, [[castejon@dpi.inpe.br]] **Description** This operator performs a segmentation based on Baatz (see the reference article for more information). Each generated segment represents an hypothesis to be analyzed by the next semantic network node. **Type** Top-Down operator. **Applies to** Any node. **Multi-Class support** No ** Reference** * [[http://www.ecognition.cc/download/baatz_schaepe.pdf|Baatz, M.; Schäpe, A. Multiresolution segmentation: an optimization approach for high quality multi-scale image segmentation. In: XII Angewandte Geographische Informationsverarbeitung, Wichmann Verlag, Heidelberg, 2000.]] **Processing sequence** -Read input image -Segmentation -Apply the user decision rule using the supplied training set. -Generate the output hypothesis **Input parameters** ^ Parameter Name ^ Type ^ Description ^ Valid Values ^ Note ^ | Input Image | * .tif | Input image file name. | A valid image file name. | The image type must be supported by TerraLib. | | Input Bands (comma separated) | String | A comma-separated list of used input images channels/bands. | From zero up to the number of channels in the image minus 1. | Ex.: An image with 3 bands will accept values from 0 to 2. Example: 0,1,2 | | Input Weights (comma separated) | String | A comma-separated list of used input channels/bands weights. | | Example: 0.1,2.4,1.3 | | Compactness Weight | Floating point | Baatz compactness attribute. | (0.0, 1.0] | | | Color Weight | Floating point | Baatz color attribute. | (0.0, 1.0] | | | Scale Parameter | Floating point | Baatz scale attribute. | Any positive real value. | | | Use Optimization | Boolean | Divides, or not, the image into pieces and segment each piece individually. | yes/no | | | Training Set File | *.shp | A file with training samples for supervised classification. | The file must be in the InterIMAGE regions format. | | | Decision Rule | Decision Rule | Decision rule applied to the generated hypothesis. | | Leave blank to accept all generated hypothesis. | | Reliability | Floating point | The reliability (higher priority will be given to nodes with higher weights in cases where there are geographic overlays). | [0.0, 1.0] | | | Euclidean Distance Threshold | Floating point | The minimum Euclidean Distance between each segment feature. | Greater than 0. | This parameter is required to merge adjacent block segments when the optimization option is enabled | ===== TA Bottom-Up Export ===== **Author** Emiliano Castejon, [[castejon@dpi.inpe.br]]\\ **Description** Allows to export the bottom-up hypothesis (including its attributes) to a shape file. This operator acts like the generic bottom-up operator, making a copy of every hypothesis to the shape file. No spatial conflict resolution is performed when there is no decision rule. **Type** Bottom-Up operator. **Applies to** Root (scene) and internal nodes. **Multi-Class support** No. **Processing sequence** -Read input hypothesis -Apply the user decision rule using the supplied training set. -Generate the output hypothesis -Generate the output shape file **Input parameters** ^ Parameter Name ^ Type ^ Description ^ Valid Values ^ Note ^ | Shape File Name | * .shp | Shape file name. | A valid shape file name. | The shapefile will be composed only by polygons and their respective attributes. | | Decision Rule | Decision Rule | Decision rule applied to the input hypothesis. | | At least the spatial resolve rule must be present. | {{ interimage:buexport.png }} ===== TA C4.5 Classifier ===== **Author** Thales Sehn Korting, [[tkorting@dpi.inpe.br]]\\ **Description** Use C4.5 Decision Tree Algorithm to perform supervised classification into shapefiles with attributes and class description. **Type** Top-Down operator. **Applies to** Any node. **Multi-Class support** Yes. You must create the same number of classes as the training file. The classes must have also the same name of the training file. One of the nodes must have this operator, and all others should have "No Operator" for Top-Down and Bottom-Up options, and must have the option "Multi-Class" selected as well. **Input parameters** ^ Parameter Name ^ Type ^ Description ^ Valid Values ^ Note ^ | a) Training Set File | * .shp | Training shape file name. | A valid shape file name. | The shapefile must be composed by polygons, their respective attributes and particularly one attribute called "class". | | b) Input Shape File | *.shp | Shape file name of the file to be classified. | A valid shape file name. | The shapefile must be composed by polygons, and the **same set of attributes** in the training shape file. | Note: The generated decision tree will be placed in a //.txt// file, located in the **same place as your input shape file**, with the same name as your input file. One example of this operator can be found [[interimage:examples:supervised_c45|here]]. ===== TA Checkerboard Segmenter ===== **Author** Thales Sehn Korting, [[tkorting@dpi.inpe.br]] **Description** This operator creates a rectangular grid according to user defined resolution. Every rectangle will be a segment for the child nodes. **Type** Top-Down operator. **Applies to** Any node. **Multi-Class support** No **Input parameters** ^ Parameter Name ^ Type ^ Description ^ Valid Values ^ Note ^ | Number of grid lines | Integer | Number of lines to divide the image. | Greater than zero. | | | Number of grid columns | Integer | Number of columns to divide the image. | Greater than zero. | | | Amount of points in X | Integer | Number of pixels per cell in X dimension. | Greater than zero. | | | Amount of points in Y | Integer | Number of pixels per cell in Y dimension. | Greater than zero. | | | Reliability | Floating point | The reliability (higher priority will be given to nodes with higher weights in cases where there are geographic overlays). | [0.0, 1.0] | | ===== TA NDVI Segmenter ===== **Authors** Emiliano Castejon, [[castejon@dpi.inpe.br]] \\ Carolina Moutinho Duque de Pinho, [[carolina@dpi.inpe.br]] **Description** Generate hypothesis based on Normalized Difference Vegetation Index (NDVI). This index is the normalized difference of green leaf scattering in near-infrared, and chlorophyll absorption in red. It is defined by the following equation: {{:interimage:ndvi_formula.png}} \\ It ranges from -1 to 1. The common range for green vegetation is 0.2 to 0.8. **Type** Top-Down operator. **Applies to** Any node. **Multi-Class support** Yes. If you select //true// in the "Top Down Multi-Class" option, you must create another node in the same level with a corresponding opposite name, with prefix "n-". For example, if this class name is "MyClass" the opposite class name will be "n-MyClass". Hypothesis discarded by this operator will be classified as "n-MyClass". Alternatively, you can define a new node name in the input parameter named **Non Class Name**. [[interimage:example_supervised_c45|Example of using Multi-Class support.]] **References** * Rouse, J.W., R.H. Haas, J.A. Schell, and D.W. Deering, 1973. Monitoring Vegetation Systems in the Great Plains with ERTS. Third ERTS Symposium, NASA SP-351 I: 309-317. * Tucker, C.J., 1979. Red and Photographic Infrared Linear Combinations for Monitoring Vegetation. Remote Sensing of the Environment 8:127-150. * Jackson, R.D., P.N. Slater, and P.J. Pinter, 1983. Discrimination of Growth and Water Stress in Wheat by Various Vegetation Indices Through Clear and Turbid Atmospheres. Remote Sensing of the Environment 15:187-208. * Sellers, P.J., 1985. Canopy Reflectance, Photosynthesis and Transpiration. International Journal of Remote Sensing 6:1335-1372. **Input parameters** ^ Parameter Name ^ Type ^ Description ^ Valid Values ^ Note ^ | Infra-Red Image | *.tif | Infra-red image file name. | A valid image file name. | The image type must be supported by TerraLib. | | Infra-Red Image Band | Integer | Infra-red image channel/band. | From zero up to the number of channels/bands minus 1. | | | Red Image | *.tif | Red image file name. | A valid image file name. | The image type must be supported by TerraLib. | | Red Image Band | Integer | Red image channel/band. | From zero up to the number of channels/bands minus 1. | | | NDVI Treshold | Floating point | Only regions with NDVI greater than this threshold will generate hypothesis. | [-1.0, 1.0] | | | Polygons Min Area | Integer | Only polygons with area greater than this value will generate hypothesis. | Greater than 0. | | | Dummy Value (no data) | Floating point | The dummy value from input images. | | If not present, all image data will be processed. | | Morphological Filter Iterations | Integer | Number of morphological iterations applied to the result. | Greater or equal to 0. | | | Training Set File | *.shp | A file with training samples for supervised classification. | The file must be in the InterIMAGE regions format. | | | Decision Rule | Decision Rule | Decision rule applied to the generated hypothesis. | | Leave blank to accept all generated hypothesis. | | Reliability | Floating point | The reliability (higher priority will be given to nodes with higher weights in cases where there are geographic overlays). | [0.0, 1.0] | | | Non Class Name | String | If Multi-Class support is active, the discarded hypothesis will fall in the node named by this parameter. | One string with the name of some node in the tree, in the same level. | | ===== TA Region Growing Segmenter ===== **Authors** Emiliano Castejon, [[castejon@dpi.inpe.br]]\\ Thales Sehn Korting, [[tkorting@dpi.inpe.br]] **Description** This operator performs a region growing based segmentation (see the reference article for more information). Each generated segment represents an hypothesis to be analyzed by the next semantic network node. **Type** Top-Down operator. **Applies to** Any node. **Multi-Class support** No ** Reference** * [[http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.93.4555&rep=rep1&type=pdf|Bins, L.S.; Fonseca, L.M.G.; Erthal, G.J.; Ii, F.M. Satellite imagery segmentation: a region growing approach. VIII Simpósio Brasileiro de Sensoriamento Remoto, Salvador, BA. p. 677-680. 1996.]] **Processing sequence** -Read input image -Segmentation -Apply the user decision rule using the supplied training set. -Generate the output hypothesis **Input parameters** ^ Parameter Name ^ Type ^ Description ^ Valid Values ^ Note ^ | Input Image | * .tif | Input image file name. | A valid image file name. | The image type must be supported by TerraLib. | | Euclidean Distance Threshold | Floating point | The minimum Euclidean Distance between each segment feature. | Greater than 0. | | | Polygons Min Area | Integer | The generated polygons minimum area. | Greater than 0. | | | Use Optimization | Boolean | Divides, or not, the image into pieces and segment each piece individually. | yes/no | | | Training Set File | *.shp | A file with training samples for supervised classification. | The file must be in the InterIMAGE regions format. | | | Decision Rule | Decision Rule | Decision rule applied to the generated hypothesis. | | Leave blank to accept all generated hypothesis. | | Reliability | Floating point | The reliability (higher priority will be given to nodes with higher weights in cases where there are geographic overlays). | [0.0, 1.0] | | ** Segmentation Example** {{ :interimage:region_growing_segmentation_example.png }} ===== TA ShapeFile Import ===== **Authors** Emiliano Castejon, [[castejon@dpi.inpe.br]]\\ Thales Sehn Korting, [[tkorting@dpi.inpe.br]] **Description** Import shape file data into the analysis process. **Type** Top-Down operator. **Applies to** Any node. **Multi-Class support** No **Notes** Shape file attributes with the the following names will not be imported: REGION, CLASS, ID, GEOWEST, GEONORTH, GEOEAST, GEOSOUTH, FILE_GEOWEST, FILE_GEONORTH, FILE_GEOEAST, FILE_GEOSOUTH, P, FILE, LLX, LLY, URX, URY. **Processing sequence** -Read user input shape file. -Generates the intersection between the loaded shape file polygons and the operator execution area. -Apply the user decision rule (using the supplied training set) over the intersection polygons. -Generate the output hypothesis. **Input parameters** ^ Parameter Name ^ Type ^ Description ^ Valid Values ^ Note ^ | Shape File Name | * .shp | Shape file name. | A valid shape file name. | The shapefile must be composed only by polygons, neither lines nor polylines. | | Shape File Attributes | String | A comma-separated list of shape file attributes names to be imported. | A valid attribute ID or empty field. | Leave blank to use all shape file attributes. | | Label Image Resolution | Floating point | The output label image resolution. | Positive real numbers or zero for automatic. | Choose a value good enough matching the resolution of the best used image. Leave blank and the system will automatically choose the resolution. The automatic method can be used only if the operator is not in the semantic network node right above the "scene" node. | | Training Set File | *.shp | A file with training samples for supervised classification. | The file must be in the InterIMAGE region format. | | | Decision Rule | Decision rule | Decision rule applied to the generated hypothesis. | | Leave blank to accept all generated hypothesis. | | Reliability | Floating point | The reliability (higher priority will be given to nodes with higher weights in cases where there are geographic overlays). | [0.0, 1.0] | | {{ :interimage:shape_file_import_example.png }} ===== TA ShapeFile Intersection ===== **Authors** Emiliano Castejon, [[castejon@dpi.inpe.br]]\\ Carolina Moutinho Duque de Pinho, [[carolina@dpi.inpe.br]] **Description** Makes the intersection between regions from above nodes and some shapefile provided by the user. The resultant regions will generate hypothesis. **Type** Top-Down operator. **Applies to** Any node. **Multi-Class support** Yes. If you select //true// in the "Top Down Multi-Class" option, you must create another node in the same level with a corresponding opposite name, with prefix "n-". For example, if this class name is "MyClass" the opposite class name will be "n-MyClass". Hypothesis discarded by this operator will be classified as "n-MyClass". Alternatively, you can define a new node name in the input parameter named **Non Class Name**. [[interimage:example_supervised_c45|Example of using Multi-Class support.]] **Processing sequence** -Read user input shape file. -Generates the intersection between the loaded shape file polygons and the operator execution area. -Using the intersection result generates a set of intermediate hypothesis of "MyClass" and the opposite class "n-MyClass", as describe above. -Apply the user decision rule (using the supplied training set) over the intermediate hypothesis set. -Generate the output hypothesis from the decision rule result. **Input parameters** ^ Parameter Name ^ Type ^ Description ^ Valid Values ^ Note ^ | Shape File Name | * .shp | Shape file name. | A valid shape file name. | The shapefile must be composed only by polygons, neither lines nor polylines. | | Shape Target Attribute ID | String | The name of the shape file attribute column used to filter what shape files polygons will be used. | A valid attribute ID. | Leave blank to use all shape file polygons. | | Shape Target Attribute Value | String | The value, from the shape target attribute ID, which will define what polygons will be selected. | | Leave blank to use all shape file polygons. | | Label Image Resolution | Floating point | The output label image resolution. | Positive real numbers or zero for automatic. | Choose a value good enough matching the the resolution of the best used image. Leave blank and the system will automatically choose the resolution. The automatic method can be used only if the operator is not in the semantic network node right above the "scene" node. | | Training Set File | *.shp | A file with training samples for supervised classification. | The file must be in the InterIMAGE regions format. | | | Decision Rule | Decision Rule | Decision rule applied to the generated hypothesis. | | Leave blank to accept all generated hypothesis. | | Reliability | Floating point | The reliability (higher priority will be given to nodes with higher weights in cases where there are geographic overlays). | [0.0, 1.0] | | | Non Class Name | String | If Multi-Class support is active, the discarded hypothesis will fall in the node named by this parameter. | One string with the name of some node in the tree, in the same level. | | {{ :interimage:shape_file_intersection_example.png }}