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

Merge branch 'develop' into extended_band

parents 3abe459b 7a0809d1
Branches
Tags
No related merge requests found
......@@ -26,7 +26,7 @@ Extract XDK
chmod +x OTB-|release|-xdk-Linux64.run
./OTB-|release|-xdk-Linux64.run
**You now will have a directory named **OTB-|release|-xdk-Linux64** in **/opt**
**You now will have a directory named OTB-|release|-xdk-Linux64 in \'/opt\'**
Setup environment
-----------------
......@@ -55,12 +55,21 @@ Download, Configure and build OTB
mkdir -p /opt/OTB/build && cd /opt/OTB
git clone --depth=1 --branch=develop https://git@git.orfeo-toolbox.org/git/otb.git source
cd build && cmake ../source
cd build && cmake ../source
make -j2
Notes
~~~~~
By default, all OTB\_USE\_\* variables in OTB are set to FALSE except for 6S and SiftFast. You can check/activate them in your cmake-gui/ccmake.
* By default, all OTB\_USE\_\* variables in OTB are set to FALSE except for 6S and SiftFast. You can check/activate them in your cmake-gui/ccmake.
* If you need to activate Qt4 modules (Monteverdi, Ice, QtWidget, ApplicationEngine ..), you must set *QT_BINARY_DIR*.
::
cd /opt/OTB/build && cmake -DOTB_USE_QT4=TRUE -DQT_BINARY_DIR=$CMAKE_PREFIX_PATH/bin
This is because Qt tools ( moc, rcc, et al) are reported as not found by cmake due to incorrect path in "qmake -query"
......@@ -62,7 +62,7 @@ FIND_PATH(OTB_DATA_ROOT README-OTB-Data PATHS $ENV{OTB_DATA_ROOT} ${OTB_SOURCE_D
FIND_PATH(OTB_DATA_LARGEINPUT_ROOT OTBData.readme PATHS $ENV{OTB_DATA_LARGEINPUT_ROOT})
IF( NOT OTB_DATA_LARGEINPUT_ROOT )
MESSAGE(FATAL_ERROR "Large input directory is not set")
MESSAGE(FATAL_ERROR "Large input directory is not set and is mandatory to build the Software Guide.")
ENDIF( NOT OTB_DATA_LARGEINPUT_ROOT )
# OTB_DATA_PATHS is searched recursively.. you need not enter sub-directories
......
......@@ -150,7 +150,7 @@ name of the files to write, but they also encapsulate the corresponding writers.
\section{Composite application}
The application framework has been extended to allow the implementation of composite applications :
applications that use other applications. The concept is simple : you have two applications A and B
\textbf{applications that use other applications}. The concept is simple : you have two applications A and B
that you want to chain in order to build a third application C. Rather than writing C by copying
the code of A and B, you would like to re-use applications A and B. This plain example will be
re-used in this section for explanations.
......@@ -231,7 +231,7 @@ with \code{b.in}. In this case, you have to manually call the writers of paramet
\code{a.out}.
\end{itemize}
At the moment, the connexion of vector data parameters is not supported.
At the moment, the in-memory connexion of vector data parameters is not supported.
\subsection{Orchestration}
......@@ -242,8 +242,17 @@ parameter update.
In the \code{DoExecute()} of your composite application, you have to call \code{ExecuteInternal()}
in order to launch each internal application. The order should be compatible with
image parameter connexions. If you want to do "in-memory" connexions, you can to it between
two calls to \code{ExecuteInternal()}.
image parameter connexions. If you want to do "in-memory" connexions, you can do it between
two calls to \code{ExecuteInternal()}, for instance :
\small
\begin{lstlisting}
ExecuteInternal("a");
GetInternalApplication("b")->SetParameterInputImage("in",
GetInternalApplication("a")->GetParameterOutputImage("out"));
ExecuteInternal("b");
\end{lstlisting}
\normalsize
The application BundleToPerfectSensor is a simple example of composite applications.
For a more complex example, you can check the application TrainImagesClassifier.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment