585 | | [[Image(geometry_calib.jpg)]] -''' Opening the GUI: ''' it is made visible from the GUI '''uvmat.fig''' by the menu bar command '''[!Tools/Geometric calibration] '''. If calibration data already exist in the current file <!ImaDoc>, the corresponding parameters and the list of reference points are displayed in the table '''[!ListCoord]'''. The three first columns indicate the physical coordinates and the two last ones the corresponding image coordinates (in pixels). The physical unit is imposed as centimeter by the menu '''[!CoordUnit]''' to avoid mistakes. Calibration points can be alternatively introduced by opening any XML file <!ImaDoc> with the menu bar command '''[Import]''' of '''geometry_calib.fig'''. It is possible to import the whole information, option 'All', the calibration point coordinates only, or the calibration parameters only. |
| 585 | [[Image(geometry_calib.jpg)]] |
| 586 | |
| 587 | -''' Opening the GUI: ''' it is made visible from the GUI '''uvmat.fig''' by the menu bar command '''[!Tools/Geometric calibration] '''. If calibration data already exist in the current file <!ImaDoc>, the corresponding parameters and the list of reference points are displayed in the table '''[!ListCoord]'''. The three first columns indicate the physical coordinates and the two last ones the corresponding image coordinates (in pixels). The physical unit is imposed as centimeter by the menu '''[!CoordUnit]''' to avoid mistakes. Calibration points can be alternatively introduced by opening any XML file <!ImaDoc> with the menu bar command '''[Import]''' of '''geometry_calib.fig'''. It is possible to import the whole information, option 'All', the calibration point coordinates only, or the calibration parameters only. |
589 | | -'''Simple scaling''': a simple scaling, in pixels/cm, can be introduced by the menubar command '''[Tools/Set scale]''', which displays a set of four reference points in the table '''[!!ListCoord]'''. The tool 'ruler', from the menu bar command '''[Tools/ruler]''' of '''uvmat.fig''', can be useful to get the scaling. The origin of the physical coordinates is set by default to the lower left image corner. Use the tool 'translate points', described below, to change the origin. |
| 591 | -'''Simple scaling''': a simple scaling, in pixels/cm, can be introduced by the menu bar command '''[!Tools/Set scale]''', which displays a set of four reference points in the table '''[!ListCoord]'''. The tool 'ruler', from the menu bar command '''[Tools/ruler]''' of '''uvmat.fig''', can be useful to get the scaling. The origin of the physical coordinates is set by default to the lower left image corner. Use the tool 'translate points', described below, to change the origin. |
605 | | 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 '''[wiki:DataSeries !DataSeries]''' on the right. Select the list of experiments to calibrate, and a single camera name in '''[wiki:DataSeries !DataSeries]''', then validate by pressing '''OK'''. |
606 | | |
607 | | -'''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'''. |
| 607 | 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'''. |
| 608 | |
| 609 | -'''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'''. |
611 | | -'''Section planes:''' deducing the physical coordinates from image coordinates requires information on the section plane. The default assumption is that the objects in the image are in the plane used for calibration, but uvmat can handle volume scanning by a laser plane. A set of section planes can be defined by their origin positions and rotation angle vectors. Theses planes are labelled by a ''z index'', assumed to be the frame index j (case of volume scan), or the index i modulo the number of slices !NbSlice (case of 'multilevel' scan). These settings are stored in the xml file <!ImaDoc> as part of the section <!GeometryCalib> and can be edited from '''uvmat.fig''' with the menu bar command '''[Tools/set slice]'''. A dialog box '''set_slices''' appears for entering the first and last section plane positions ''z'', as well as the number of slices and the option 'volume_scan' ('multilevel' otherwise). In the absence of 3D scan put twice the same value for first and last z. Finally a tilt angle of the laser sheet, around the ''x'' and ''y'' axis, can be introduced, with a possible angular scanning from first to last section planes. After introduction of the plane position information, the z-index is displayed in the frame '''[[wiki:FileIndices !FileIndices]]''' of '''uvmat.fig'''. The local ''z'' position of the mouse pointer, assumed to lay on the current section plane, is then displayed in '''[text_display]'''. |
| 613 | -'''Section planes:''' deducing the physical coordinates from image coordinates requires information on the section plane. The default assumption is that the objects in the image are in the plane used for calibration, but uvmat can handle volume scanning by a laser plane. A set of section planes can be defined by their origin positions and rotation angle vectors. Theses planes are labelled by a ''z index'', assumed to be the frame index j (case of volume scan), or the index i modulo the number of slices !NbSlice (case of 'multilevel' scan). These settings are stored in the xml file <!ImaDoc> as part of the section <!GeometryCalib> and can be edited from '''uvmat.fig''' with the menu bar command '''[Tools/set slice]'''. A dialog box '''set_slices''' appears for entering the first and last section plane positions ''z'', as well as the number of slices and the option 'volume_scan' ('multilevel' otherwise). In the absence of 3D scan put twice the same value for first and last z. Finally a tilt angle of the laser sheet, around the ''x'' and ''y'' axis, can be introduced, with a possible angular scanning from first to last section planes. After introduction of the plane position information, the z-index is displayed in the frame '''[!FileIndices]''' of '''uvmat.fig'''. The local ''z'' position of the mouse pointer, assumed to lay on the current section plane, is then displayed in '''[text_display]'''. |