Changes between Version 123 and Version 124 of UvmatHelp


Ignore:
Timestamp:
Dec 7, 2014, 9:30:41 PM (6 years ago)
Author:
sommeria
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • UvmatHelp

    v123 v124  
    574574The 3D options involve a full 3D calibration relying on the [attachment:3D_view.pdf pinhole camera  model]. The method was first proposed by R.Y. Tsai, 'An Efficient and Accurate Camera Calibration Technique for 3D Machine Vision'. Proceedings of IEEE Conference on Computer Vision and Pattern Recognition, Miami Beach, FL, pp. 364-374, 1986). We use a more recent version, with the toolbox [->http://www.vision.caltech.edu/bouguetj/calib_doc/] . 3D calibrations are done in two steps. The camera'' intrinsic parameters'', which are the focal length and the quadratic deformation coefficient, are first determined by different views of the same grid observed at different angles. Then the ''extrinsic parameters'', which represent the rotation angles and translation of the physical coordinates with respect to the camera, are obtained with a single image of the grid positioned in a known plane $z=cte$. The option 3D_extrinsic allows the user to do only the second step from known intrinsic parameters. Those depend only on the camera with its objective lens and focus adjustement. Note that these 3D options require a calibration grid, with a sufficient number of calibration points covering the whole image.
    575575
    576 The transform coefficients for each image series are stored in the corresponding XML documentation file <!ImaDoc>, described in [#ImaDoc section 3.5],  under the tag <!GeometryCalib>. Calibration creates an xml file, or updates an existing xml file <!ImaDoc>, with the name of the !DataSeries folder containing the images currently opened by uvmat, followed by the file extension .xml. If a new data series is produced in a folder named with an extension, for instance !DataSeries.civ for PIV, the xml file !DataSeries.xml is still used, except if a new xml file !DataSeries.civ.xml also exists. 
     576The transform coefficients for each image series are stored in the corresponding XML documentation file <!ImaDoc>, described in [#ImaDoc section 3.5],  under the tag <!GeometryCalib>. Calibration creates an xml file, or updates an existing xml file <!ImaDoc>, with the name of the !DataSeries folder containing the images currently opened by uvmat, followed by the file extension .xml. If a new data series is produced in a folder named with an extension, for instance !DataSeries.civ for PIV, the xml file !DataSeries.xml is still used, except if a new xml file !DataSeries.civ.xml also exists.
    577577
    578578Calibration coefficients  can be displayed with the GUI '''geometry_calib.fig''' described below. Field transform from pixel to physical parameters is performed by the function ''phys.m'' in UVMAT/transform_field, which calls the pointwise transform functions  ''phys_XYZ.m'' (from image to physical coordinates) and ''px_XYZ.m'' (from physical to image coordinates), as well as ''phys_ima.m'' which transforms images. When an image or PIV velocity field is opened by uvmat, the transform function 'phys' is automatically loaded as described in [#a4.6Fieldtransforms section 4.6].
    579  
    580579
    581580=== 8.2 The GUI geometry_calib.fig ===
     
    600599To reproduce the same calibrationn for image series, open one of the image in the series, and apply again the calibration with the same points, keeping the GUI geometry_calib opened.
    601600
    602 To calibrate at once a set of experiments, a better alternative is the command '''[REPLICATE]'''. Open a folder  '''Campaign''', parent of the folders '''Experiment''' to treat. The GUI '''data_browser.fig''', also described in [#a3.7Dataorganisationinaproject section 3.7], then pops up. A two-column display appears, with the list of '''Experiments''' on the left and the list of corresponding '''DataSeries''' on the right. Select the list of experiments to calibrate, and a single camera name in '''DataSeries''', then validate by pressing '''OK'''.   
     601To calibrate at once a set of experiments, a better alternative is the command '''[REPLICATE]'''. Open a folder  '''Campaign''', parent of the folders '''Experiment''' to treat. The GUI '''data_browser.fig''', also described in [#a3.7Dataorganisationinaproject section 3.7], then pops up. A two-column display appears, with the list of '''Experiments''' on the left and the list of corresponding '''DataSeries''' on the right. Select the list of experiments to calibrate, and a single camera name in '''DataSeries''', then validate by pressing '''OK'''.
    603602
    604603-'''3D calibration''': 3D projection is handled by the options in '''[calib_type]''' '3D_lin' or '3D_quad' ((if non-linear distortion is significant). By default, the set of calibration points is assumed to be contained in a single plane ''z''=0. For a correct determination of the 3D features, the normal to this plane must be tilted with respect to the line of view. Otherwise this problem of indetermination can be resolved by using a set of (typically 5-10) calibrations images using a plane grid with different tilting angles (for precision the grid must cover a large area of the view field). On each image, get calibration points with the tool '''[!Tools/Detect grid]''', introducing the appropriate grid mesh. Do not fill info on ''z'' coordinates. Store the points each time (without applying calibration at this stage), which fills the list [ListCoordFiles] of file names. Then introduce a last grid image which will be considered as defining the orientation of the ''z'' axis, perpendicular to the grid. Detect points on this last image, but instead of storing them, apply the calibration with the option 3D_linear or 3D_quadr. A non-zero ''z'' position of this grid can be introduced by a z translation performed with '''Tools/Translate points'''.
     
    676675
    677676Other panels can specifiy the input fields to process, the use of transform function, projection objects or masks. They are made visible only if necessary.
     677
     678[[Image(series.jpg)]]
    678679
    679680=== 10.2 The upper menu bar ===