Code Monkey home page Code Monkey logo

otb-mosaic's Introduction

Summary

This module provides one application dedicated to images mosaicking.

Mosaic

This application computes mosaics of images.

###Compositing### ######Methods######

  • Simple compositing technique (-comp.feather none): Copies the last image over earlier ones in areas of overlap (Default)
  • Feathering technique (-comp.feather large): Blends all images on the maximum overlapping areas (this produces seamless mosaics, but can cause blur effect where images are not perfectly aligned).
  • Feathering technique (-comp.feather slim): Blends the last image over earlier ones in areas of overlap, on a given transition distance (seam can be visible from a certain zoom level, but it does not cause blur effect when images are not perfectly aligned)

######Performance tuning: Distance map images samplig ratio###### For performance issues, distance map images (used by feathering methods) size can be reduced using -distancemap.sr. Indeed, distance map images are computed into a temporary file before the compositing process, because it couldn't be done in a streamable way. That is, the RAM must be enough to compute the entire distance map image from each single input image. Thus, the application provides an option to reduce the size of the distance map images. Setting -distancemap.sr 10 will induce a 0.1x wider distance map image, and will save 100x less RAM. To keep the original input size, just set -alphamasks.spacing 1.0 (Default distance map images size reduction ratio is 10.)

######Interpolator###### Supported interpolators are

  • Nearest Neighborhood (-interpolator nn) (Default)
  • Bicubic (-interpolator bco)
  • Linear (-interpolator linear)

######Output spacing###### Spacing of the output mosaic can be changed using -output.spacing

######Cutline (vector data)###### Input vector data can additionaly feed the process for cutline selection using -vdcut. One vector data is required for each input image, and must appear in the same order.

###Input images dynamic harmonization### ######Methods######

  • None (-harmo.method none): No harmonization. Images pixels values are untouched.(Default)
  • Band-by-band (-harmo.method none): Consists in minimizing a cost function based on images statistics in overlapping areas, for each band independently.
  • True color harmonization (-harmo.method rgb): Consists in minimizing a cost function based on images statistics in overlapping areas, in a decorreleted color space suitable for true color processing (works only on true color images, i.e. RGB). Only the first 3 bands are processed by this method. More information about the rvb method can be found in the paper "Natural Color Satellite Image Mosaicking Using Quadratic Programming in Decorrelated Color Space" Cresson & Saint-Geours, July 2015, IEEE JSTARS Volume 8 Issue 8

######Cost function###### Various cost function can be used for harmonization

  • rmse (-harmo.cost rmse): Root mean squared error based cost function
  • musig (-harmo.cost musig): Mean and Standard deviation based cost function
  • mu (-harmo.cost mu): Mean based cost function

######Masks for statistics (vector data)###### Input vector data can additionaly feed the process for statistics computation, e.g. to mask clouds or water, using -vdstats. One vector data is required for each input image, and must appear in the same order.

###Temporary files### Distance map images, and binary masks are temporary stored in the temporary directory specified by parameter -tmpdir (Default is application directory).

Licence

This code is provided under the CeCILL-B free software license agreement.

Contact

For any issues regarding this module please contact Rémi Cresson.

[email protected]

Irstea ((French) National Research Institute of Science and Technology for Environment and Agriculture) www.irstea.fr

otb-mosaic's People

Contributors

remicres avatar

Watchers

James Cloos 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.