Skip to content

mentaljam/MSUProj

Repository files navigation

MSUProj

MSUProj is a project to transform images of MSU-MR equipment of Russian ERS satellite "Meteor-M" to geographical projection.

It is developed specially for LRPToffLineDecoder to help amateur radio operators get remote sensing data from "Meteor-M No2" and uses GDAL to operate with raster images.

MSUProj contains a command line and a Qt GUI application.

Meteor-M No2 MSU-MR 1km

Using

For now MSUProj need a GCP file produced with LRPToffLineDecoder.

LRPToffLineDecoder uses the SGP4 model and TLE to calculate ground control points (GCP) for transforming MSU-MR images. To produce a GCP file you should set corresponding options in LRPToffLineDecoder ini file:

  • RoughStartTimeUTC - an image date in format dd.mm.yyyy (for example "21.08.2014")
  • TleFileName - a full path to TLE text file (for example "C:\decoder\norad_M2.txt")

TLE contains input parameters for SGP4 model and can be obtained from celestrak.com on this page or space-track.org. Pay attention that TLE is being constantly updated so you need to refresh your TLE file with the last data.

In future releases KMSSProj library will be able to transform images using TLE directly.

Documentation

Developer documentation is available on GitHub Pages.

Precompiled binaries

  • All stable binaries for Windows are in Releases
  • You also can grab latest development binaries for Windows from Yandex.Disk

Localization

You can translate MSUProj-Qt to your language with Transifex. Translations instructions.

Build

1. Install dependencies

Requared:

  • Compiler (tested with GCC and MSVC2013)
  • CMake
  • OMZModules - cmake modules for configuring project (read below)
  • make or Ninja for GCC
  • GDAL development package with geos and proj support (libgdal-dev in debian)
  • ImageMagick for generating icons

Additional:

  • Qt for building MSUProj-Qt
  • WIX or NSIS for building installer packages on Windows
  • Doxygen for building documentation and help files

2. Install OMZModules

cd ~/build_dir
git clone git@github.com:mentaljam/OMZModules.git
mkdir OMZModules-build
cd OMZModules-build

With make:

cmake ../OMZModules
make install

With ninja:

cmake -G Ninja ../OMZModules
ninja install

3. Clone MSUProj

cd ~/build_dir
git clone git@github.com:mentaljam/MSUProj.git
mkdir MSUProj_build
cd MSUProj_build

4. Compile

Use a -DARCH={32/64} argument for CMake to build a 32bit or a 64bit application, or leave to autodetect

Select which components must be compiled:

  • -DBUILD_CLI={ON/OFF}
  • -DBUILD_QT={ON/OFF}
  • -DBUILD_TOOLS={ON/OFF}

You may want to specify an additional path to gdal lib/ include/ dirs with -DSEARCH_PREFIX="..." or -DCMAKE_SYSTEM_PREFIX_PATH="..." options

With make:

cmake -DARCH=64 -DBUILD_QT=ON -DSEARCH_PREFIX="c:/local/" ../MSUProj
make

With ninja:

cmake -DARCH=64 -DBUILD_QT=ON -G Ninja -DSEARCH_PREFIX="c:/local/" ../MSUProj
ninja

5. Build a package or just install

Windows:

cpack -G NSIS

or

cpack -G ZIP

Debian:

cpack -G DEB
sudo dpkg -i msuproj*.deb

For full list of CPack generators read documentation.