SBGlobBascule : Différence entre versions
| 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
Sommaire
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