Coder Social home page Coder Social logo

lyntel / micmac Goto Github PK

View Code? Open in Web Editor NEW

This project forked from micmacign/micmac

0.0 2.0 0.0 298.14 MB

Free open-source photogrammetry software tools

Home Page: http://micmac.ensg.eu

License: Other

C++ 94.90% CMake 0.21% Makefile 0.03% C 4.06% Gnuplot 0.01% HTML 0.02% Roff 0.01% MATLAB 0.01% TeX 0.12% Shell 0.29% Logos 0.01% Batchfile 0.01% Python 0.11% Cuda 0.15% Inno Setup 0.03% Objective-C 0.03% QMake 0.01% PostScript 0.01% GLSL 0.01%

micmac's Introduction

Version française

Prerequisites

Some external tools need to be present on your system for Micmac to run properly :

  • make for parallel processes management,
  • convert, from ImageMagick, for image format conversion,
  • exiftool and exiv2, to read/write image meta-data,
  • proj4 for coordinate system conversion.

On Debian/Ubuntu distribution you can easily install these tools by calling this command:

sudo apt-get install make imagemagick libimage-exiftool-perl exiv2 proj-bin qt5-default

You can check before-hand that Micmac is able to find those programs by calling the command:

bin/mm3d CheckDependencies (in Micmac directory)

NOT FOUND near one of the tools indicates either the specified executable is not on your disk or it cannot be found in the directories of the PATH environment variable. There is also a special directory for tool finding which is named binaire-aux, in Micmac directory. When an external program is needed, this directory is always scanned whatever the value of PATH.

Additionnal notes for Windows

You will need Visual C++ 2010 runtime redistribuables to run pre-compiled binaries of micmac. Both pre-compiled and compiled from source executables will need :

One of WINDIR or SystemRoot environment variable must be set to Windows' installation directory (C:\Windows in much cases). This prevents Micmac from calling a convert.exe that is not ImageMagick's convert tool but a network utility used by the system. Since Windows does not have an easy-to-use package manager, a version of make, convert, exiftool and exiv2 are delivered with the source and Windows binaries archives. They are placed in the binaire-aux directory.

Compiling from the sources' archive

Prerequisites

In addition of previously named tools, people willing to compile binaries from the source code will need to install the cmake program. Linux and MacOS X users may also want to get X11 header files in order to generate graphical functionalities like SaisieBasc, SaisieMasque, etc ... The package of X11 headers is general called libx11-dev under Linux distributions. X11-based tools are not available in the Windows version. Windows users may need Qt5 libraries to generate graphical interfaces such as SaisieMasqQT.

Compiling process for Linux / MacOS X

  • clone the git repository : git clone https://github.com/micmacIGN/micmac.git
  • enter 'micmac' directory : cd micmac
  • create a directory for the build's intermediate files, then enter it : mkdir build & cd build
  • generate makefiles using cmake : cmake ../
  • process compilation : make install -j*cores number* (ex.: make install -j4)

Compiling process for Visual C++ (Windows)

The first steps are the same as for a Linux/MacOS build except for the make call. Instead of makefiles, Cmake generates a Visual C++ solution, named micmac.sln. Open it and compile the INSTALL project. Be sure to be in Release configuration, for Micmac is much faster built this way than in Debug mode. Again, do not compile the entire solution but just the INSTALL project, otherwise compiled binaries won't be copied in the bin directory and this will prevent Micmac from working.

Installation test

The website logiciels.ign.fr also provides a test dataset called Boudha_dataset.zip. This file contains images and configuration files needed to compute the Boudha example from Micmac's documentation. By calling the script this way :

./boudha_test.sh my_micmac_bin/

assuming your working directory is the Boudha directory contained in the file, you can process all the tool-chain until dense point matching.

'my_micmac_bin' is a path to the 'bin' directory of your installation. ex.: ./boudha_test.sh ../micmac/bin/ This example assumes 'Boudha' directory (containing data) and 'micmac' (installation directory) have the same parent directory. Notice the ending '/', it's mandatory for the script to work. After some computation time, you may find three 'ply' files in the 'MEC-6-Im' directory with the three parts of the dense points cloud of the statue's head. Open the PLY files with a viewer like meshlab to check everything proceeded correctly.

Additionnal notes

You can append the full path of the bin directory to PATH environment variable to call Micmac commands from anywhere. However, it is not necessary to add the binaire-aux directory to the PATH variable.

For Linux / MacOSX, you have to append the path to the lib directory to LD_LIBRARY_PATH in .bashrc to be able to use QT tools. Add the following line: export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/micmac/lib/

For MacOSX, if you want to use QT tools with precompiled binaries available on logiciels.ign.fr, you need to install Qt libraries for Mac from http://download.qt-project.org

micmac's People

Contributors

deseilligny avatar gchoqueux avatar nguyengiang41 avatar erupnik avatar gmaillet avatar yilinzhou avatar mdaakir avatar luc-girod avatar jolebelge avatar jmmuller avatar rjanvier avatar oscarmartinezrubi avatar jfvilleforceix avatar ign-packo avatar meynardc avatar mohamedanass avatar tristanfaureign avatar atruffier avatar luca-penasa avatar mgaudin avatar angattrey avatar torocat avatar oleg-alexandrov avatar sbonaime avatar amrosu avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.