From 8a3af7c0a14fbf09b04e7979d9be1935e16d48a6 Mon Sep 17 00:00:00 2001 From: dmci <daniel.o.mcinerney@gmail.com> Date: Tue, 30 Oct 2018 21:16:09 +0000 Subject: [PATCH] DOC: suggested edits to the documentation --- Documentation/Cookbook/README.md | 8 +- Documentation/Cookbook/rst/AdvancedUse.rst | 83 +++++++++---------- Documentation/Cookbook/rst/FAQ.rst | 4 +- .../Cookbook/rst/OTB-Applications.rst | 40 ++++----- .../Cookbook/rst/recipes/bandmathx.rst | 30 ++++--- Documentation/Cookbook/rst/recipes/improc.rst | 16 ++-- .../Cookbook/rst/recipes/optpreproc.rst | 67 +++++++-------- .../rst/recipes/residual_registration.rst | 14 ++-- .../ChangeDetectionFrameworkExample.cxx | 18 ++-- Examples/ChangeDetection/DiffChDet.cxx | 6 +- .../BayesianPluginClassifier.cxx | 10 +-- .../BoostAdapters/include/otbBoostDox.h | 2 +- .../BoostAdapters/include/otbStringUtils.h | 10 +-- .../include/otbGdalDataTypeBridge.h | 4 +- .../include/otbGeometriesToGeometriesFilter.h | 10 +-- .../Adapters/GdalAdapters/otb-module.cmake | 2 +- .../app/otbMultivariateAlterationDetector.cxx | 2 +- .../app/otbComputeConfusionMatrix.cxx | 2 +- .../app/otbComputeImagesStatistics.cxx | 6 +- .../otbComputePolylineFeatureFromImage.cxx | 4 +- .../include/otbWrapperApplication.h | 20 ++--- Modules/Wrappers/QGIS/otb-module.cmake | 2 +- 22 files changed, 181 insertions(+), 179 deletions(-) diff --git a/Documentation/Cookbook/README.md b/Documentation/Cookbook/README.md index 4d83f1c69a..f51ff765c3 100644 --- a/Documentation/Cookbook/README.md +++ b/Documentation/Cookbook/README.md @@ -3,11 +3,11 @@ RST docs for Orfeo Toolbox CookBook Introduction ============ -This is a replacement of old OTB Cookbook which was written in Latex. This version is completely deviate from existing Latex format to reStructured format (rst). +This is a replacement of the old OTB Cookbook which was written in LaTeX. This version has deviated completely from the existing LaTeX format to reStructured format (rst). -Converting existing latex to rst is not that straightforward. All rst files for OTB applications are generated using python script otbGenerateWrappersRstDoc.py. -For others in recipes, we used a tool called pandoc to get an initial rst and then edited out errors manually. You do not have to generate them again. -The old Cookbook in otb-documents is deprecated. +Converting existing LaTeX to rst is not that straightforward. All rst files for OTB applications are generated using the Python script otbGenerateWrappersRstDoc.py. +For others files in the Recipes, we used a tool called pandoc to get an initial rst and then manually edit and remove the errors. You do not have to generate them again. +The old Cookbook in otb-documents is now deprecated. Requirements ============ diff --git a/Documentation/Cookbook/rst/AdvancedUse.rst b/Documentation/Cookbook/rst/AdvancedUse.rst index b0d444cbc2..740f22b7ba 100644 --- a/Documentation/Cookbook/rst/AdvancedUse.rst +++ b/Documentation/Cookbook/rst/AdvancedUse.rst @@ -8,7 +8,7 @@ Environment variables that affect Orfeo ToolBox The following environment variables are parsed by Orfeo ToolBox. Note that they only affect default values, and that settings in extended -filenames, applications, monteverdi or custom C++ code might override +filenames, applications, Monteverdi or custom C++ code might override those values. * ``OTB_DEM_DIRECTORY``: Default directory were DEM tiles are @@ -26,29 +26,29 @@ those values. default level is ``INFO``. In addition to OTB specific environment variables, the following -environment variable are parsed by third party libraries and also +environment variables are parsed by third party libraries and also affect how OTB works: -* ``GDAL_CACHEMAX``: Gdal has an internal cache mechanism to avoid reading or decoding again image chunks. This environnement variable controls how much memory Gdal can use for caching. By default, Gdal can use up to 5 percents of available RAM on system, which may be a lot. Moreover, caching is only needed if the processing chain is likely to request the same chunk several times, which is not likely to happen for a standard pixel based OTB pipeline. Setting a lower value allows to allocate more memory to OTB itself (using applications ``-ram`` parameter or ``OTB_MAX_RAM_HINT`` environment variable). If value is small (less than 100 000, it is assumed to be in megabytes, otherwise, it is assumed to be in bytes. -* ``GDAL_NUM_THREADS``: Gdal can take advantage of multi-threading to decode some formats. This variable controls the number of threads Gdal is allowed to use. -* ``OPJ_NUM_THREADS``: OpenJpeg can take advantage of mutli-threading when decoding images. This variable controls the number of threads OpenJpeg is allowed to use. -* ``ITK_GLOBAL_DEFAULT_NUMBER_OF_THREADS``: This variable allows to control the number of threads used by ITK for processing. +* ``GDAL_CACHEMAX``: GDAL has an internal cache mechanism to avoid reading or decoding again image chunks. This environment variable controls the amount of memory that GDAL can use for caching. By default, GDAL can use up to 5 percent of the system's available RAM, which may be a lot. In addition, caching is only needed if the processing chain is likely to request the same chunk several times, which is unlikely to happen for a standard pixel based OTB pipeline. Setting a lower value facilitates the allocation of more memory to OTB itself (using applications ``-ram`` parameter or ``OTB_MAX_RAM_HINT`` environment variable). If the value is small, i.e. less than 100 000, it is assumed to be in megabytes, otherwise, it is assumed to be in bytes. +* ``GDAL_NUM_THREADS``: GDAL can take advantage of multi-threading to decode some formats. This variable controls the number of threads GDAL is allowed to use. +* ``OPJ_NUM_THREADS``: OpenJpeg can take advantage of multi-threading when decoding images. This variable controls the number of threads OpenJpeg is allowed to use. +* ``ITK_GLOBAL_DEFAULT_NUMBER_OF_THREADS``: This variable controls the number of threads used by ITK for processing. .. _extended-filenames: Extended filenames ------------------ -Extended filenames is an interesting feature of OTB. With it, you can control -several aspects of the beahvior of the OTB in the OTB-Applications or in our -own C++ applications. Historically this feature has been desingn to solve -an issue with how to handle geo-referencing information. +Extended filenames are an interesting feature of OTB. With them, it is possible to control +several aspects of the behavior of OTB in the OTB-Applications or in our +own C++ applications. Historically this feature was designed to facilitate +how geo-referencing information was handled. Indeed, there are multiple ways to define geo-referencing information. For instance, one can use a geographic transform, a cartographic projection, or a sensor model with RPC coefficients. A single image may contain several of these elements, such as in the “ortho-ready†products: this -is a type of product still in sensor geometry (the sensor model is +is a type of product that is still in sensor geometry (the sensor model is supplied with the image) but it also contains an approximative geographic transform that can be used to have a quick estimate of the image localisation. For instance, your product may contain a “.TIF†file @@ -56,18 +56,18 @@ for the image, along with a “.RPB†file that contains the sensor model coefficients and an “.IMD†file that contains a cartographic projection. This case leads to the following question: which geo-referencing -element should be used when opening this image in OTB. In -fact, it depends on the users need. For an orthorectification +element should be used when the image is opened in OTB. In +fact, it depends on the user's requirements. For an orthorectification application, the sensor model must be used. In order to specify which information should be skipped, a syntax of extended filenames has been developed for both reading and writing. -Since the development of this feature we have extend this mechanism for -other aspaects: like band or overview selection in reader part or support -create option of gdal in writer part.The reader and writer extended filename +Since the development of this feature, we have extended this mechanism for +other aspects. This includes band or overview selection in reader part or support +create option of GDAL in writer part. The reader and writer extended filename support is based on the same syntax, only the options are different. -To benefit from the extended file name mechanism, the following syntax -is to be used: +To benefit from the extended filename mechanism, the following syntax +should be used: :: @@ -82,7 +82,7 @@ Reader options &geom=<path/filename.geom> -- Contains the file name of a valid geom file +- Contains the filename of a valid geom file - Use the content of the specified geom file instead of image-embedded geometric information @@ -117,20 +117,20 @@ Reader options - Select a subset of bands from the input image -- The syntax is inspired by Python indexing syntax with - bands=r1,r2,r3,...,rn where each ri is a band range that can be : +- The syntax is inspired by the Python indexing syntax with + bands=r1,r2,r3,...,rn where each ri is a band range that can be: - a single index (1-based) : - - :code:`2` means 2nd band + - :code:`2` means the second band - :code:`-1` means last band - or a range of bands : - - :code:`3:` means 3rd band until the last one + - :code:`3:` means from the third band until the last band - - :code:`:-2` means the first bands until the second to last + - :code:`:-2` means the first band up until the penultimate band - :code:`2:4` means bands 2,3 and 4 @@ -158,7 +158,7 @@ Reader options &skipgeom=<(bool)true> -- Skip geometric information +- Skip the geometric information - Clears the keyword list @@ -204,9 +204,9 @@ Writer options &gdal:co:<GDALKEY>=<VALUE> -- To specify a gdal creation option +- To specify a GDAL creation option -- For gdal creation option information, see dedicated gdal documentation for each driver. For example, you can find `here <http://www.gdal.org/frmt_gtiff.html>`_ the information about the GeoTiff create options +- For GDAL creation option information, see the dedicated GDAL documentation for each driver. For example, you can find `here <http://www.gdal.org/frmt_gtiff.html>`_ the information about the GeoTiff create options - None by default @@ -241,7 +241,7 @@ Writer options &streaming:sizemode=<VALUE> -- Allows to choose how the size of the streaming pieces is computed +- Provides the option to choose how the size of the streaming pieces is computed - Available values are: @@ -270,8 +270,8 @@ Writer options - if sizemode=nbsplits: number of requested splits for streaming -- If not provided, the default value is set to 0 and result in - different behaviour depending on sizemode (if set to height or +- If not provided, the default value is set to 0 and results in + different behaviours depending on sizemode (if set to height or nbsplits, streaming is deactivated, if set to auto, value is fetched from configuration or cmake configuration file) @@ -338,25 +338,22 @@ The available syntax for boolean options are: &nodata=(double) value / [int:double, int:double ...] -- This options allows one to set specific nodata values for all or selected bands. +- This options allows one to set specific nodata values for all or selected bands. The nodata values can be set in two ways: either using a simple scalar value or band,value pairs. OTB will select either one of them depending on the type of nodata value string specified. - There are two ways of setting nodata values. simple scalar values of band,value pair. - OTB will select either one of them depending on type of nodata value string - -- If value is scalar (without bandindex), it will be applied only to first band of image. +- If the value is scalar (without bandindex), it will be applied only to the first band of the image. -- If value is given as "bandindex:value" pair separated by a ":" then - nodata value is applied to only those selected band. +- If the value is given as "bandindex:value" pair separated by a ":" then + the nodata value is applied to only those selected band. -- By default OTB will not alter any existing nodata value. +- By default OTB will not alter any existing nodata value. OGR DataSource options ^^^^^^^^^^^^^^^^^^^^^^^ -We extended this process to OGR DataSource. There are three different type of -option : open, creation and layer creation. Those options come from the GDAL -API. In order to use them one just need to specify to which of this family -the option one want to use is from. +We extended this process to OGR DataSource. There are three different types of +options: open, creation and layer creation, which come directly from the GDAL +API. In order to use them, one just needs to specify the family that the option is +from. For open option : @@ -383,7 +380,7 @@ For layer creation option : Examples ^^^^^^^^^^^^^^ -You can find below some examples: +Some examples are provided below: - Write a file with blockSize equal to 256 and with DEFLATE compression diff --git a/Documentation/Cookbook/rst/FAQ.rst b/Documentation/Cookbook/rst/FAQ.rst index 83faac13ab..09329e8311 100644 --- a/Documentation/Cookbook/rst/FAQ.rst +++ b/Documentation/Cookbook/rst/FAQ.rst @@ -30,10 +30,10 @@ What's in OTB? - Geospatial analysis. -For a full list of applications see the :ref:`apprefdoc`. +For a full list of applications see the chapter :ref:`apprefdoc`. For an introduction to the C++ API see the `Software Guide <https://www.orfeo-toolbox.org/SoftwareGuide/>`_. -And for exhaustive descrpition of the C++ API see the +And for an exhaustive description of the C++ API see the `Doxygen <https://www.orfeo-toolbox.org/doxygen/>`_. What is ORFEO? diff --git a/Documentation/Cookbook/rst/OTB-Applications.rst b/Documentation/Cookbook/rst/OTB-Applications.rst index 6b33e545d3..37182505fe 100644 --- a/Documentation/Cookbook/rst/OTB-Applications.rst +++ b/Documentation/Cookbook/rst/OTB-Applications.rst @@ -20,7 +20,7 @@ entry points. While the framework can be extended, the Orfeo ToolBox ships with ergonomic parameters setting, display of documentation, and progress reporting, -- A SWIG interface, which means that any application can be loaded +- A SWIG interface, which means that any application can be loaded, set-up and executed into a high-level language such as Python or Java for instance. @@ -28,20 +28,20 @@ entry points. While the framework can be extended, the Orfeo ToolBox ships with the SWIG/Python interface is available with seamless integration within QGIS. -The complete list of applications is described in the :ref:`apprefdoc`. +The complete list of applications is described in the Chapter :ref:`apprefdoc`. -All standard applications share the same implementation and expose -automatically generated interfaces. -Thus, the command-line interface is prefixed by ``otbcli_``, while the Qt interface is prefixed by -``otbgui_``. For instance, calling ``otbcli_Convert`` will launch the +All standard applications share the same implementation and automatically expose +generated interfaces. +However they are accessed in a slightly different way: the command-line interface is prefixed by ``otbcli_``, while the Qt interface is prefixed by +``otbgui_``. For cwinstance, calling ``otbcli_Convert`` will launch the command-line interface of the Convert application, while -``otbgui_Convert`` will launch its GUI. +``otbgui_Convert`` will launch the GUI. Command-line launcher --------------------- The command-line application launcher loads an application -plugin, to set its parameters, and execute it using the command line. +plugin, allows for its parameters to be set, and can then be executed from the command line. Launching the ``otbApplicationLauncherCommandLine`` without any arguments provided, results in the following help to be displayed: @@ -52,23 +52,23 @@ results in the following help to be displayed: The ``module_name`` parameter corresponds to the application name. The ``[MODULEPATH]`` argument is optional and allows the path to the shared library -(or plugin) correpsonding to the ``module_name`` to be passed to the launcher. +(or plugin) corresponding to the ``module_name`` to be passed to the launcher. It is also possible to set this path with the environment variable ``OTB_APPLICATION_PATH``, making the ``[MODULEPATH]`` optional. This variable is checked by default when no ``[MODULEPATH]`` argument is given. When using multiple paths in ``OTB_APPLICATION_PATH``, one must -make sure to use the standard path separator of the target system, which +ensure that the standard path separator of the target system is used, which is ``:`` on Unix and ``;`` on Windows. An error in the application name (i.e. in parameter ``module_name``) -will make the ``otbApplicationLauncherCommandLine`` lists the name of +will make the ``otbApplicationLauncherCommandLine`` list the name of all applications found in the available path (either ``[MODULEPATH]`` and/or ``OTB_APPLICATION_PATH``). -To ease the use of the applications, and try avoiding extensive -environment customization, ready-to-use scripts are provided by the OTB -installation to launch each application, and takes care of adding the +To ease the use of the applications, and to avoid extensive +environment customizations; ready-to-use scripts are provided by the OTB +installation to launch each application. They take care of adding the standard application installation path to the ``OTB_APPLICATION_PATH`` environment variable. @@ -79,7 +79,7 @@ application with the script called ``otbcli_Orthorectification``. Launching an application without parameters, or with incomplete parameters, will cause the launcher to display a summary of the parameters. This summary will display the minimum set of parameters that are required to execute the application. Here is an -example with the OrthoRectification application: +example based on the OrthoRectification application: :: @@ -125,11 +125,11 @@ example with the OrthoRectification application: For a detailed description of the application behaviour and parameters, please check the application reference documentation presented -chapter [chap:apprefdoc], page or follow the ``DOCUMENTATION`` -hyperlink provided in ``otbApplicationLauncherCommandLine`` output. +in chapter :ref:`apprefdoc` or follow the ``DOCUMENTATION`` +hyperlink provided in the output of ``otbApplicationLauncherCommandLine``. Parameters are passed to the application using the parameter key (which might include one or several ``.`` character), prefixed by a ``-``. -Command-line examples are provided in chapter [chap:apprefdoc], page. +Command-line examples are provided in the chapter :ref:`apprefdoc`. Graphical launcher ------------------ @@ -193,7 +193,7 @@ environment variable ``PYTHONPATH`` to include this directory so that the module becomes available from Python. On Windows, you can install the ``otb-python`` package, and the module -will be available from an OSGeo4W shell automatically. +will be automatically available from an OSGeo4W shell. As for the command line and GUI launchers, the path to the application modules needs to be properly set with the ``OTB_APPLICATION_PATH`` @@ -355,7 +355,7 @@ Here is an example of MPI call on a cluster:: One can see that the registration and pan-sharpening of the panchromatic and multi-spectral bands of a Pleiades image has been split -among 560 cpus and only took 56 seconds. +between 560 CPUs and only took 56 seconds to complete. Note that this MPI parallel invocation of applications is only available for command-line calls to OTB applications, and only for diff --git a/Documentation/Cookbook/rst/recipes/bandmathx.rst b/Documentation/Cookbook/rst/recipes/bandmathx.rst index 54c0d9eb4e..7902bd987d 100644 --- a/Documentation/Cookbook/rst/recipes/bandmathx.rst +++ b/Documentation/Cookbook/rst/recipes/bandmathx.rst @@ -20,6 +20,8 @@ A simple example is given below: As we can see, the new band math filter works with the class otb::VectorImage. +.. _syntax: + Syntax: first elements ---------------------- @@ -134,8 +136,7 @@ or in more simple terms (and only if im2 contains two components): .. math:: im2* \{1,2\}' Concerning division, this operation is not originally defined between -two vectors (see next section “New operators and functions†--[ssec:operators]-). +two vectors (see next section :ref:`operators`). Now, let’s go back to the first formula: this one specifies the addition of two images band to band. With muParserX lib, we can now define such @@ -170,6 +171,8 @@ Fundamentally, a neighbourhood is represented as a matrix inside the muParserX framework; so the remark about mathematically well-defined formulas still stands. +.. _operators: + New operators and functions --------------------------- @@ -205,7 +208,7 @@ ones. For instance: .. math:: im1 ~ mlt ~ 2.0 Note that the operator ’\*’ could have been used instead of ’pw’ one. -But ’pw’ is a little bit more permisive, and can tolerate a +But ’pw’ is a little bit more permissive, and can tolerate a one-dimensional vector as the right operand. **Operators pow and pw** The first operator allows the definition of an @@ -267,20 +270,20 @@ takes two inputs). For instance: .. math:: corr(im1b1N3x3,im1b2N3x3) -**Function maj** This function allows to compute the most represented +**Function maj** This function computes the most represented element within a vector or a matrix (the function can take as many inputs as needed; one maj element value is computed per input). For instance: .. math:: maj(im1b1N3x3,im1b2N3x3) -**Function vmin and vmax** These functions allow to compute the min or +**Function vmin and vmax** These functions calculate the min or max value of a given vector or neighborhood (only one input). For instance: .. math:: (vmax(im3b1N3x5)+vmin(im3b1N3x5)) ~ div ~ \{2.0\} -**Function cat** This function allows to concatenate the results of +**Function cat** This function concatenates the results of several expressions into a multidimensional vector, whatever their respective dimensions (the function can take as many inputs as needed). For instance: @@ -293,8 +296,7 @@ application will call the function ’cat’ automatically. For instance: .. math:: filter->SetExpression("im3b1 ; vmin(im3b1N3x5) ; median(im3b1N3x5) ; vmax(im3b1N3x5)"); -Please, also refer to the next section “Application Programming -Interface†([ssec:API]). +Please, also refer to the next section :ref:`API`. **Function ndvi** This function implements the classical normalized difference vegetation index; it takes two inputs. For instance: @@ -302,7 +304,7 @@ difference vegetation index; it takes two inputs. For instance: .. math:: ndvi(im1b1,im1b4) First argument is related to the visible red band, and the second one to -the near-infrareds band. +the near-infrared band. The table below summarises the different functions and operators. @@ -366,6 +368,8 @@ Functions and operators summary: [variables] +.. _API: + Application Programming Interface (API) --------------------------------------- @@ -381,7 +385,7 @@ of the new band math filter. /** Return a pointer on the nth filter input */ ImageType * GetNthInput(unsigned int idx); -Refer to the section “Syntax: first elements†([ssec:syntax]) where the +Refer to the section :ref:`syntax`, where the two first functions have already been commented. The function GetNthInput is quite clear to understand. @@ -394,13 +398,13 @@ Each time the function SetExpression is called, a new expression is pushed inside the filter. **There are as many outputs as there are expressions. The dimensions of the outputs (number of bands) are totally dependent on the dimensions of the related expressions (see also last -remark of the section “Syntax: first element†-[ssec:syntax]-).** Thus, +remark of the section :ref:`syntax`).** Thus, the filter always performs a pre-evaluation of each expression, in order to guess how to allocate the outputs. The concatenation of the results of many expressions (whose results can have different dimensions) into one unique output is possible. For that -puropose, semi-colons (“;â€) are used as separating characters. For +purpose, semi-colons (“;â€) are used as separating characters. For instance: .. math:: filter->SetExpression("im1 + im2 ; im1b1*im2b1"); @@ -494,7 +498,7 @@ expr. For instance: /** Export constants and expressions to a given filename */ void ExportContext(const std::string& filename); -This function allows the user to export a txt file that saves its +This function allows the user to export a text file that saves its favorite constant or expression definitions. Such a file will be reusable by the ImportContext function (see above). diff --git a/Documentation/Cookbook/rst/recipes/improc.rst b/Documentation/Cookbook/rst/recipes/improc.rst index 6e9e94e977..36aa46f1b9 100644 --- a/Documentation/Cookbook/rst/recipes/improc.rst +++ b/Documentation/Cookbook/rst/recipes/improc.rst @@ -70,7 +70,7 @@ input image to the default value for DEM (which is -32768): The third mode “apply†can be useful if you apply a formula to the entire image. This will likely change the values of pixels flagged as -no-data, but the no-data value in the image metadata doesn’t change. If +no-data, but the no-data value in the image metadata does not change. If you want to fix all no-data pixels to their original value, you can extract the mask of the original image and apply it on the output image. For instance: @@ -91,8 +91,8 @@ For instance: -mode.apply.mask mask.tif You can also use this “apply†mode with an additional parameter -“mode.apply.ndvalâ€. This parameter allow to set the output nodata value -applying according to your input mask. +“mode.apply.ndvalâ€. This parameter sets the output nodata value +of the input mask. Segmentation ------------ @@ -274,7 +274,7 @@ all the previous steps: Most of the settings from the previous applications are also exposed in this composite application. The range and spatial radius used for the segmentation -step are half the values used for Mean-Shift smooting, which are obtained from +step are half the values used for Mean-Shift smoothing, which are obtained from LargeScaleMeanShift parameters. There are two output modes: vector (default) and raster. When the raster output is chosen, last step (vectorization) is skipped. @@ -295,8 +295,8 @@ Dempster Shafer based Classifier Fusion This framework is dedicated to perform cartographic validation starting from the result of a detection (for example a road extraction), enhance -the results fiability by using a classifier fusion algorithm. Using a -set of descriptor, the processing chain validates or invalidates the +the results viability by using a classifier fusion algorithm. Using a +set of descriptors, the processing chain validates or invalidates the input geometrical features. Fuzzy Model (requisite) @@ -341,7 +341,7 @@ for each studied polyline, the chosen descriptors. In this context, the *ComputePolylineFeatureFromImage* application can be used for a large range of descriptors. It has the following inputs: -- ``-in`` an image (of the sudied scene) corresponding to the chosen +- ``-in`` an image (of the studied scene) corresponding to the chosen descriptor (NDVI, building Mask…) - ``-vd`` a vector data containing polyline of interest @@ -394,7 +394,7 @@ Second Step: Feature Validation ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The final application (*VectorDataDSValidation* ) will validate or -unvalidate the studied samples using `the Dempster-Shafer +invalidate the studied samples using `the Dempster-Shafer theory <http://en.wikipedia.org/wiki/Dempster%E2%80%93Shafer_theory>`_ . Its inputs are: diff --git a/Documentation/Cookbook/rst/recipes/optpreproc.rst b/Documentation/Cookbook/rst/recipes/optpreproc.rst index e3f00ca3a4..1a39ce8f9e 100644 --- a/Documentation/Cookbook/rst/recipes/optpreproc.rst +++ b/Documentation/Cookbook/rst/recipes/optpreproc.rst @@ -10,7 +10,7 @@ Optical radiometric calibration In remote sensing imagery, pixel values are referred to as Digital Numbers (DN) and they cannot be physically interpreted or compared. They are influenced by various factors such as the amount of light flowing through -the sensor, the gain of the detectors and the analogic to numeric +the sensor, the gain of the detectors and the analogue to digital converter. Depending on the season, the light and atmospheric conditions, the @@ -63,7 +63,7 @@ sensors are: - Formosat -The *OpticalCalibration* application allows to perform optical +The *OpticalCalibration* application performs optical calibration. The mandatory parameters are the input and output images. All other parameters are optional. By default the level of calibration is set to TOA (Top Of Atmosphere). The output images are expressed in @@ -128,7 +128,7 @@ Using either **OTB Applications** or modules from **Monteverdi** , it is possible to perform both steps in a row, or step-by-step fusion, as described in the above sections. -The *BundleToPerfectSensor* application allows to perform both steps in +The *BundleToPerfectSensor* application performs both steps in a row. Seamless sensor modelling is used to perform zooming and registration of the multi-spectral image on the panchromatic image. In the case of a Pléiades bundle, a different approach is used: an affine @@ -157,15 +157,15 @@ application: There are also optional parameters that can be useful for this tool: -- The ``-elev`` option allows to specify the elevation, either with a - DEM formatted for OTB (``-elev.dem`` option, see section [ssec:dem]) +- The ``-elev`` option specifies the elevation, either with a + DEM formatted for OTB (``-elev.dem`` option, see section :ref:`dem`) or with an average elevation (``-elev.default`` option). Since registration and zooming of the multi-spectral image is performed using sensor-models, it may happen that the registration is not - perfect in case of landscape with high elevation variation. Using a - DEM in this case allows to get better registration. + perfect in case of a landscape with a large variation in elevation. In this + case a DEM will allow for a better registration to be achieved. -- The ``-lmSpacing`` option allows to specify the step of the +- The ``-lmSpacing`` option specifies the step of the registration grid between the multi-spectral image and panchromatic image. This is expressed in amount of panchromatic pixels. A lower value gives a more precise registration but implies more computation @@ -173,15 +173,15 @@ There are also optional parameters that can be useful for this tool: Default value is 10 pixels, which gives sufficient precision in most of the cases. -- The ``-mode`` option allows to select the registration mode for the +- The ``-mode`` option selects the registration mode for the multi-spectral image. The ``default`` mode uses the sensor model of each image to create a generic “MS to Pan†transform. The ``phr`` - mode uses a simple affine transform (which doesn’t need an elevation + mode uses a simple affine transform (which does not need an elevation source nor a registration grid). -Pan-sharpening is a quite heavy processing requiring a lot of system -resource. The ``-ram`` option allows you to limit the amount of memory -available for the computation, and to avoid overloading your computer. +Pan-sharpening is a process that requires a lot of system +resources. The ``-ram`` option allows you to limit the amount of memory +available for the computation, and also avoids overloading your computer. Increasing the available amount of RAM may also result in better computation time, seems it optimises the use of the system resources. Default value is 256 Mb. @@ -194,7 +194,7 @@ Figure 5: Pan-sharpened image using Orfeo ToolBox. Please also note that since registration and zooming of the multi-spectral image with the panchromatic image relies on sensor modelling, this tool will work only for images whose sensor models is -available in **Orfeo ToolBox** (see :ref:`section3` for a detailed +available in **Orfeo ToolBox** (see Section :ref:`section3` for a detailed list). It will also work with ortho-ready products in cartographic projection. @@ -204,17 +204,17 @@ Digital Elevation Model management ---------------------------------- A Digital Elevation Model (DEM) is a georeferenced image (or collection -of images) where each pixel corresponds to a local elevation. DEM are +of images) where each pixel corresponds to a local elevation. DEMs are useful for tasks involving sensor to ground and ground to sensor -coordinate transforms, like during ortho-rectification (see :ref:`section3`). These transforms need to find the intersection +coordinate transformations, for example, ortho-rectification (see Section :ref:`section3`). These transforms need to find the intersection between the line of sight of the sensor and the Earth geoid. If a simple spheroid is used as the Earth model, potentially high localisation errors can be made in areas where elevation is high or perturbed. Of course, DEM accuracy and resolution have a great impact on the precision of these transformations. -Two main available DEM, free of charges, and with worldwide cover, are -both delivered as 1 degree by 1 degree tiles: +The two principal DEMs that are available free of charges, and with worldwide cover, are +both delivered as 1 degree by 1 degree tiles. They are: - `The Shuttle Radar topographic Mission (SRTM) <http://www2.jpl.nasa.gov/srtm/>`_ is a DEM with a resolution of 90 metres, @@ -232,7 +232,7 @@ are supposed to be located within a single directory. General elevation support is also supported from GeoTIFF files. Whenever an application or **Monteverdi** module requires a DEM, the -option **elev.dem** allows set the DEM directory. This directory must +option **elev.dem** sets the DEM directory. This directory must contain the DEM tiles, either in DTED or SRTM format or as a GeoTIFF. Subdirectories are not supported. @@ -244,7 +244,7 @@ the Earth. We provide one geoid in the `OTB-Data <https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb-data/tree/master/Input/DEM>`_ repository. -In all applications, the option **elev.geoid** allows to manage the path +In all applications, the option **elev.geoid** manages the path to the geoid. Finally, it is also possible to use an average elevation in case no DEM is available by using the **elev.default** option. @@ -358,7 +358,7 @@ section. Ortho-rectification with **OTB Applications** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The *OrthoRectification* application allows to perform +The *OrthoRectification* application performs ortho-rectification and map re-projection. The simplest way to use it is the following command: @@ -378,9 +378,10 @@ parameters: - The region of interest (upper-left corner and size of the image) is estimated so as to contain the whole input image extent. -In order to use a Digital Elevation Model (see :ref:`section2`.) for -better localisation performances, one can pass the directory containing -the DEM tiles to the application: +In order to use a Digital Elevation Model to improve +the locational accuracy, one can pass the directory containing +the DEM tiles to the application as follows. Further information regarding +the use of DEMs can be found in Section :ref:`section2`. :: @@ -448,30 +449,30 @@ follows: -outputs.sizex x_size -outputs.sizey y_size -Where the ``-outputs.ulx`` and ``-outputs.uly`` options allow to specify -the coordinates of the upper-left corner of the output image. The -``-outputs.sizex`` and ``-outputs.sizey`` options allow to specify the +Where the ``-outputs.ulx`` and ``-outputs.uly`` options specify +the coordinates of the upper-left corner of the output image, while the options: +``-outputs.sizex`` and ``-outputs.sizey`` specify the size of the output image. A few more interesting options are available: -- The ``-opt.rpc`` option allows to use an estimated RPC model instead +- The ``-opt.rpc`` option uses an estimated RPC model instead of the rigorous SPOT5 model, which speeds-up the processing, -- The ``-opt.gridspacing`` option allows to define the spacing of the +- The ``-opt.gridspacing`` option defines the spacing of the localisation grid used for ortho-rectification. A coarser grid results in speeding-up the processing, but with potential loss of accuracy. A standard value would be 10 times the ground spacing of the output image. -- The ``-interpolator`` option allows to change the interpolation +- The ``-interpolator`` option changes the interpolation algorithm between nearest neighbor, linear and bicubic. Default is nearest neighbor interpolation, but bicubic should be fine in most cases. -- The ``-opt.ram`` option allows to specify the amount of memory - available for the processing (in Mb). Default is 256 Mb. Increasing - this value to fit the available memory on your computer might +- The ``-opt.ram`` option specifies the amount of memory + available for the processing (in Mb), with a default value of 256 Mb. Increasing + this value to fit the available memory on your computer can speed-up the processing. diff --git a/Documentation/Cookbook/rst/recipes/residual_registration.rst b/Documentation/Cookbook/rst/recipes/residual_registration.rst index dbe3d2664f..aeb8615cba 100644 --- a/Documentation/Cookbook/rst/recipes/residual_registration.rst +++ b/Documentation/Cookbook/rst/recipes/residual_registration.rst @@ -70,8 +70,8 @@ get a set of point which match in both images. The basic idea is to use this set of homologous points and estimate with them a residual transformation between the two images. -There is a wide variety of keypoint detector in the literature. They -allow to detect and describe local features in images. These algorithms +There is a wide variety of keypoint detectors in the literature, and they +allow for the detection and description of local features in images. These algorithms provide for each interesting point a “feature descriptionâ€. This descriptor has the property to be invariant to image translation, scaling, and rotation, partially invariant to illumination changes and @@ -90,16 +90,16 @@ The application offers two modes: full extent of both images (please note that in this mode large image file are not supported). -- The second mode, called *geobins*, allows to set-up spatial binning +- The second mode, called *geobins*, allows for the set-up of spatial binning so as to get fewer points spread across the entire image. In this mode, the corresponding spatial bin in the second image is estimated using geographical transform or sensor modeling, and is padded according to the user defined precision. Moreover, in both modes the application can filter matches whose -co-localization in the first image exceed this precision. Last, the +co-localization in the first image exceed this precision. Finally, the elevation parameters allow to deal more precisely with sensor modelling -in case of sensor geometry data. The *outvector* option allows to create +in case of sensor geometry data. The *outvector* option allows for the creation of a vector file with segments corresponding to the localization error between the matches. @@ -150,7 +150,7 @@ display in a GIS software. Please note again that for a proper use of the application, elevation must be correctly set (including DEM and geoid file). The map parameters -allows to choose a map projection in which the accuracy will be +sets a map projection in which the accuracy will be estimated (in meters). Accuracy values are provided as output of the application (computed @@ -177,7 +177,7 @@ reference. **Orfeo ToolBox** offers since version 3.16 the possibility to use hrefhttp://wiki.orfeo-toolbox.org/index.php/ExtendedFileNameextend image path to use different metadata file as input. That’s what we are going -to use there to orthorectify the QuickBird image using the *.geom* file +to use to orthorectify the QuickBird image using the *.geom* file obtained by the **RefineSensorModel** applications. over the first one using for the second image estimated sensor model which take into account the original sensor model of the slave and which also fit to the diff --git a/Examples/ChangeDetection/ChangeDetectionFrameworkExample.cxx b/Examples/ChangeDetection/ChangeDetectionFrameworkExample.cxx index a28764cc15..b41f9b0251 100644 --- a/Examples/ChangeDetection/ChangeDetectionFrameworkExample.cxx +++ b/Examples/ChangeDetection/ChangeDetectionFrameworkExample.cxx @@ -26,11 +26,11 @@ // in OTB. This framework uses the generic programming approach. All // change detection filters are // \doxygen{otb}{BinaryFunctorNeighborhoodImageFilter}s, that is, they -// are filters taking two images as input and providing one image as -// output. The change detection computation itself is performed on a +// are filters taking two images as input and provide one image as +// output. The change detection computation itself is performed on // the neighborhood of each pixel of the input images. // -// The first step required to build a change detection filter is to +// The first step in building a change detection filter is to // include the header of the parent class. // // Software Guide : EndLatex @@ -54,7 +54,7 @@ // something accepting the syntax \code{foo()}. This can be // implemented using classical C/C++ functions, but it is preferable // to implement it using C++ functors. These are classical C++ classes -// which overload the \code{()} operator. This allows using them with +// which overload the \code{()} operator. This allows to be used with // the same syntax as C/C++ functions. // // Since change detectors operate on neighborhoods, the functor @@ -107,7 +107,7 @@ public: // the functor used to perform the change detection operation. // // Inside the class only a few \code{typedef}s and the constructors -// and destructors have to be declared. +// and destructors need to be declared. // // Software Guide : EndLatex @@ -152,8 +152,8 @@ private: // Software Guide : BeginLatex // -// Pay attention to the fact that no \code{.hxx} file is needed, since -// filtering operation is implemented in the +// Pay particular attention to the fact that no \code{.hxx} file is needed, since +// the filtering operation is implemented in the // \doxygen{otb}{BinaryFunctorNeighborhoodImageFilter} class. So all // the algorithmics part is inside the functor. // @@ -178,7 +178,7 @@ int main(int argc, char* argv[]) // Software Guide : BeginLatex // // As usual, we start by defining the image types. The internal - // computations will be performed with floating point precision, + // computations will be performed using floating point precision, // while the output image will be stored using one byte per pixel. // // SoftwareGuide : EndLatex @@ -210,7 +210,7 @@ int main(int argc, char* argv[]) // Software Guide : BeginLatex // - // The next step is declaring the filter for the change detection. + // The next step is to declare the filter for the change detection. // // SoftwareGuide : EndLatex diff --git a/Examples/ChangeDetection/DiffChDet.cxx b/Examples/ChangeDetection/DiffChDet.cxx index 3c2e18cbec..31b2b00335 100644 --- a/Examples/ChangeDetection/DiffChDet.cxx +++ b/Examples/ChangeDetection/DiffChDet.cxx @@ -107,11 +107,11 @@ int main(int argc, char* argv[]) // // The change detector will give positive and negative values // depending on the sign of the difference. We are usually - // interested only in the asbolute value of the difference. For + // interested only in the absolute value of the difference. For // this purpose, we will use the \doxygen{itk}{AbsImageFilter}. Also, before // saving the image to a file in, for instance, PNG format, we will - // rescale the results of the change detection in order to use all - // the output pixel type range of values. + // rescale the results of the change detection in order to use the full range + // of values of the output pixel type. // // Software Guide : EndLatex diff --git a/Examples/Classification/BayesianPluginClassifier.cxx b/Examples/Classification/BayesianPluginClassifier.cxx index 1bd3df4736..9bb9678da7 100644 --- a/Examples/Classification/BayesianPluginClassifier.cxx +++ b/Examples/Classification/BayesianPluginClassifier.cxx @@ -38,11 +38,11 @@ // different set of parameters, mean vectors and covariance matrices. We // choose the \subdoxygen{itk}{Statistics}{MeanSampleFilter} (sample mean) and the // \subdoxygen{itk}{Statistics}{CovarianceSampleFilter} (sample covariance) for the -// estimation algorithms of the two parameters. If we want more a robust -// estimation algorithm, we can replace these estimation algorithms with more +// estimation algorithms of the two parameters. If we want a more robust +// estimation algorithm, we can replace these estimation algorithms with additional // alternatives without changing other components in the classifier system. // -// It is a bad idea to use the same sample for test and training +// It is a bad idea to use the same sample for both testing and training // (parameter estimation) of the parameters. However, for simplicity, in // this example, we use a sample for test and training. // @@ -254,8 +254,8 @@ int main(int, char *[]) // \label{eq:bayes2} // \end{equation} // - // The remainder of the code snippet shows how to use user-specified class - // labels. The classification result will be stored in a + // The remainder of the code snippet demonstrates how user-specified class + // labels are used. The classification result will be stored in a // MembershipSample object, and for each measurement vector, its // class label will be one of the two class labels, 100 and 200 // (\code{unsigned int}). diff --git a/Modules/Adapters/BoostAdapters/include/otbBoostDox.h b/Modules/Adapters/BoostAdapters/include/otbBoostDox.h index 431f99a5bd..4a60b4aa98 100644 --- a/Modules/Adapters/BoostAdapters/include/otbBoostDox.h +++ b/Modules/Adapters/BoostAdapters/include/otbBoostDox.h @@ -23,7 +23,7 @@ /**\defgroup boost Boost alike helpers * \ingroup Thematic - * \brief Various helpers that are likelly to end-up in boost by themselves eventually. + * \brief Various helpers that are likely to eventually end-up in boost by themselves. * \see http://www.boost.org/ * @{ */ diff --git a/Modules/Adapters/BoostAdapters/include/otbStringUtils.h b/Modules/Adapters/BoostAdapters/include/otbStringUtils.h index 99a91ab82d..429b2ede76 100644 --- a/Modules/Adapters/BoostAdapters/include/otbStringUtils.h +++ b/Modules/Adapters/BoostAdapters/include/otbStringUtils.h @@ -69,7 +69,7 @@ Res LexicalCast(In const& in, std::string const& kind) { * \param[in] errmsg a msg complement used to build the error message to be shown if there is \c lexical_cast exception. See \c otb:Utils::LexicalCast(). - * \param delims delimitter characters (space is default) + * \param delims delimiter characters (space is default) * \throw std::bad_alloc in case of exhausted memory * \throw std::runtime_error in case an element from the input string cannot be converted into a valid \c T instance. @@ -95,16 +95,16 @@ ConvertStringToVector(std::string const &str, T& ret, std::string const& errmsg, } /**\ingroup Utils - * split a given std::string of into key value based on given delimitter - * string. default delimitter is '='. If the string does not have a delimitter + * split a given std::string of into key value based on given delimiter + * string. The default delimiter is '='. If the string does not have a delimiter * the key is set to input string and value is set to defValue. * \param[in] str input string * \param key[out] An std::string reference where key will be stored * \param value[out] a reference of \cT where value will be stored - * \param defValue[in] a default value if there is no delimitter fo + * \param defValue[in] a default value if there is no delimiter fo * \param[in] errmsg a msg complement used to build the error message to be shown if there is \c lexical_cast exception. See \cotb:Utils::LexicalCast(). - * \param delims delimitter characters (space is default) + * \param delims delimiter characters (space is default) * \throw std::bad_alloc in case of exhausted memory * \throw std::runtime_error in case an element from the input string cannot be converted into a valid \c T instance. diff --git a/Modules/Adapters/GdalAdapters/include/otbGdalDataTypeBridge.h b/Modules/Adapters/GdalAdapters/include/otbGdalDataTypeBridge.h index 20bfa9d782..78b954b616 100644 --- a/Modules/Adapters/GdalAdapters/include/otbGdalDataTypeBridge.h +++ b/Modules/Adapters/GdalAdapters/include/otbGdalDataTypeBridge.h @@ -63,7 +63,7 @@ GDALDataType GetGDALDataType() { if( sizeof(long) == 8 ) { - //itkWarningMacro(<< "Cast a long (64 bits) image into an int (32 bits) one.") + //itkWarningMacro(<< "Cast a long (64 bit) image to an int (32 bit) one.") } return GDT_Int32; } @@ -71,7 +71,7 @@ GDALDataType GetGDALDataType() { if( sizeof(unsigned long) == 8 ) { - //itkWarningMacro(<< "Cast an unsigned long (64 bits) image into an unsigned int (32 bits) one.") + //itkWarningMacro(<< "Cast an unsigned long (64 bit) image to an unsigned int (32 bit) one.") } return GDT_UInt32; } diff --git a/Modules/Adapters/GdalAdapters/include/otbGeometriesToGeometriesFilter.h b/Modules/Adapters/GdalAdapters/include/otbGeometriesToGeometriesFilter.h index 3e604dab36..aab8c89346 100644 --- a/Modules/Adapters/GdalAdapters/include/otbGeometriesToGeometriesFilter.h +++ b/Modules/Adapters/GdalAdapters/include/otbGeometriesToGeometriesFilter.h @@ -24,8 +24,8 @@ /**\ingroup GeometriesFilters * \file otbGeometriesToGeometriesFilter.h * \since OTB v 3.14.0 - * Commons definitions for geometries filter definition. - * This file contains all the main classes required to define new geometries + * Common definitions for geometry filter definitions. + * This file contains all the main classes required to define new geometry * transformations. */ @@ -46,7 +46,7 @@ namespace otb { /**\ingroup GeometriesFilters * \class GeometriesToGeometriesFilter - * Root abstract class for all geometries to geometries filters. + * Root abstract class for all geometry to geometry filters. * \since OTB v 3.14.0 * * \ingroup OTBGdalAdapters @@ -203,10 +203,10 @@ struct OTBGdalAdapters_EXPORT FieldCopyTransformation /** * Defines the fields in the destination layer. - * The default action is to copy all fieds from one layer to another. + * The default action is to copy all fields from one layer to another. * \param [in] source source \c Layer * \param [in,out] dest destination \c Layer - * \throw itk::ExceptionObject in case the operation can't succeed. + * \throw itk::ExceptionObject in case the operation cannot succeed. */ void DefineFields(ogr::Layer const& source, ogr::Layer & dest) const; private: diff --git a/Modules/Adapters/GdalAdapters/otb-module.cmake b/Modules/Adapters/GdalAdapters/otb-module.cmake index c985c5fb0e..22eeed5db2 100644 --- a/Modules/Adapters/GdalAdapters/otb-module.cmake +++ b/Modules/Adapters/GdalAdapters/otb-module.cmake @@ -18,7 +18,7 @@ # limitations under the License. # -set(DOCUMENTATION "Adapters for the Gdal Library ( for reading and writing ).") +set(DOCUMENTATION "Adapters for the GDAL Library ( for reading and writing ).") otb_module(OTBGdalAdapters ENABLE_SHARED diff --git a/Modules/Applications/AppChangeDetection/app/otbMultivariateAlterationDetector.cxx b/Modules/Applications/AppChangeDetection/app/otbMultivariateAlterationDetector.cxx index b2ec075b68..27813b1dde 100644 --- a/Modules/Applications/AppChangeDetection/app/otbMultivariateAlterationDetector.cxx +++ b/Modules/Applications/AppChangeDetection/app/otbMultivariateAlterationDetector.cxx @@ -98,7 +98,7 @@ private: AddParameter(ParameterType_InputImage, "in2", "Input Image 2"); SetParameterDescription("in2","Mutliband image of the scene after perturbations."); AddParameter(ParameterType_OutputImage, "out", "Change Map"); - SetParameterDescription("out","Multiband image containing change maps. Each map will be in range [-1,1], so a floating point output type is advised."); + SetParameterDescription("out","Multiband image containing change maps. Each map will be in the range [-1,1], so a floating point output type is advised."); AddRAMParameter(); diff --git a/Modules/Applications/AppClassification/app/otbComputeConfusionMatrix.cxx b/Modules/Applications/AppClassification/app/otbComputeConfusionMatrix.cxx index 7db23f6b3a..da9a2e3c48 100644 --- a/Modules/Applications/AppClassification/app/otbComputeConfusionMatrix.cxx +++ b/Modules/Applications/AppClassification/app/otbComputeConfusionMatrix.cxx @@ -110,7 +110,7 @@ private: // Documentation SetDocName("Confusion matrix Computation"); - SetDocLongDescription("This application computes the confusion matrix of a classification map relatively to a ground truth. " + SetDocLongDescription("This application computes the confusion matrix of a classification map relative to a ground truth dataset. " "This ground truth can be given as a raster or a vector data. Only reference and produced pixels with values different " "from NoData are handled in the calculation of the confusion matrix. The confusion matrix is organized the following way: " "rows = reference labels, columns = produced labels. In the header of the output file, the reference and produced class labels " diff --git a/Modules/Applications/AppClassification/app/otbComputeImagesStatistics.cxx b/Modules/Applications/AppClassification/app/otbComputeImagesStatistics.cxx index def5b6b1fb..7ba053d3ee 100644 --- a/Modules/Applications/AppClassification/app/otbComputeImagesStatistics.cxx +++ b/Modules/Applications/AppClassification/app/otbComputeImagesStatistics.cxx @@ -53,7 +53,7 @@ private: "from a set of images and optionally saves the results in an XML file."); SetDocLongDescription("This application computes a global mean and standard deviation " "for each band of a set of images and optionally saves the results in an XML file." - " The output XML is intended to be used an input " + " The output XML is intended to be used as an input " "for the TrainImagesClassifier application to normalize samples before learning. " "You can also normalize the image with the XML file in the ImageClassifier application."); @@ -66,10 +66,10 @@ private: AddDocTag(Tags::Analysis); AddParameter(ParameterType_InputImageList, "il", "Input images"); - SetParameterDescription( "il", "List of input images filenames." ); + SetParameterDescription( "il", "List of input image filenames." ); AddParameter(ParameterType_Float, "bv", "Background Value"); - SetParameterDescription( "bv", "Background value to ignore in statistics computation." ); + SetParameterDescription( "bv", "Background value to ignore in computation of statistics." ); MandatoryOff("bv"); AddParameter(ParameterType_OutputFilename, "out", "Output XML file"); diff --git a/Modules/Applications/AppClassification/app/otbComputePolylineFeatureFromImage.cxx b/Modules/Applications/AppClassification/app/otbComputePolylineFeatureFromImage.cxx index 1c9c715bed..7092df394f 100644 --- a/Modules/Applications/AppClassification/app/otbComputePolylineFeatureFromImage.cxx +++ b/Modules/Applications/AppClassification/app/otbComputePolylineFeatureFromImage.cxx @@ -79,10 +79,10 @@ private: void DoInit() override { SetName("ComputePolylineFeatureFromImage"); - SetDescription("This application compute for each studied polyline, contained in the input VectorData, the chosen descriptors."); + SetDescription("This application computes the chosen descriptors for each studied polyline contained in the input VectorData."); SetDocName("Compute Polyline Feature From Image"); - SetDocLongDescription("The first step in the classifier fusion based validation is to compute, for each studied polyline, the chosen descriptors. "); + SetDocLongDescription("The first step in the classifier fusion based validation is to compute the chosen descriptors for each studied polyline. "); SetDocLimitations("Since it does not rely on streaming process, take care of the size of input image before launching application."); SetDocAuthors("OTB-Team"); SetDocSeeAlso(" "); diff --git a/Modules/Wrappers/ApplicationEngine/include/otbWrapperApplication.h b/Modules/Wrappers/ApplicationEngine/include/otbWrapperApplication.h index 37646aaeaa..da8aef6b51 100644 --- a/Modules/Wrappers/ApplicationEngine/include/otbWrapperApplication.h +++ b/Modules/Wrappers/ApplicationEngine/include/otbWrapperApplication.h @@ -115,8 +115,8 @@ public: /** Run the application. * - * For pipeline ready application, this only wire - * and configure the pipeline, and provides + * For pipeline ready application, this only wires + * and configures the pipeline, and provides * the output image or vector data parameters as pointers. * * In other cases, the application must handle @@ -126,7 +126,7 @@ public: */ int Execute(); - /** Run the application, then writes all the output to disk + /** Run the application, then write all of the output to disk * if they have an associated filename. * This is a helper function for wrappers without pipeline support. * @@ -182,7 +182,7 @@ public: * (not automatically computed by the application) */ bool HasUserValue(std::string paramKey) const; - /* If a user value was provided clear it and update the other parameters */ + /* If a user value was provided, clear it and update the other parameters */ void ClearValue(std::string paramKey); /* Returns true if the parameter has an associated value. @@ -271,7 +271,7 @@ public: void SetParameterEmpty(std::string parameter, bool value, bool hasUserValueFlag = true); /** Checks if the application is ready to be executed. It checks that there - * is no parameter missing + * is no missing parameter */ bool IsApplicationReady(); @@ -338,7 +338,7 @@ public: */ void SetDefaultOutputComplexPixelType(std::string parameter, ComplexImagePixelType type); - /* Set a minimum int value, must used in the + /* Set a minimum int value, must used in the * DoInit when setting a value by default * for the parameter * @@ -347,7 +347,7 @@ public: */ void SetMinimumParameterIntValue(std::string parameter, int value); - /* Set a maximum int value, must used in the + /* Set a maximum int value, must used in the * DoInit when setting a value by default * for the parameter * @@ -356,7 +356,7 @@ public: */ void SetMaximumParameterIntValue(std::string parameter, int value); - /* Set a minimum int value, must used in the + /* Set a minimum int value, must used in the * DoInit when setting a value by default * for the parameter * @@ -365,7 +365,7 @@ public: */ void SetMinimumParameterFloatValue(std::string parameter, float value); - /* Set a maximum int value, must used in the + /* Set a maximum int value, must used in the * DoInit when setting a value by default * for the parameter * @@ -376,7 +376,7 @@ public: /** - * Enable single selection mode for list view if status in true + * Enable single selection mode for list view if status is true * (default is false). * * Can be called for types: diff --git a/Modules/Wrappers/QGIS/otb-module.cmake b/Modules/Wrappers/QGIS/otb-module.cmake index 4c847249ee..9b118b44b6 100644 --- a/Modules/Wrappers/QGIS/otb-module.cmake +++ b/Modules/Wrappers/QGIS/otb-module.cmake @@ -18,7 +18,7 @@ # limitations under the License. # -set(DOCUMENTATION "This module allows to generate application descriptor files for QGIS processing plugin.") +set(DOCUMENTATION "This module allows for the generation of the application descriptor files for the QGIS processing plugin.") otb_module(OTBQGIS DEPENDS -- GitLab