Skip to content
Snippets Groups Projects
Commit 611eed98 authored by Manuel Grizonnet's avatar Manuel Grizonnet
Browse files

DOC: all haralick formulas in the doxygen and add link in SG and haralick app

parent 9f88f60b
Branches
Tags
No related merge requests found
...@@ -11,60 +11,34 @@ etc. They can also be measures : moments, textures, etc. ...@@ -11,60 +11,34 @@ etc. They can also be measures : moments, textures, etc.
\subsection{Haralick Descriptors} \subsection{Haralick Descriptors}
This example illustrates the use of the \doxygen{otb}{ScalarImageToTexturesFilter}, This example illustrates the use of the \doxygen{otb}{ScalarImageToTexturesFilter},
which compute the standard Haralick's textural features~\cite{Haralick1973} presented in table~\ref{tab:haralickStandardFeatures}, which computes the standard Haralick's textural features~\cite{Haralick1973}.
where $\mu_t$ and $\sigma_t$ are the mean and standard deviation of the row
(or column, due to symmetry) sums, $ \mu = $ (weighted pixel average) The \doxygen{otb}{ScalarImageToTexturesFilter} class computes 8 local Haralick
$ = \sum_{i,j}i \cdot g(i, j) =\sum_{i,j}j \cdot g(i, j) $ due to matrix summetry, and textures features. Their formulas are available in the
$ \sigma = $ (weighted pixel variance) $ = \sum_{i,j}(i - \mu)^2 \cdot g(i, j) =\sum_{i,j}(j - \mu)^2 \cdot g(i, j) $ \doxygen{otb}{ScalarImageToTexturesFilter} documentation (see section
due to matrix symmetry. \textit{Detailed Description} in the doxygen).
\begin{table} Note that more features are available in
\begin{center} \doxygen{otb}{ScalarImageToAdvancedTexturesFilter} and in
\begin{tabular}{|c|c|} \doxygen{otb}{ScalarImageToHigherOrderTexturesFilter}.
\hline
& \\ \doxygen{otb}{ScalarImageToHigherOrderTexturesFilter} computes 10 advanced
Energy & $ f_1 = \sum_{i,j}g(i, j)^2 $ \\ texture features. Their formulas are available in the
& \\ \doxygen{otb}{ScalarImageToAdvancedTexturesFilter} documentation (see section
\hline \textit{Detailed Description} in the doxygen).
& \\
Entropy & $ f_2 = -\sum_{i,j}g(i, j) \log_2 g(i, j)$, or 0 if $g(i, j) = 0$ \\ \doxygen{otb}{ScalarImageToHigherOrderTexturesFilter} computes 11
& \\ other local higher order statistics textures coefficients also based on the grey
\hline level run-length matrix. Formulas for these coefficients are also
& \\ available in the doxygen documentation of the filter (see section
Correlation & $ f_3 = \sum_{i,j}\frac{(i - \mu)(j - \mu)g(i, j)}{\sigma^2} $ \\ \textit{Detailed Description} in the doxygen).
& \\
\hline
& \\
Difference Moment & $f_4 = \sum_{i,j}\frac{1}{1 + (i - j)^2}g(i, j) $ \\
& \\
\hline
& \\
Inertia (a.k.a. Contrast) & $ f_5 = \sum_{i,j}(i - j)^2g(i, j) $ \\
& \\
\hline
& \\
Cluster Shade & $ f_6 = \sum_{i,j}((i - \mu) + (j - \mu))^3 g(i, j) $ \\
& \\
\hline
Cluster Prominence & $ f_7 = \sum_{i,j}((i - \mu) + (j - \mu))^4 g(i, j) $ \\
& \\
\hline
& \\
Haralick's Correlation & $ f_8 = \frac{\sum_{i,j}(i, j) g(i, j) -\mu_t^2}{\sigma_t^2} $ \\
& \\
\hline
\end{tabular}
\itkcaption[Haralick features]{Haralick features~\cite{Haralick1973} available in \doxygen{otb}{ScalarImageToTexturesFilter}}
\end{center}
\label{tab:haralickStandardFeatures}
\end{table}
More features are available in \doxygen{otb}{ScalarImageToAdvancedTexturesFilter}.
\relatedClasses \relatedClasses
\begin{itemize} \begin{itemize}
\item \doxygen{otb}{ScalarImageToAdvancedTexturesFilter} \item \doxygen{otb}{ScalarImageToAdvancedTexturesFilter}
\item \doxygen{otb}{ScalarImageToPanTexTextureFilter} \item \doxygen{otb}{ScalarImageToPanTexTextureFilter}
\item \doxygen{otb}{GreyLevelCooccurrenceIndexedList} \item \doxygen{otb}{GreyLevelCooccurrenceIndexedList}
\item \doxygen{otb}{ScalarImageToHigherOrderTexturesFilter}
\end{itemize} \end{itemize}
\input{TextureExample} \input{TextureExample}
......
...@@ -24,6 +24,7 @@ ...@@ -24,6 +24,7 @@
#include "otbGreyLevelCooccurrenceIndexedList.h" #include "otbGreyLevelCooccurrenceIndexedList.h"
#include "itkMacro.h" #include "itkMacro.h"
#include "itkImageToImageFilter.h" #include "itkImageToImageFilter.h"
namespace otb namespace otb
{ {
/** /**
......
...@@ -64,13 +64,13 @@ namespace otb ...@@ -64,13 +64,13 @@ namespace otb
* (or column, due to symmetry) sums. * (or column, due to symmetry) sums.
* *
* Above, \f$ \mu = \f$ (weighted pixel average) \f$ = \sum_{i, j}i \cdot g(i, j) = * Above, \f$ \mu = \f$ (weighted pixel average) \f$ = \sum_{i, j}i \cdot g(i, j) =
* \sum_{i, j}j \cdot g(i, j) \f$ (due to matrix summetry), and * \sum_{i, j}j \cdot g(i, j) \f$ (due to matrix symmetry), and
* *
* \f$ \sigma = \f$ (weighted pixel variance) \f$ = \sum_{i, j}(i - \mu)^2 \cdot g(i, j) = * \f$ \sigma = \f$ (weighted pixel variance) \f$ = \sum_{i, j}(i - \mu)^2 \cdot g(i, j) =
* \sum_{i, j}(j - \mu)^2 \cdot g(i, j) \f$ (due to matrix summetry) * \sum_{i, j}(j - \mu)^2 \cdot g(i, j) \f$ (due to matrix symmetry)
* *
* Print references: * References:
* *
* Haralick, R.M., K. Shanmugam and I. Dinstein. 1973. Textural Features for * Haralick, R.M., K. Shanmugam and I. Dinstein. 1973. Textural Features for
* Image Classification. IEEE Transactions on Systems, Man and Cybernetics. * Image Classification. IEEE Transactions on Systems, Man and Cybernetics.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment