TerraLib and TerraView Wiki Page

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
wiki:tclt [2025/01/31 16:09]
castejon
wiki:tclt [2025/03/14 08:04] (current)
castejon
Line 1: Line 1:
 ====== TCLT (TerraLib Command Line Tools) ====== ====== TCLT (TerraLib Command Line Tools) ======
  
 +{{ :​wiki:​tclt_graph.jpg?​600 |}}
  
 ===== About ===== ===== About =====
Line 57: Line 58:
 |WATERDETECT|A vertice capable of detecting water on raster data.|Reference:​ WATER BODY EXTRACTION FROM RAPIDEYE IMAGES: AN AUTOMATED METHODOLOGY BASED ON HUE COMPONENT OF COLOR TRANSFORMATION FROM RGB TO HSV MODEL, Laercio Massaru Namikawa, Thales Sehn Körting, Emiliano Ferreira Castejon. Full Text - Click [[http://​www.lsie.unb.br/​rbc/​index.php/​rbc/​article/​view/​1662|here]]| |WATERDETECT|A vertice capable of detecting water on raster data.|Reference:​ WATER BODY EXTRACTION FROM RAPIDEYE IMAGES: AN AUTOMATED METHODOLOGY BASED ON HUE COMPONENT OF COLOR TRANSFORMATION FROM RGB TO HSV MODEL, Laercio Massaru Namikawa, Thales Sehn Körting, Emiliano Ferreira Castejon. Full Text - Click [[http://​www.lsie.unb.br/​rbc/​index.php/​rbc/​article/​view/​1662|here]]|
  
 +===== News =====
 +
 +  * 12/20/2024 - Fixing and updating vertices: vectorizer, fusion, mosaic, register.
 +  * 04/25/2024 - New contrast modes. New GRDB database tie-points locationg support. Now using a new Terralib version (5.7.1).
 +  * 12/11/2023 - New command line options to automatically delete a project output. New Arithmetic vertice parameters to control the output raster data type. New raster mosaic parameters to control input bands. Output log improvements. Minor stability fixes.
 +  * 01/11/2022 - Improvements on recursive processing time filter. Optimizations:​ raster transform, tie-points locator. New vertices: VEC_TIEPOINTSLOCATOR,​ VEC_REGISTER. ​
 +  * 07/06/2022 - RECOMPOSE and RASTER_SPLIT vertices now can create virtual rasters. URI_EDIT updated. New Fusion histogram fitting method. SCRIPT vertice updated. New recursive filter by file modification time.
 +  * 01/14/2022 - New RASTER_SPLIT and CONDITIONAL vertices, some minor fixes, new logging scheme.
 +  * 09/01/2021 - New COMPOSITION and URI_EDIT vertices, new option of filter recursive execution files.
 +  * 03/11/2021 - New GEODMA vertice.
 +  * 02/26/2021 - New STRIPING vertice.
 +  * 01/07/2021 - New RASTER TRANSFORM vertice.
 +  * 08/07/2020 - New virtual mosaic option added to the mosaic vertice. All raster classifiers merged into one vertice. New DataSet classifier vertice. New LINK vertice.
 +  * 06/14/2019 - New execution vertices added: MSC. HAND algorithm added to the TERRAHIDRO vertice.
 +  * 02/7/2019 - New execution vertices added: FUSION, TERRAHIDRO
 +  * 01/17/2019 - New execution vertices added: COLOR_TRANSF,​ CONTRAST, OUT_DEMUX, RECOMPOSE
 +  * 12/05/2018 - Project files syntax updated.
 +  * 12/05/2018 - New execution vertice added: SELECT.
 +  * 7/31/2018 - New execution mode added: Directory recursive processing.
 +  * 7/31/2018 - New execution vertices added: Register and TPLocator (Tie-Points locator).
 +  * 5/30/2018 - New execution vertice added: WaterDetect.
 +  * 5/25/2018 - New execution vertice added: Mosaic.
 +  * 4/04/2018 - New execution vertices added: Arithmetic, Filter, MAP.
 +  * 3/07/2018 - New execution vertices added: Mixture Model, Raster Clipping, External Script.
 +  * 1/24/2018 - Added a IsoSeg Classifier.
 +  * 1/24/2018 - Added Region Growing image segmenters (Mean, Baatz).
 +  * 1/24/2018 - Added a raster data vectorizer.
 +
 +===== Help =====
 +
 +==== How to list all options ====
 +
 +For a list of all available options run the executable file with the option “–help”. The executable must be called from a terminal window (Windows command prompt - CMD).
 +
 +Example:
 +
 +<​code>​
 +tclt_exe.exe --help
 +</​code>​
 +
 +==== Single operation execution - This mode allows the execution of one operation (vertice) on each call. ====
 +
 +Example: Apply a Mean segmentation (simple region growing) operation over an input image file named “image.tif” (located inside directory “c:​\images”) and write the output inside the same directory.
 +
 +<​code>​
 +tclt_exe.exe --processing_type="​SEGMENTER"​ --input_uri="​INPUT_RASTER;​file://​c:​\image.tif"​ --processing_parameter="​STRATEGY;​MEAN"​ --output_directory="​c:​\images"​
 +</​code>​
 +
 +==== Project execution - This mode allows the execution multiple chained operations using a project. ====
 +
 +Important concepts for this execution mode:
 +  * Project - A container for all analysis, graphs and contexts. Multiple analysis, graphs and contexts can be declared.
 +  * Context - A set of data sets related to the same geographic area.
 +  * Graph - A set of vertices (processing nodes) organized in a graph form and executed in a pre-determined way.
 +
 +Notes:
 +The same graph can be used with multiple distinct analysis. This is possible because all graph input data are references to URIs aliases provided by contexts. In this case, all used contexts must provide the same URI aliases.
 +
 +This execution mode requires the creation of 3 files:
 +
 +A project file (project_example.txt):​
 +<​code>​
 +# Add one or more context files to this project
 +# Paths are relative to the project file location
 +INCLUDE_FILE "​context_example.txt"​
 +# Add one or more graph files to this project
 +# Paths are relative to the project file location
 +INCLUDE_FILE "​graph_example.txt"​
 +PROJECT_START
 +  # The global project name
 +  # Allowed characters: _ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
 +  PROJECT_NAME "​Sample_Project_Name_1"​
 +  # Add one or more analysis to be executed
 +  # FORMAT: ANALYSIS "​Analysys_Name"​ "​Context_Name"​ "​Graph_Name"​
 +  ANALYSIS "​Analysys_Name_1"​ "​Context_Name_1"​ "​Graph_Name_1"​
 +PROJECT_END
 +</​code>​
 +
 +A context file (graph_example.txt):​
 +<​code>​
 +CONTEXT_START
 +  # This context name
 +  # Allowed characters: _ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
 +  CONTEXT_NAME "​Context_Name_1"​
 +  # Add one or more resouces to this context
 +  # General Format: RESOURCE_URI "​URI_alias"​ "URI string"​
 +  #
 +  # Files Format: File paths are relative to the context file location.
 +  # Example: RESOURCE_URI "​URI_alias"​ "​file://​../​file_name.tif"​
 +  RESOURCE_URI "​Raster1ContextAlias"​ "​file://​../​rasters/​cbers_rgb342_crop1.tif"​
 +CONTEXT_END
 +</​code>​
 +
 +A graph file (graph_example.txt):​
 +<​code>​
 +GRAPH_START
 +  # This graph name
 +  # Allowed characters: _ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
 +  GRAPH_NAME "​Graph_Name_1"​
 +  # General vertice syntax:
 +  #
 +  #    VERTICE_START
 +  #
 +  #      # This vertice related class name
 +  #      # Allowed characters: _ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
 +  #      VERTICE_NAME "​Vertice_name"​
 +  #
 +  #      # Vertice type
 +  #      VERTICE_TYPE "​VERTICETYPE"​
 +  #
 +  #      # Vertice output cache enabled (YES/NO)
 +  #      VERTICE_OUT_CACHE "​NO"​
 +  #      # Declares connections to other vertices outputs and gives them name aliases.
 +  #      # General format: VERTICE_CONNECTION "​other_vertice_name"​ "​connection alias"
 +  #      VERTICE_CONNECTION "​other_vertice_name_1"​ "​connection alias 1"
 +  #      VERTICE_CONNECTION "​other_vertice_name_2"​ "​connection alias 2"
 +  #
 +  #      # Declares a input URI resouce used by this vertice.
 +  #      # General format: VERTICE_RESOURCE "​context resource URI alias" "​vertice URI alias"
 +  #      VERTICE_RESOURCE "​raster resource 1" "​image"​
 +  #
 +  #      # One or more specific vertice parameters
 +  #      # General format: VERTICE_PARAM "​parameter name" "​parameter value"
 +  #      VERTICE_PARAM "​parameter name 1" "​parameter value 1"
 +  #      VERTICE_PARAM "​parameter name 2" "​parameter value 2"
 +  #
 +  #    VERTICE_END
 +  VERTICE_START
 +    VERTICE_NAME "​Original_image_vertice"​
 +    VERTICE_TYPE "​URI"​
 +    VERTICE_OUT_CACHE "​NO"​
 +    VERTICE_RESOURCE "​Raster1ContextAlias"​ "​URI_ALIAS"​
 +  VERTICE_END
 +  VERTICE_START
 +    VERTICE_NAME "​Segmented_image"​
 +    VERTICE_TYPE "​SEGMENTER"​
 +    VERTICE_OUT_CACHE "​NO"​
 +    VERTICE_CONNECTION "​Original_image_vertice"​ "​INPUT_RASTER"​
 +    VERTICE_PARAM "​STRATEGY"​ "​MEAN"​
 +    VERTICE_PARAM "​MIN_SEGMENT_SIZE"​ "​100"​
 +    VERTICE_PARAM "​SEGMENTS_SIMILARITY_THRESHOLD"​ "​0.03"​
 +  VERTICE_END
 +GRAPH_END
 +</​code>​
 +
 +The following command must be executed in order to run the entire project and write the result to a directory “c:​\images”:​
 +<​code>​
 +tclt_exe.exe --project_file_name="​project_example.txt"​ --output_directory="​c:​\images"​
 +</​code>​
 +
 +==== Directory Recursive Execution - This execution mode allows to process all data within a given directory. ====
 +
 +The same project will be executed for each input data and the result will be written on distinct output directories.
 +
 +On each execution a specific context/​resource is replaced by a file URI from the given directory.
 +
 +Example - To execute image segmentation on all files within a given directory, called “c:​\my_input_images”,​ using the same project/​context/​graph files described above:
 +<​code>​
 +tclt_exe --project_file_name="​project_example.txt"​ --output_directory="​c:​\images"​ --recursive_exec_dir="​c:​\my_input_images"​ --recursive_exec_context="​Context_Name_1;​Raster1ContextAlias"​ --recursive_exec_file_filters="​+.tif;​-.xml"​
 +</​code>​
 +
 +===== Disclaimer of warranty =====
 +
 +//**You can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or(at your option) any later version. The authors reassure the license terms regarding the warranties. They specifically disclaim any warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The software provided hereunder is on an “as is” basis, and the authors have no obligation to provide maintenance,​ support, updates, enhancements,​ or modifications.**//​
 +
 +===== Download =====
 +
 +^ Platform ^ Version ^ Date ^ Download Link ^ Notes ^
 +|Windows (64 bits)|0.3.6 alpha develop|12/​20/​2024|[[@../​download/​download.php?​FileName=tclt_0_3_6-alpha-develop.exe|Click here to download]]|Dependency:​ Visual Studio 2017 Runtime. This is a self-extracting executable. It must be uncompressed it into a directory. From that directory run “tclt_exe.exe” using the Windows Command Prompt (CMD). [[@../​download/​download.php?​FileName=visual_studio_2017_14_14_26405_vcredist_x64.exe|Click here to download]]|
 +
 +
 +===== Author =====
 +
 +Emiliano F. Castejon
 +[[mailto:​emiliano.castejon@inpe.br|E-mail]]