Changes between Version 123 and Version 124 of UvmatHelp
- Timestamp:
- Dec 7, 2014, 9:30:41 PM (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
UvmatHelp
v123 v124 574 574 The 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. 575 575 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. 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. 577 577 578 578 Calibration 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 580 579 581 580 === 8.2 The GUI geometry_calib.fig === … … 600 599 To 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. 601 600 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'''. 601 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'''. 603 602 604 603 -'''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'''. … … 676 675 677 676 Other 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)]] 678 679 679 680 === 10.2 The upper menu bar ===