Commit d907604a authored by Antoine Regimbeau's avatar Antoine Regimbeau

Merge branch 'doc_bandmathx' into 'develop'

Fix BandMathX documentation

See merge request !495
parents dbf88cdf aae92454
Pipeline #1467 passed with stage
in 2 minutes and 18 seconds
...@@ -70,8 +70,6 @@ Variables and their descriptions: ...@@ -70,8 +70,6 @@ Variables and their descriptions:
| im1PhyX and im1PhyY | spacing of first input in X and Y directions | Scalar | | im1PhyX and im1PhyY | spacing of first input in X and Y directions | Scalar |
+-----------------------+--------------------------------------------------------------------------------------+----------+ +-----------------------+--------------------------------------------------------------------------------------+----------+
[variables]
In addition, we also have the generic variables idxX and idxY that In addition, we also have the generic variables idxX and idxY that
represent the indices of the current pixel (scalars). represent the indices of the current pixel (scalars).
...@@ -83,8 +81,6 @@ For instance, the following formula (addition of two pixels) ...@@ -83,8 +81,6 @@ For instance, the following formula (addition of two pixels)
.. math:: im1+im2 .. math:: im1+im2
[firstequation]
is correct only if the two first inputs have the same number of bands. is correct only if the two first inputs have the same number of bands.
In addition, the following formula is not consistent even if im1 In addition, the following formula is not consistent even if im1
represents a pixel of an image made of only one band: represents a pixel of an image made of only one band:
...@@ -165,7 +161,6 @@ For instance, im1b3N3x5 represents the following neighbourhood: ...@@ -165,7 +161,6 @@ For instance, im1b3N3x5 represents the following neighbourhood:
| . | . | . | | . | . | . |
+-----+-----+-----+ +-----+-----+-----+
[correctness]
Fundamentally, a neighbourhood is represented as a matrix inside the Fundamentally, a neighbourhood is represented as a matrix inside the
muParserX framework; so the remark about mathematically well-defined muParserX framework; so the remark about mathematically well-defined
...@@ -188,7 +183,7 @@ BandMathImageFilterX. These ones can be divided into two categories. ...@@ -188,7 +183,7 @@ BandMathImageFilterX. These ones can be divided into two categories.
Concerning the last category, here is a list of implemented operators or Concerning the last category, here is a list of implemented operators or
functions (they are all implemented in otbParserXPlugins.h/.cxx files functions (they are all implemented in otbParserXPlugins.h/.cxx files
-OTB/Code/Common-): `OTB/Modules/Filtering/MathParserX`):
**Operators div and dv** The first operator allows the definition of an **Operators div and dv** The first operator allows the definition of an
element-wise division of two vectors (and even matrices), provided that element-wise division of two vectors (and even matrices), provided that
...@@ -230,7 +225,7 @@ produces a vector of 4 components made of band 1, band 2, band 1 and ...@@ -230,7 +225,7 @@ produces a vector of 4 components made of band 1, band 2, band 1 and
band 1 values from the first input. Note that curly brackets must be band 1 values from the first input. Note that curly brackets must be
used in order to select the desired band indices. used in order to select the desired band indices.
** Function dotpr ** This function allows the dot product between two **Function dotpr** This function allows the dot product between two
vectors or matrices (actually in our case, a kernel and a neighbourhood vectors or matrices (actually in our case, a kernel and a neighbourhood
of pixels): of pixels):
...@@ -278,7 +273,7 @@ instance: ...@@ -278,7 +273,7 @@ instance:
.. math:: maj(im1b1N3x3,im1b2N3x3) .. math:: maj(im1b1N3x3,im1b2N3x3)
**Function vmin and vmax** These functions calculate 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 max value of a given vector or neighborhood (only one input, the output is a 1x1 matrix). For
instance: instance:
.. math:: (vmax(im3b1N3x5)+vmin(im3b1N3x5)) ~ div ~ \{2.0\} .. math:: (vmax(im3b1N3x5)+vmin(im3b1N3x5)) ~ div ~ \{2.0\}
...@@ -365,8 +360,8 @@ Functions and operators summary: ...@@ -365,8 +360,8 @@ Functions and operators summary:
+----------------+-------------------------------------------------------------------------------+ +----------------+-------------------------------------------------------------------------------+
| vsqrt | adapation of an existing function to vectors: one input | | vsqrt | adapation of an existing function to vectors: one input |
+----------------+-------------------------------------------------------------------------------+ +----------------+-------------------------------------------------------------------------------+
| vect2scal | one dimensional vector to scalar |
[variables] +----------------+-------------------------------------------------------------------------------+
.. _API: .. _API:
...@@ -454,11 +449,6 @@ defines the kernel1, whose elements are given as follows: ...@@ -454,11 +449,6 @@ defines the kernel1, whose elements are given as follows:
| 1,3 | 1,4 | 1,5 | | 1,3 | 1,4 | 1,5 |
+-------+-------+-------+ +-------+-------+-------+
Definition of kernel1.
[correctness]
:: ::
/** Set a constant */ /** Set a constant */
......
...@@ -22,7 +22,7 @@ The naming convention “im[x]b[y]” designates the yth band of the xth ...@@ -22,7 +22,7 @@ The naming convention “im[x]b[y]” designates the yth band of the xth
input image. input image.
The *BandMath* application embeds built-in operators and functions The *BandMath* application embeds built-in operators and functions
listed in `muparser documentation <http://muparser.sourceforge.net/mup_features.html#idDef2>`_ thus listed in `muparser documentation <https://beltoforion.de/article.php?a=muparser&p=features&s=idDef1#idDef1>`_ thus
allowing a vast choice of possible operations. allowing a vast choice of possible operations.
Images with no-data values Images with no-data values
......
...@@ -146,8 +146,8 @@ private: ...@@ -146,8 +146,8 @@ private:
" - mean\n" " - mean\n"
" - var\n" " - var\n"
" - median\n" " - median\n"
" - min\n" " - vmin\n"
" - max\n" " - vmax\n"
" - etc.\n\n" " - etc.\n\n"
"For instance, if ``im1`` represents the pixel of a 3 bands image::\n\n" "For instance, if ``im1`` represents the pixel of a 3 bands image::\n\n"
...@@ -197,7 +197,7 @@ private: ...@@ -197,7 +197,7 @@ private:
"into a unique multiband output image." "into a unique multiband output image."
); );
SetDocAuthors( "OTB-Team" ); SetDocAuthors( "OTB-Team" );
SetDocSeeAlso("[1] http://articles.beltoforion.de/article.php?a=muparserx\n\n" SetDocSeeAlso("[1] https://beltoforion.de/article.php?a=muparserx\n\n"
"[2] BandMath"); "[2] BandMath");
AddDocTag(Tags::Manip); AddDocTag(Tags::Manip);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment