/jeolib-jiplib

Primary LanguageC++GNU General Public License v3.0GPL-3.0

jiplib

jiplib is a C++ library with a Python wrapper for image processing for geospatial data implemented in JRC Ispra. Python users are encouraged to use pyjeo that is built upon this library.

License

jiplib is released under the GPLv3 license.

Dependencies

libraries:

Installation procedure

Install dependency libraries (example for Debian based system using apt)

sudo apt install -yq \
  build-essential \
  cmake \
  libgsl-dev \
  libfann-dev \
  libgdal-dev \
  libjsoncpp-dev \
  libpython3-dev \
  python3-numpy \
  python3-pip \
  libboost-filesystem-dev  \
  libboost-serialization-dev \
  swig

Build and install miallib

Get the source code from miallib, to create the library:

git clone https://github.com/ec-jrc/jeolib-miallib.git
cd jeolib-miallib
mkdir build
cd build
cmake ..

or without sudo rights, replace the last command with:

cmake -DCMAKE_INSTALL_PREFIX=/home/user/install/miallib ..

Build the miallib library:

cmake --build .

Install the miallib library (remove sudo to install without sudo rights):

sudo cmake --install .

Build and install jiplib

Get the source code from jiplib:

git clone https://github.com/ec-jrc/jeolib-jiplib.git
cd jeolib-jiplib
mkdir build
cd build
cmake ..

or without sudo rights, replace the last command with:

cmake -DCMAKE_PREFIX_PATH=/home/user/install/miallib -DCMAKE_INSTALL_PREFIX=/home/user/install/jiplib ..

Build the jiplib library and create a python wheel:

cmake --build .

Install the jiplib library:

cmake --install .

To only install the Python bindings using the wheel that has been built:

cmake --install . --component wheels

Test the installation

From the build directory, run:

ctest .

Build documentation (deprecated, users are encouraged to use pyjeo documentation)

Go to directory doc and run make html.

cd doc
make html