Tawny : Différence entre versions

De MicMac
Aller à : navigation, rechercher
(Created page with "==Description== The simplified tool for generating ortho mosaic is Tawny, it is an interface to the Porto tool. The use of Tawny is quite simple because it assumes that the da...")
 
(Description)
 
(13 révisions intermédiaires par 5 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
 +
[[Image:picto-liste.png|25px]] [[Command|List of commands]]
 
==Description==
 
==Description==
The simplified tool for generating ortho mosaic is Tawny, it is an interface to the Porto tool. The use of Tawny is quite simple because it assumes that the data have been correctly prepared and organized during the matching process. Practically this is done when the matching has been made using Malt and I recommend to only use Tawny in conjunction with Malt. In Ortho Mode, Malt has created a set of individual ortho images, associated mask, incidence image, . . . in a directory Ortho-MEC-Malt/
+
The simplified tool for generating ortho mosaic is Tawny, it is an interface to the [[Porto]] tool. The use of Tawny is quite simple because it assumes that the data have been correctly prepared and organized during the matching process. Practically this is done when the matching has been made using [[Malt]] and it is recommended to only use Tawny in conjunction with [[Malt]]. In Ortho Mode, Malt has created a set of individual ortho images, associated mask, incidence image, . . . in a directory Ortho-MEC-Malt/
 
The job of Tawny is essentially to merge these data and to optionally do some radiometric equalization.
 
The job of Tawny is essentially to merge these data and to optionally do some radiometric equalization.
For the radiometric equalization, Tawny will compute for each individual ortho image Oi , a polynom Pi such that, ∀i, j, x, y where ortho image O i and O j are both defined in x, y we have the relation:
+
 
O i (x, y)P i (x, y) = O j (x, y)P j (x, y)
+
For the radiometric equalization, Tawny will compute for each individual ortho image <math>O_i</math> a polynom <math>P_i</math> such that, <math>∀(i, j, x, y)</math> where ortho image <math>O_i</math> and <math>O_j</math> are both defined in at the ground coordinates <math>(x, y)</math> we have the relation:
 +
*<math>O_i(x, y)*P_i(x, y) = O_j(x, y)*P_j(x, y)</math>&nbsp;&nbsp;&nbsp;&nbsp;(1)
 +
 
 
The problem with such formula is that it can lead to important drift in radiometry. So there is also a global polynom R that is computed, this polynom is such that:
 
The problem with such formula is that it can lead to important drift in radiometry. So there is also a global polynom R that is computed, this polynom is such that:
O i (x, y)P i (x, y)R(x, y) = O i (x, y)
+
*<math>O_i(x, y)*P_i(x, y)*R(x, y) = O_i(x, y)</math>&nbsp;&nbsp;&nbsp;&nbsp;(2)
The radiometry of each image used for the ortho photo will finally be O i (x, y)P i (x, y)R(x, y). Of course for equation 3.1 and 3.2, there is much more observations than unknowns and they are solved using least mean square. The user can control the radiometric equalization by specifying the degree of the polynom.  
+
 
 +
The radiometry of each image used for the ortho photo will finally be <math>O_i(x, y)P_i(x, y)R(x, y)</math>. Of course for equation (1) and (2), there is much more observations than unknowns and they are solved using least mean square. The user can control the radiometric equalization by specifying the degree of the polynom.
 +
 
 +
If the polynomial correction fail at computing a good radiometric product, the user can deactivate it using ''RadiomEgal=0'' .
  
 
===Syntax===
 
===Syntax===
The global syntax for Tawny is <br>
+
The global syntax for Tawny is :
<code>mm3d Tawny Directory NamedArgs</code>
+
<pre>mm3d Tawny Directory NamedArgs</pre>
  
 
===Help===  
 
===Help===  
A basic help can be asked with <code> mm3d Tawny -help </code> <br>
+
A basic help can be asked with :
 +
<pre> mm3d Tawny -help </pre>
 +
 
 
Mandatory unnamed args :  
 
Mandatory unnamed args :  
*<span style="font-family:times roman;">string :: {Data directory}
+
*string :: {Data directory}
 +
 
 
Named args :  
 
Named args :  
*<span style="font-family:times roman;">[Name=DEq] INT :: {Degree of equalization (Def=1)}
+
*[Name=RadiomEgal] bool :: {Perform or not radiometric egalization (Def=true)}
*<span style="font-family:times roman;">[Name=DEqXY] Pt2di :: {Degree of equalization, if diff in X and Y}
+
*[Name=DEq] INT :: {Degree of equalization (degree of polynoms Oi), Def=1}
*<span style="font-family:times roman;">[Name=AddCste] bool :: {Add unknown constant for equalization (Def=false)}
+
*[Name=DEqXY] Pt2di :: {Degree of equalization, if diff in X and Y}
*<span style="font-family:times roman;">[Name=DegRap] INT :: {Degree of rappel to initial values, Def = 0}
+
*[Name=AddCste] bool :: {Add unknown constant for equalization (Def=false)}
*<span style="font-family:times roman;">[Name=DegRapXY] Pt2di :: {Degree of rappel to initial values, Def = 0}
+
*[Name=DegRap] INT :: {Degree of rappel to initial values (degree of global polynom R), Def = 0}
*<span style="font-family:times roman;">[Name=RGP] bool :: {Rappel glob on physically equalized, Def = true}
+
*[Name=DegRapXY] Pt2di :: {Degree of rappel to initial values when different in X and Y, Def = 0}
*<span style="font-family:times roman;">[Name=DynG] REAL :: {Global Dynamic (to correct saturation problems)}
+
*[Name=RGP] bool :: {Rappel glob on physically equalized, Def = true}
*<span style="font-family:times roman;">[Name=ImPrio] string :: {Pattern of image with high prio, def=.*}
+
*[Name=DynG] REAL :: {Global Dynamic (to correct saturation problems)}
*<span style="font-family:times roman;">[Name=SzV] INT :: {Sz of Window for equalization (Def=1, means 3x3)}
+
*[Name=ImPrio] string :: {Pattern of image with high prio, def=.*}
*<span style="font-family:times roman;">[Name=CorThr] REAL :: {Threshold of correlation to validate homologous (Def 0.7)}
+
*[Name=SzV] INT :: {Sz of Window for equalization (Def=1, means 3x3)}
*<span style="font-family:times roman;">[Name=NbPerIm] REAL :: {Average number of point per image (Def = 1e4)}
+
*[Name=CorThr] REAL :: {Threshold of correlation to validate homologous (Def 0.7)}
*<span style="font-family:times roman;">[Name=L1F] bool :: {Do L1 Filter on couple, def=true (change when process is blocked)}
+
*[Name=NbPerIm] REAL :: {Average number of point per image (Def = 1e4)}
*<span style="font-family:times roman;">[Name=SatThresh] REAL :: {Threshold determining saturation value (pixel >SatThresh will be ignored)}
+
*[Name=L1F] bool :: {Do L1 Filter on couple, def=true (change when process is blocked)}
*<span style="font-family:times roman;">[Name=Out] string :: {Name of output file (in the folder)}
+
*[Name=SatThresh] REAL :: {Threshold determining saturation value (pixel >SatThresh will be ignored)}
 +
*[Name=Out] string :: {Name of output file (in the folder)}
 +
 
 +
===Example===
 +
For example in the Mur Saint Martin dataset (or whenever "[[Malt]] Ortho" was used without the "DirMEC" option changed), you can launch :
 +
<pre>mm3d Tawny Ortho-MEC-Malt/</pre>

Version actuelle en date du 26 février 2019 à 14:07

Picto-liste.png List of commands

Description

The simplified tool for generating ortho mosaic is Tawny, it is an interface to the Porto tool. The use of Tawny is quite simple because it assumes that the data have been correctly prepared and organized during the matching process. Practically this is done when the matching has been made using Malt and it is recommended to only use Tawny in conjunction with Malt. In Ortho Mode, Malt has created a set of individual ortho images, associated mask, incidence image, . . . in a directory Ortho-MEC-Malt/ The job of Tawny is essentially to merge these data and to optionally do some radiometric equalization.

For the radiometric equalization, Tawny will compute for each individual ortho image [math]O_i[/math] a polynom [math]P_i[/math] such that, [math]∀(i, j, x, y)[/math] where ortho image [math]O_i[/math] and [math]O_j[/math] are both defined in at the ground coordinates [math](x, y)[/math] we have the relation:

  • [math]O_i(x, y)*P_i(x, y) = O_j(x, y)*P_j(x, y)[/math]    (1)

The problem with such formula is that it can lead to important drift in radiometry. So there is also a global polynom R that is computed, this polynom is such that:

  • [math]O_i(x, y)*P_i(x, y)*R(x, y) = O_i(x, y)[/math]    (2)

The radiometry of each image used for the ortho photo will finally be [math]O_i(x, y)P_i(x, y)R(x, y)[/math]. Of course for equation (1) and (2), there is much more observations than unknowns and they are solved using least mean square. The user can control the radiometric equalization by specifying the degree of the polynom.

If the polynomial correction fail at computing a good radiometric product, the user can deactivate it using RadiomEgal=0 .

Syntax

The global syntax for Tawny is :

mm3d Tawny Directory NamedArgs

Help

A basic help can be asked with :

 mm3d Tawny -help 

Mandatory unnamed args :

  • string :: {Data directory}

Named args :

  • [Name=RadiomEgal] bool :: {Perform or not radiometric egalization (Def=true)}
  • [Name=DEq] INT :: {Degree of equalization (degree of polynoms Oi), Def=1}
  • [Name=DEqXY] Pt2di :: {Degree of equalization, if diff in X and Y}
  • [Name=AddCste] bool :: {Add unknown constant for equalization (Def=false)}
  • [Name=DegRap] INT :: {Degree of rappel to initial values (degree of global polynom R), Def = 0}
  • [Name=DegRapXY] Pt2di :: {Degree of rappel to initial values when different in X and Y, Def = 0}
  • [Name=RGP] bool :: {Rappel glob on physically equalized, Def = true}
  • [Name=DynG] REAL :: {Global Dynamic (to correct saturation problems)}
  • [Name=ImPrio] string :: {Pattern of image with high prio, def=.*}
  • [Name=SzV] INT :: {Sz of Window for equalization (Def=1, means 3x3)}
  • [Name=CorThr] REAL :: {Threshold of correlation to validate homologous (Def 0.7)}
  • [Name=NbPerIm] REAL :: {Average number of point per image (Def = 1e4)}
  • [Name=L1F] bool :: {Do L1 Filter on couple, def=true (change when process is blocked)}
  • [Name=SatThresh] REAL :: {Threshold determining saturation value (pixel >SatThresh will be ignored)}
  • [Name=Out] string :: {Name of output file (in the folder)}

Example

For example in the Mur Saint Martin dataset (or whenever "Malt Ortho" was used without the "DirMEC" option changed), you can launch :

mm3d Tawny Ortho-MEC-Malt/