SBGlobBascule : Différence entre versions

De MicMac
Aller à : navigation, rechercher
Ligne 1 : Ligne 1 :
 +
[[Image:picto-liste.png|25px]] [[Command|List of commands]]
 
==Description==
 
==Description==
 
SBGlobBascule is a tool for ”scene based global” bascule, it is used when no absolute information is available but the user still wishes to give some physical meaning to the orientation.
 
SBGlobBascule is a tool for ”scene based global” bascule, it is used when no absolute information is available but the user still wishes to give some physical meaning to the orientation.

Version du 23 février 2016 à 15:40

Picto-liste.png List of commands

Description

SBGlobBascule is a tool for ”scene based global” bascule, it is used when no absolute information is available but the user still wishes to give some physical meaning to the orientation.

  • SBGlobBascule use a selected number of images, on which the user has created mask, these mask must define part of the image belonging to the plane.
  • SBGlobBascule select the tie points belonging to the mask, and compute by least square fitting an estimation of this plane.
  • finally bascule SBGlobBascule compute the rotation that transform current coordinates in a new system where the fitted plane correspond to the plane Z = 0.
  • SBGlobBascule fix also the orientation inside the plane.
  • optionally SBGlobBascule can fix the the global scale.

Syntax

The syntax is mm3d SBGlobBascule FullName OrientationPath PlyFile NamedArgs

The meaning of the arguments are:

  • first arg, is the pattern defining the image we want to use;
  • second arg Mur defines the input orientation;
  • third arg MesureBasc.xml is a file that contains image measurement for defining orientation;
  • fourth arg Basc defines the output orientation;
  • optional args PostPlan= MasqPlan means that if image is IMGP4171.JPG (or IMGP4171.CR2 or...), then the associated mask IMGP4171 MasqPlan.tif
  • if there are several masks it will use all them for fitting the plane (which can be useful with wide dataset when high accuracy is required); of course if there are no existing mask an error will occur;
  • optional args DistFS=0.6 is used to fix the scale;


Open the file MesureBasc.xml, you will see that it contains measurement of points in image. Although the syntax should be quite obvious, it is described in section 6.4.4.1. To create a file like MesureBasc.xml user can of course do it with a text editor, alternatively he can, on Linux, use the interactive tool SaisieBasc described in 8.4.4. Once created, the following information will be looked for by SBGlobBascule in this file :

  • measurement of points named Line1 and Line2; they will fix orientation in the plane by imposing that line Line1-Line2 is parallel to Ox;
  • these points need only to be measured in one image, as they are assumed to be in the plane computed on the mask; is they have been measured several time, a warning will occur;
  • optional a point Origine to fix the origin of the repair;
  • optionally two point Ech1 and Ech2 to fix the scale, each point must be entered in two image, so that a 3d position can be computed; when DistFS is entered, new coordinate system is computed with the constraint that the distant between the 3d position of Ech1 and Ech2 is equal to DistFS; if DistFS is entered and Ech1 and Ech2 do not exist in at least two images, an error occurs;

Help

You can access to the help by typing : mm3d SBGlobBascule -help

Mandatory unnamed args :

  • string :: {Full Name (Dir+Pat)}
  • string :: {Orientation path}
  • string :: {Ply file}

Named args :

  • [Name=Out] string :: {Textured mesh name (def=plyName+ _textured.ply)}
  • [Name=Bin] bool :: {Write binary ply (def=true)}
  • [Name=Optim] bool :: {Graph-cut optimization (def=false)}
  • [Name=Lambda] REAL :: {Lambda (def=0.01)}
  • [Name=Iter] INT :: {Optimization iteration number (def=2)}
  • [Name=Filter] bool :: {Remove border faces (def=false)}
  • [Name=Texture] string :: {Texture name (def=plyName + _UVtexture.jpg)}
  • [Name=Sz] INT :: {Texture max size (def=4096)}
  • [Name=Scale] INT :: {Z-buffer downscale factor (def=2)}
  • [Name=QUAL] INT :: {jpeg compression quality (def=70)}
  • [Name=Angle] REAL :: {Threshold angle, in degree, between triangle normal and image viewing direction (def=90)}
  • [Name=Mode] string :: {Mode (def = Pack)}
  • [Name=Crit] string :: {Texture choosing criterion (def = Angle)}

Example

With the dataset of street Saint Martin, an example of use is :
SBGlobBascule "IMGP41((6[7-9])|([7-8][0-9])).JPG" Mur MesureBasc.xml LocBasc PostPlan=_MasqPlan DistFS=1.2