MSU-MR geotransforming utility MSUProj

Hola Amigos!

We glad to announce a new major release of MSU-MR geotransforming utility MSUProj. This version contains a Qt graphical user interface in addition to a command line utility. With its help you can easily transform MSU-MR images to WGS84 latitude/longitude or UTM, using a GCP file produced with the offline decoder. To get additional information about transforming operation go to Help->Reference from the main window menu (or just press F1).

You can download the last stable version from
Last development versions are available on

If you want to contribute to the project you can:
— Fork it on
— Translate it to your language on

Special big thanks to Christophe Tof ( for his help with testing, suggestions and translation to French.

MSU-MR geotransforming utility MSUProj: 24 комментария

  1. Petr

    Windows precompiled binaries have been updated.
    There are two builds for Windows: a msvc2013 build and a gcc build. If you want to use MSUProj on Windows XP you must select a gcc build.

  2. Petr

    Hello there!

    New minor version of MSUProj is ready and brings different fixes and updates.

    As usual windows binaries and install packages are available on GitHub and Yandex.Disk. Debian packages are on launchpad.

    Here is a changelog:
    — NEW: An option to open file dialogs in a previously selected folder or a prefered folder
    — NEW: Default (English) interface language in settings window
    — NEW: Warping in separate thread (no GUI freezing)
    — NEW: Save and restore windows’ states and geometries
    — FIX: Out file name updating when GCP file is selected manually
    — FIX: Wrong GCP file reading in MSUProj-Qt on Linux
    — FIX: Different small GUI fixes
    — UPDATE: Project documentation (add target to upload doxygen html output to GH pages)
    — UPDATE: MSUProj-Qt reference window (using QT Help)
    — UPDATE: Translations (new sources for linux .desktop file and doxygen based manual)
    — UPDATE: Project configuration
    — UPDATE: Code refactoring and restyling

  3. Petr


    For now MSUProj need a GCP file produced with LRPToffLineDecoder, but it’s difficult for many to realize how to obtain it so I’ve written this small manual.

    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 (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 on this page or 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.

  4. fred


    is there anybody who can give me an example how to setup the ini file for the geotransforming utility

    what do i have to do to get an gcp file ?



    1. Petr


      Here is a part of working ini for May 6 with variables for generating a GCP file:



      TLE0=Meteor-M N2
      TLE1=1 40069U 14037A 15248.87377367 -.00000003 00000-0 19219-4 0 9992
      TLE2=2 40069 98.7506 302.7399 0004662 295.8111 64.2575 14.20615738 60220

  5. fred

    Hi Petr

    is the input file a s.hard file ?

    the batch proces stops: cannot find gcp file. There is no cgp file

    when will this file be made



    1. Petr

      is the input file a s.hard file ?
      Yes, it is.

      when will this file be made
      It should be generated by LRPToffLineDecoder and put near a .jpg file. For example after LRPToffLineDecoder finished I have 3 files in my output folder:

      the batch proces stops: cannot find gcp file. There is no cgp file
      Do You start the LRPToffLineDecoder directly or through a .bat file? Try this sequence:
      — Write a proper .ini file
      — Run the LRPToffLineDecoder.exe to generate .jpg and .gcp files
      — Run MSUProj or MSUProj-Qt (a GUI version) to transform obtained .jpg to geographical projection

      Sorry, but I cannot help much as I don’t receive images by myself. Try to ask developers of LRPToffLineDecoder directly if You have further problems.

  6. Petr

    As I understand only the offline decoder generates gcp files. Online decoder and AMIGOS client don’t do it.

    Once again, I do not receive images by myself. I only have a set of jpg and gcp files from Oleg and Christophe Tof and a sample file (M2_LRPT_2014-8-21-9-36-6-778.s.hard) from an old archive of offline decoder v2015.3.20.0015. So I can say with certainty that MSUProj works with this version and don’t know about others.

    In next major release MSUProj wil generate gcp internally, but for now I have big troubles with free time for it.

  7. fred

    Hi petr

    no, no it is OK i understand your problems

    just one more question, where to download the offline decoder ?




  8. fred

    Ok petr

    thanks for your replys

    i unzipped the zip file to the root c:\
    and then started ExampleOfHowtoUse.bat
    then the next fault appears: Lrptofflinedecoder Acces violation at address 04c16097 in module sgp4.dll.write of address 000002fc

    please give me a hint how to solve this problem



    1. Petr

      Try to rename LRPToffLineDecoder_test.ini to LRPToffLineDecoder.ini and run LRPToffLineDecoder.exe with double click (without bat file). LRPToffLineDecoder will automatically start to process sample .hard file. After that there should be 4 files in DATA folder:
      1) M2_LRPT_2014-8-21-9-36-6-778.s.hard — the source file;
      2) M2_LRPT_2014-8-21-9-36-6-778.s.hard_123.jpg — an image;
      3) M2_LRPT_2014-8-21-9-36-6-778.s.hard_123.jpg.gcp — a gcp file;
      4) M2_LRPT_2014-8-21-9-36-6-778.s.hard_123.jpg.stat — a file with image time.

      After that run MSUProj to transform an image to projection. Download the last version from here. Use a Qt version for GUI or a command line utility. For command line You should specify arguments, something like

      msuproj.exe -u -src "C:\2015.3.20.15\DATA\M2_LRPT_2014-8-21-9-36-6-778.s.hard_123.jpg" -gcp "C:\2015.3.20.15\DATA\M2_LRPT_2014-8-21-9-36-6-778.s.hard_123.jpg.gcp"

      You can run msuproj.exe --help to get help message. But it’s easier to run MSUProj-Qt.

      Don’t use old msugeo from this archive.

  9. fred

    Hi petr
    Thansk a lot for all your info but i do still meet the violation error. I did try it on two other computers one with Win10 and another with Win8 and still i get the same error.

    Which operating system do you use ?



  10. Petr

    XD The thing is that I use linux!
    I run decoder under wine and have no errors. I also have successfully ran it on Win7 at work.

    I’m more and more inclined to think that in todays realization georeferencing of MSU-MR images is too tiring. I promise that I’ll find strength to finish internal GCP calculation in a short time.

    PS: Christophe Tof (zetofzone) has written a detailed post somewhere on Facebook about georeferencing MSU-MR images and also he’s provided an advanced .bat file for this. But I can not find neither link to this post nor .bat file.

  11. Petr

    Hello there!

    New minor version of MSUProj (0.6-23) is available for downloading.

    Among main changes are:
    — Add option to disable logotype
    — Update documentation
    — Add Hungarian language, thanks to gurrsoft (Zsolt Gurmai)
    — Fix current language selection in settings window
    — Update About dialog
    — Fix settings dialog size
    — Windows installers are now built with the Qt Installer Framework with ability to update installation from AMIGOS ftp server

    MSUProj for Windows is now available on AMIGOS ftp server:
    Windows installers
    Windows archives

    After installation you can update MSUProj with the corresponding option in ‘Help’ menu. Also you can enable automatic updates checking on application start in settings. Pay attention that this functionality is not available for zipped version of MSUProj.

  12. Petr

    This is a major version of MSUProj. The main news is a complete rewrite of the transformation algorithm. Now the output image quality is much better (no ugly stripes and blocks) and the transformation takes place very quickly.

    The old and the new algorithms examples

    Binaries and installers for Windows are available on GitHub and AMIGOS ftp. Also updates are available through the MSUproj maintenance tool.
    Ubuntu (Debian) packages are available through the ppa:mentaljam/amigos.

    NEW: Add option to disable logotype
    NEW: Check for updates functionality on Windows
    UPDATE: Readme, documentation and manuals
    UPDATE: Gcp-thinner tool (and fix its name)
    UPDATE: Better execution time calculation for msuproj-cli
    UPDATE: The transforming algorithm was totally rewrited
    UPDATE: Rewrite the GCP file reading method without stringstream
    FIX: Installing GCC libraries on Windows
    FIX: OMP parallel for image the lines loop

    NEW: A progress bar (and a taskbar for Windows) of the warp operation
    NEW: Clear buttons for file path edit lines
    NEW: Colors for files loading status
    NEW: Drops handling for image files (an image can be dragged and dropped to the main window of the MSUProj-Qt)
    UPDATE: «About» dialog
    UPDATE: Better image and GCP file loading status
    FIX: Current language selection in settings window
    FIX: Settings dialog size

    NEW: Hungarian language, thanks to gurrsoft (Zsolt Gurmai)
    FIX: Russian documentation
    FIX: Interface strings and translations

    UPDATE: Project configuration for the last OMZModules version
    UPDATE: Additional project variables were moved to OMZModules
    UPDATE: QtIfw configuration
    FIX: Version and date in gh-pages target
    FIX: Headers includings for the «dev» target

  13. Thibaut

    Hi Petr,
    I just tested the latest version of msuproj_x64, i got an error message when i wanted to use it :

    ERROR 4: Unable to open EPSG support file gcs.csv.
    Try setting the GDAL_DATA environment variable to point to the directory containing EPSG csv files.

    Does this csv file necessary to work ?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *