Changes between Version 45 and Version 46 of UvmatHelp


Ignore:
Timestamp:
Jun 5, 2013, 10:32:27 PM (7 years ago)
Author:
sommeria
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • UvmatHelp

    v45 v46  
    44== 1 Generalities ==
    55=== 1.1 Aim ===
    6 The package uvmat can be used to visualise, scan and analyse a wide variety of input data: all image and movie formats recognised by Matlab (see [#a3.1Inputdataformats section 3.1]),  NetCDF binary files(see [#a7.1TheNetCDFformat: section 7]). It is however particularly designed for laboratory data obtained  from imaging systems: it includes a Particle Image Velocimetry  software, as well as tools for geometric calibration, masks, grid generation and image pre-processing (e.g. background removal), and editing documentation files in the format xml. Stereoscopic PIV, PIV-LIF and 3D PIV in a volume (still under development) are handled.
     6The package uvmat can be used to visualise, scan and analyse a wide variety of input data: all image and movie formats recognised by Matlab (see [#a3.1Inputdataformats section 3.1]),  NetCDF binary files(see [#a7.1TheNetCDFformat section 7]). It is however particularly designed for laboratory data obtained  from imaging systems: it includes a Particle Image Velocimetry  software, as well as tools for geometric calibration, masks, grid generation and image pre-processing (e.g. background removal), and editing documentation files in the format xml. Stereoscopic PIV, PIV-LIF and 3D PIV in a volume (still under development) are handled.
    77
    88This package can be used without knowledge of the Matlab language, but it is designed to be complemented by user defined Matlab functions, providing flexibility for further data analysis. It provides convenient tools to develop a set of processing functions with a standardised system for input-output.
     
    1111
    1212=== 1.2 The package ===
    13 The master piece is a Matlab GUI, made of a Matlab figure '''uvmat.fig''' and an associated set of sub-functions in the file ''uvmat.m''. The menu bar at the top of the GUI, push buttons and editing box in  '''uvmat.fig''' activate the Matlab sub-functions (''callback'' functions) in ''uvmat.m''.  The package also contains the following set of GUI (see [#Appendix:overviewofthepackage: overview of the package] for a complete list).
    14 
    15  * '''browse_data.fig''' scans the data directory of a project
     13The master piece is a Matlab GUI, made of a Matlab figure '''uvmat.fig''' and an associated set of sub-functions in the file ''uvmat.m''. The menu bar at the top of the GUI, push buttons and editing box in  '''uvmat.fig''' activate the Matlab sub-functions (''callback'' functions) in ''uvmat.m''.  The package also contains the following set of GUI (see [#Appendix:overviewofthepackage overview of the package] for a complete list).
     14
     15 * '''browse_data.fig:''' scans the data directory of a project
    1616 * '''civ.fig:''' runs the software for Particle Imaging Velocimetry
    17  * '''editxml.fig:'''  displays and edits xml files according to an xml schema. xml reading and editing is performed by the toolbox [http://www.artefact.tk/software/matlab/xml/ xmltree], integrated in the package ''uvmat' as a subdirectory /@xmltree.
     17 * '''editxml.fig:'''  displays and edits xml files according to an xml schema. xml reading and editing is performed by the toolbox [http://www.artefact.tk/software/matlab/xml/ xmltree], integrated in the package ''uvmat'' as a subdirectory /@xmltree.
    1818 * '''geometry_calib.fig''': determines geometric calibration parameters for relating image to physical coordinates. The toolbox http://www.vision.caltech.edu/bouguetj/calib_doc/ is used, integrated in the package ''uvmat'' as a subdirectory /toolbox_calib.
    1919 * '''get_field.fig:''' selects coordinates and field in a general NetCDF file.
     
    8484After selection by the browser, the path and file names are determined. The path is split into the two first edit boxes '''[!RootPath]''' and '''[!SubDir],''' while the file name is split into a root name '''[!RootFile]''', file index string '''[!FileIndex]''', and file extension '''[!FileExt]'''. The input file name can be directly entered and modified in these edit boxes, without the browser.
    8585
    86 Once a root name has been introduced, navigation among  the file indices is provided by the red push buttons '''[runplus]''' ( '''[+>]''')  and   '''[runmin] ''' ('''[<-]'''). The central push button '''[run0]''' ('''[0]''') refreshes the current plot. See [#a3.4Navigationamongfileindices: section 3.4] for more details.
    87 
    88 When available, the time of each frame or field is displayed in the edit box '''[!TimeValue]''', at the very right. In the case of image pairs, the time interval Dt is displayed between the edit boxes '''[i1], [j1]''' and '''[i2], [j2]'''. This timing information can be read directly in the input file, in the case of movies or Netcdf files, or can be defined in an image documentation file, see [#a3.5Imagedocumentationfiles.xml: section 3.5] (in case of conflict, the latter prevails).
     86Once a root name has been introduced, navigation among  the file indices is provided by the red push buttons '''[runplus]''' ( '''[+>]''')  and   '''[runmin] ''' ('''[<-]'''). The central push button '''[run0]''' ('''[0]''') refreshes the current plot. See [#a3.4Navigationamongfileindices section 3.4] for more details.
     87
     88When available, the time of each frame or field is displayed in the edit box '''[!TimeValue]''', at the very right. In the case of image pairs, the time interval Dt is displayed between the edit boxes '''[i1], [j1]''' and '''[i2], [j2]'''. This timing information can be read directly in the input file, in the case of movies or Netcdf files, or can be defined in an image documentation file, see [#a3.5Imagedocumentationfiles.xml section 3.5] (in case of conflict, the latter prevails).
    8989
    9090'''Note: ''' the five last input file names, as well as other pieces of personal information, are stored for convenience in a file (''uvmat_perso.mat'') automatically created in the user preference directory of Matlab (indicated by the Matlab command '>>prefdir'. Browsers then  read default input in this file. A corruption of this file ''uvmat_perso.mat'' may lead to problems for  opening uvmat, type '>>reinit' on the Matlab prompt to delete it and reinitialise the configuration of uvmat.
     
    108108uvmat can read any image format recognised by the Matlab image reading function ''imread.m''. Images can be in true color or B&W, with 8 bit or 16 bit grey levels. Image files containing multiple frames are handled. Movie files can be also opened, using the Matlab function ''!VideoReader.m'', or ''mmreader.m'' for older versions of Matlab.
    109109
    110 ''Uvmat'' can also read various kinds of data in the format Netcdf. Velocity fields obtained by PIV and results of data processing are stored in this format, see [#a7Netcdffilesandget_field.fig: section 7] for details. Then different quantities (vorticity, divergence...) can be obtained. The input file type is recognized by the function ''get_file_type.m'' of uvmat and the file is opened by the function ''read_field.m'' according to this file type. it is possible to include new file types by a modification of these two functions.
     110''Uvmat'' can also read various kinds of data in the format Netcdf. Velocity fields obtained by PIV and results of data processing are stored in this format, see [#a7Netcdffilesandget_field.fig section 7] for details. Then different quantities (vorticity, divergence...) can be obtained. The input file type is recognized by the function ''get_file_type.m'' of uvmat and the file is opened by the function ''read_field.m'' according to this file type. it is possible to include new file types by a modification of these two functions.
    111111
    112112The PIV software CIVx requires B&W images in the format png (portable network graphics). It is a binary format for images with lossless (reversible) compression, recommended by w3c (http://www.w3.org/Graphics/PNG). It is an open source patent-free replacement of GIF and can also replace many common uses of TIFF. It can be read directly by all standard programs of image visualisation and processing.  Compressing a raw binary image to its png form typically saves disk storage by a factor of 3.
     
    114114For 3D PIV**, 'volume' images, with file extension .vol are used. These are images in the  png format, where the npz slices are concatenated along the y direction, forming a composite image of dimension (npy x npz, npx) from the images (npy x npx).
    115115
    116 === 3.2 Selecting fields from CIV : ===
    117 The package uvmat recognizes the NetCDF fields obtained from the CIVx software.  This includes the velocity fields and their spatial derivatives, as well as information about the CIV processing (image correlation values and flags). The vorticity, divergence, or strain are read in the same NetCDF files, but are available only after a PATCH operation has been run in the CIVx software,  see [#a11-PIV:ParticleImagingVelocimetrys: section 11].
     116=== 3.2 Selecting fields from CIV ===
     117The package uvmat recognizes the NetCDF fields obtained from the CIVx software.  This includes the velocity fields and their spatial derivatives, as well as information about the CIV processing (image correlation values and flags). The vorticity, divergence, or strain are read in the same NetCDF files, but are available only after a PATCH operation has been run in the CIVx software,  see [#a11-PIV:ParticleImagingVelocimetrys section 11].
    118118
    119119<doc71|center>
     
    136136-'''Nomenclature types:''' These different indexing systems are implemented by a  functions {fullfile_uvmat.m}. The inputs are the root name, four indices i1,i2,j1,j2 and a character string representing the nomenclature type. The reverse operation, splitting a name into a root and indices while detecting the nomenclature type, is performed by the function {fileparts_uvmat.m}. Once the nomenclature type has been detected by the browser of '''uvmat.fig''', it is displayed in the edit box '''[!NomType]''' of '''uvmat.fig'''. This nomenclature type is defined as the index string for the first file in the series, for instance '_1' for a single indexing and '1_1-2' for a double indexing. For a field series in a single file, like a movie, the nomenclature type is '*'. For a set of indexed movies (or multimage files), the index i labels the files while the index j labels the frames within a file.
    137137
    138 === 3.4 Navigation among file indices: ===
     138=== 3.4 Navigation among file indices ===
    139139The field indices can be incremented or decremented by the push buttons  '''[runplus]''' ( '''+''') and  '''[runmin]''' ('''-''') respectively.  This scanning is performed  over the first index (i) or the second one (j), depending on the selection of the check boxes '''[scan_i]''' or '''[scan_j]''' respectively. The step for increment is set by the edit box '''[increment_scan]'''. If this box is blank (or does not contain a number) the next available file is opened.
    140140
     
    153153-'''Keyboard short cuts:''' the activation of the push buttons  '''[runplus]''' and  '''[runmin]''' can be performed by typing the key board letters 'p' and 'm' respectively, after the uvmat figure has been selected by the mouse. Similarly the command of the push button '''[run0]''' can be performed by typing the 'return carriage' key.
    154154
    155 === 3.5  Image documentation files (.xml): ===
     155=== 3.5  Image documentation files (.xml) ===
    156156Information on image series is provided by a documentation file in the format xml. This file can include sections about image timing, geometric calibration, camera type and illumination. An xml file is a text file in which each element of information, or group of elements, is labelled by a tag. The list of tags and their hierarchical organisation is specified by a schema file (.xsd). The schema used for image documentation is ''ImaDoc.xsd'', available in the uvmat package at the path indicated in {PARAM.xml}). For a general introduction to the xml language, see http://www.w3schools.com/xml.
    157157
    158 When a new file series is opened in uvmat, a documentation file is automatically sought, whose path and name are displayed by ''!RootPath'' and  ''!RootFile'' respectively, with extension {.xml} (''!RootPath'' and ''!RootFile'' are the contents of the edit boxes '''[!RootPath]''' and ''' [!RootFile]''').  The detection of this file is indicated by the visibility of the pushbutton '''[view_xml]''' on the upper right of the GUI '''uvmat.fig'''. Press this button to see the content through an xml editor '''editxml.fig''' (described in [#a10-Processingfieldseries: section 10]). The xml file can be also opened directly by the uvmat browser, or by any text editor.
     158When a new file series is opened in uvmat, a documentation file is automatically sought, whose path and name are displayed by ''!RootPath'' and  ''!RootFile'' respectively, with extension {.xml} (''!RootPath'' and ''!RootFile'' are the contents of the edit boxes '''[!RootPath]''' and ''' [!RootFile]''').  The detection of this file is indicated by the visibility of the pushbutton '''[view_xml]''' on the upper right of the GUI '''uvmat.fig'''. Press this button to see the content through an xml editor '''editxml.fig''' (described in [#a10-Processingfieldseries section 10]). The xml file can be also opened directly by the uvmat browser, or by any text editor.
    159159
    160160The xml file <!ImaDoc> can contain the following sections:
     
    162162 * <Heading>: contains elements <Campaign>, <Experiment>, <!DataSeries>, which recall the position of the file in the tree structure of data files. This allows the user  to check that the document file has not been displaced.
    163163 * <Camera> contains information on the camera settings, as well as the timing of all the images in a subsection <!BurstTiming>. <!TranslationMotor> and <Oscillator> contains information on the mechanical devices used to produce the laser sheet and scan volumes.
    164  * <!GeometryCalib> contains the parameters of the geometric calibration relating the pixel position to the real space coordinates (see [#a8-Geometriccalibration: section 8]]). In the case of volume scanning, it also describes the set of laser plane positions and angles.
     164 * <!GeometryCalib> contains the parameters of the geometric calibration relating the pixel position to the real space coordinates (see [#a8-Geometriccalibration section 8]]). In the case of volume scanning, it also describes the set of laser plane positions and angles.
    165165 * <Illumination> describes the illumination system used, including the position of the laser source.
    166166 * <Tracor> describes the properties of the flow tracor (particle, dye...)
     
    168168The detailed commented structure is provided  in the schema file ''ImaDoc.xsd''. The xml documentation file is read by the function ''imadoc2struct.m''. If this file does not exist, a file with the same root name but extension .civ is sought (obsolete format).
    169169
    170 === 3.6 Ancillary input files: ===
     170=== 3.6 Ancillary input files ===
    171171 * ''' Mask:''' Masks are used to avoid PIV computations in specified areas. The file is a B&W 8 bit png image, with the same size as the image it has to mask. The grayscale code used is :
    172172   * Intensity < 20: ('black mask') the vector in this place will be set to zero
    173173   * 20 < Intensity < 200:('gray mask') the vector in this place will be absent 
    174174   * Intensity>200  the vector will be computed
    175  The mask corresponding to an image or velocity field can be displayed in '''uvmat.fig''' by selecting the check box '''[view_mask]([CheckMask])''' on the upper left. Images with appropriate name can be automatically recognised by '''uvmat.fig''' and civ functions, see [#a9-Masksandgrids: section 9.1]. Otherwise file selection by a browser is proposed when '''[view_mask]''' is selected.
     175 The mask corresponding to an image or velocity field can be displayed in '''uvmat.fig''' by selecting the check box '''[view_mask]([CheckMask])''' on the upper left. Images with appropriate name can be automatically recognised by '''uvmat.fig''' and civ functions, see [#a9-Masksandgrids section 9.1]. Otherwise file selection by a browser is proposed when '''[view_mask]''' is selected.
    176176
    177177 * ''' Grid:''' List of numbers (in ascii text) specifying the set of points where the PIV processing is performed.  It specifies the number of points n and a corresponding list of x and y coordinates expressed in image pixels, as follows
     
    179179n X1 Y1 X2 Y2  ......  Xn Yn
    180180}}}
    181 The coordinates correspond to the center of the correlation box on the first image of the pair (the actual vector position will be shifted by half the displacement found between the two images). A tool to create grids is described in [#a9-Masksandgrids: section 9.2].
     181The coordinates correspond to the center of the correlation box on the first image of the pair (the actual vector position will be shifted by half the displacement found between the two images). A tool to create grids is described in [#a9-Masksandgrids section 9.2].
    182182
    183183 * '''.fig''' Matlab figures represent plots but also Graphic User Interfaces (GUI). In that case Matlab functions (callbacks) are attached to the graphic objects in the figure and can be activated by the mouse. Matlab figures can be directly opened by the browser of '''uvmat.fig'''.
     
    238238Scalars (or image intensity) can be also represented with contour plots, by switching the popup menu '''[Contours] ''' from the setting 'image' to the setting 'contours'. Contours for positive scalar values are in sold line while contours for negative values are dashed. The interval between contours can be set by the edit box '''[num_IncrA]'''.
    239239
    240 === 4.2 Vectors: ===
     240=== 4.2 Vectors ===
    241241The vector fields are represented by arrows. The length of the arrows is automatically set when the check box'''[!CheckFixVectors]''' is not selected, or it can be adjusted by the edit box '''[num_VecScale]'''.  For clarity of visualisation, the number of displayed vectors can be divided by 2 or 4 in each direction by selecting the check box '''[CheckDecimate4]''', or '''[CheckDecimate16]''' respectively.
    242242
     
    275275The second field can be removed by unselecting the check box '''[SubField] ''' on the very right.
    276276
    277 === 4.5 Field transforms: ===
     277=== 4.5 Field transforms ===
    278278A transform can be systematically applied after reading the input field, for instance the transform 'phys' which takes into account geometric calibration. This transform can possibly combine two input fields, for instance to substract a background from an image. The processing function is chosen  by the popup menu '''[transform_fct]''' on the left, and its path is displayed in the box '''[path_transform]'''. Select the option 'more...' to browse new functions. The same functions can be called in data processsing using the GUI '''series.fig'''. A few functions are provided in the folder /transform_fct, see list in  [annex->#overview].
    279279
     
    290290-'''Plotting:''' plot the results of projection. Function used: {plot_field.m}
    291291
    292 == 5- Field structures: ==
    293 
    294 === 5.1 Griding of data: ===
     292== 5- Field structures ==
     293
     294=== 5.1 Griding of data ===
    295295Physical fields can be defined either on regular grids, either scattered on an unstructured set of positions. Some measurements techniques, like PIV or particle tracking, provided unstructured data, while most methods of analysis require data  on a regular grid. This can be done by interpolation, defining a projection on a plane (with ProjMode='interp', see  [#a6-Projectionobjects: next section]).  The three possibilities of griding are defined as follows:
    296296
     
    315315Because of memory limitation, the tps interpolation must be done in sub-domains for large data sets (with non-empty overlap to avoid steps). Then the tps coordinates and tps weights are represented with an addition index, labelling the subdomain.
    316316
    317 === 5.2 Field representation as Matlab structure: ===
     317=== 5.2 Field representation as Matlab structure ===
    318318The uvmat package represents data as ''Matlab structures'', a set of data elements characterized by a tag name (char string) and a value. The value can be any Matlab object: number, array, character string or cell, or a structure containing elements in a hierarchical way. Each element is denoted in the form ''Data.tag=value''.
    319319
     
    397397 * 'nb_subdomain' denotes the dimension for the subdomain index for tps coefficients
    398398
    399 == 6- Projection objects: ==
    400 === 6.1 Definition and editing with the uvmat interface: ===
     399== 6- Projection objects ==
     400=== 6.1 Definition and editing with the uvmat interface ===
    401401These are geometrical objects used to define cuts along lines or planes, to interpolate fields on a regular grid, to restrict the analysis or visualisation of fields to subregions. Objects are created by the menu bar command  '''[Projection object]''' in '''uvmat.fig'''.  The creation of a new object ('points', 'line'....) can be initiated by selecting the corresponding item in the menu. Alternatively, an existing xml object file can be opened by the option 'browse...'.
    402402
     
    436436[sec6.3<-]
    437437
    438 === 6.3 Projection modes: ===
     438=== 6.3 Projection modes ===
    439439Each variable of the input field yields a corresponding variable in the projected field.  Integral quantities  (circulation, flux...) can be calculated as well. The result depends on the nature of the field variable (set by the variable attribute 'Role',  on the object style and projection mode ProjMode: when any averaging or interpolation process is involved, the only projected variables are scalars and vector components, excluding 'warnflag', 'errorflag', 'ancillary'. Those are only projected with the mode 'projection' on line, planes or volumes.     
    440440
     
    471471 * ''' {Projection on volumes:**}  ''' This is used to delimitate a volume for 3D representation
    472472
    473 === 6.5 Object representation: ===
     473=== 6.5 Object representation ===
    474474Projections objects are drawn in magenta color when they are selected for creation or edition, and in blue otherwise.
    475475
     
    491491[<doc115|right>->#top]
    492492
    493 == 7- Netcdf files and get_field.fig: ==
    494 === 7.1 The NetCDF format: ===
     493== 7- Netcdf files and get_field.fig ==
     494=== 7.1 The NetCDF format ===
    495495NetCDF (network Common Data Form) is a machine-independent format for representing scientific data, suitable for large arrays (http://www.unidata.ucar.edu/software/netcdf/). Each piece of data can be directly accessed by its name without reading the whole file. New records can be added to the file without perturbing the remaining information. The next release of NetCDF is intended to be compatible with the newly developed and more general hdf format.
    496496
     
    515515A variable may have attributes, but an attribute cannot have attributes. Attributes assigned to variables may have the same units as the variable (for example, valid_range) or have no units (for example, scale_factor). If you want to store data that requires units different from those of the associated variable, it is better to use a variable than an attribute. More generally, if data require ancillary data to describe them, are multidimensional, require any of the defined NetCDF dimensions to index their values, or require a significant amount of storage, that data should be represented using variables rather than attributes.
    516516
    517 === 7.3 The GUI get_field: ===
     517=== 7.3 The GUI get_field ===
    518518  This GUI is designed to analyse a NetCDF file, showing all the variables, attributes and variable dimensions. Variables can be selected and plotted. The GUI is opened by the Matlab prompt command '>>get_field'. It is also opened by the GUI '''uvmat.fig''' when an input NetCDF file does contain recognised CIVx data: then it takes the name 'uvmat_field', and some dfeatures are inhibited, to show that it depends on uvmat.
    519519
     
    534534  In the case of a 3D input field, the fig is set to uvmat. A middle plane of cut is automatically selected. This can be moved then with the slider on the interface set_object (see section 5). The default cuts are made at constant z coordiante, but any of the three initial coordiantes can be used as z coordinate, using the menu coord_z.
    535535
    536 == 8- Geometric calibration: ==
    537 === 8.1 Generalities: ===
     536== 8- Geometric calibration ==
     537=== 8.1 Generalities ===
    538538  Transforming image to physical coordinates is a key problem for measuring techniques based on imaging. The image coordinates represent the two cartesian axis x,y of the image, with origin at the lower left corner: the y direction is directed upward, while the corresponding image index j increases downward.  The physical coordinates are defined from the experimental set-up. The correspondance is obtained by locating on the image a set of calibration points whose positions are known in the physical coordinate system. A cartesian calibration grid covering the whole image is the best option, but any set of calibration points can be used. We handle three kinds of transforms:
    539539
     
    548548<doc68|center>
    549549
    550 === 8.2 The GUI geometry_calib.fig}: ===
     550=== 8.2 The GUI geometry_calib.fig} ===
    551551-''' {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 <code>ImaDoc </code>, the corresponding list of reference points is displayed  in the central window '''[ListCoord] ''' of '''geometry_calib.fig'''. The three first columns indicate the physical coordinates and the two last ones the corresponding image coordinates. Calibration points can be alternatively introduced by opening any <code><ImaDoc></code> xml file with the menu bar command''' [Open] ''' of '''geometry_calib.fig'''.
    552552
     
    575575  Alternatively the command '''[REPLICATE]''' can be used to calibrate a whole set of experiments, using an overview of the data set provided by the GUI '''dataview.fig'''.
    576576
    577 === 8.3 Structure of the xml file: ===
     577=== 8.3 Structure of the xml file ===
    578578  The coefficients are recorded in the xml element <code><ImaDoc/GeometryCalib></code> as follows:
    579579
     
    587587[<doc115|right>->#top]
    588588
    589 == 9- Masks and grids: ==
    590 === 9.1 Masks: ===
     589== 9- Masks and grids ==
     590=== 9.1 Masks ===
    591591  Mask files are used to restrict the domain of CIV processing, to take into account fluid boundaries or invalid image zones. They must be stored as .png images with 8 bits, as described in [section 3.6->#sec3.6_mask].
    592592
     
    601601[sec9.2<-]
    602602
    603 === 9.2 Grids: ===
     603=== 9.2 Grids ===
    604604Grid files, see [section 3.6->#sec3.6_grid], are used to impose a set of positions for PIV vectors. To create a grid for PIV, activate the menu bar Tools/Make grid on the GUI uvmat. Introduce a minimum value, mesh, and maximum value for each coordinate x in the edit boxes XMin, DX, XMax respectively. Do the same for the y coordinate.  This must be expressed in physical coordinates.
    605605
     
    624624A transform function can be introduced. A projection object can be introduced by selecting the check box '''[CheckObject]'''. If a projection object has been already created the  opened interface '''set_object.fig''' will be used. Otherwise a browser appears to open an object file (xml). Similarly the check box '''[CheckMask]''' can be used to select a mask option.
    625625
    626 
    627 
    628 === 10.2 check_files: ===
     626=== 10.2 check_files ===
    629627Gives the series of files selected for processing and checks their existence. The oldest modified file is indicated, which is useful to detect whether any file in a civ processing is missing (then the oldest file is not updated).
    630628
     
    640638In the case of two input files series, the field difference will be perfomed like with the interface uvmat.fig. It is not possible to use more than two input series for this funtion.
    641639
    642 === 10.4 time_series: ===
     640=== 10.4 time_series ===
    643641  This action provides a time series of the input field. It is advised to use a POINTS projection object, so the series is limited to the selected points.
    644642
    645643In the case of two input files series, the field difference will be perfomed like with the interface uvmat.fig. It is not possible to use more than two input series for this funtion.
    646644
    647 === 10.5 merge_proj: } ===
     645=== 10.5 merge_proj } ===
    648646  This option allows to merge several field series  in a single one. This is useful to merge fields obtained with different cameras. Select the different series, activating the check box add. In this case, it is generally useful to first interpolate the fields on a single grid. For that purpose select the check box GetObject, creating a projection object of type 'plane' with projection mode 'interp'.
    649647
    650648  Since the different views have their own calibration, it is important to use the option 'phys' (menu menu_coord), and to create the grid in phys coordinates.
    651649
    652 === 10.6 more...: ===
     650=== 10.6 more... ===
    653651This action calls any user defined function by its name, acting on the series of fields defiend for ACTION. Some examples of usr_defined functions are in the subdirectory {/series}.
    654652
     
    660658
    661659== 11- PIV: Particle Imaging Velocimetry ==
    662 === 11.1 Overview: ===
     660=== 11.1 Overview ===
    663661
    664662The GUI '''civ.fig''' is used to run the programs [CIVx->3]  (Correlation Imaging Velocimetry). It is a free advanced Imaging Velocimetry implementation that relies on direct cross-correlation of pattern boxes between image pairs. The binary executable files suitable for the computer operating system need to be properly installed (see {uvmat_doc/README_INSTALL.txt }).
     
    703701In both cases, the status of the computations can be checked by opening {.cmx } and {.log} files, using the uvmat browser or any text editor. These files are writtent in the same subdirectory as the NetCDF result files. Each {.cmx} file contains the set of parameters used for a civ computation. It is written by the civ interface just before ordering the computations. By contrast , the {.log} file is produced after completion of the computations, and it contains some information on the process, including possible error messages.
    704702
    705 [sec11.3<-] {===11.3 FIX===}
     703=== 11.3 FIX ===
    706704
    707705The FIX operation is used after civ to remove false vectors, using different criteria: -''' {warning flags:} ''' these are flags (vec_F) indicating problems with the image correlation process: -*vec_F(i)=0 or 1 : default , the processing is fine -*vec_F(i)=-2: the maximum of the correlation function is close to the border of the search box (at a distance of two pixels or less), so that its maximum cannot be reliably obtained: the search domain is too small -*vec_F(i)=2: (only in civ1) we keep the less accurate Hart result (resulting from combining correlation functions  from neighborhing points) and  vec_C(i)=-1 is chosen by convention. Reference: Hart D. P. (2000) 'PIV error correction',{ Exp. Fluids} '''29''', 13-22. -*vec_F(i)=3: the optimisation of the correlation function is unstable  or  local Intensity rms of the image =0 -*vec_F(i)=4:only in civ2: the difference between the estimator and the result is more than 1 pixel. The two criteria, vec_F(i)=-2, and 3, should be selected (default options). The criterium vec_F=2 (Hart) should not be selected, while vec_F=4 (for civ2) could be selected only for excellent data (otherwise it may be too strict).   -''' {Threshold on the image correlation}  ''' (vec_C) can be introduced by the edit box [thresh_vecC] (value between 0 and 1). It removes vectors with poor correlation.  -''' {Threshold on the velocity modulus } ''' (expressed in pixels): it can remove either too small values  (menu '''[inf_sup1]''' set to '<'), or excessive values (menu '''[inf_sup1]''' set to '>'). Erratic zero velocity vectors, produced by a fixed image background, can be eliminated by this criterium. These criteria can be as well applied to the difference with a reference field, defined by a file series (edit box '''[ref_fix1]''') and a field inside the file (menu '''[field_ref1]'''). -''' {Mask fix:} '''  It has the same effect as the one used in civ1, but the removed vectors are kept in memory, labelled as false. -''' {Manual fix:} ''' Interactive fixing with the mouse is also possible, see [section 4.2->#4.2].
     
    800798{=== 12-1 Multilevel image scanning===} or multiplane scanning it also describes the set of laser planes. Then the current plane index is indicated by the text box z_index and the total number of planes by the text box nb_slice.
    801799
    802 {=== 12-2 Volume image scanning===}
    803 
    804 {=== 12-3 3D3C PIV :**===} This is performed by the GUI '''civ_3D.fig'''. The program requires input volume images .vol. These are images in the  png format, where  npz slices are concatenated along the y direction, forming a composite image of dimension (npy x npz, npx) from the images (npy x npx). These volume images can be created by the function {ima2vol.m} in {/series}.
     800=== 12-2 Volume image scanning ===
     801
     802=== 12-3 3D3C PIV ** === This is performed by the GUI '''civ_3D.fig'''. The program requires input volume images .vol. These are images in the  png format, where  npz slices are concatenated along the y direction, forming a composite image of dimension (npy x npz, npx) from the images (npy x npx). These volume images can be created by the function {ima2vol.m} in {/series}.
    805803
    806804----
    807805[editxml<-]
    808806
    809 == 13 Editing xml files with the GUI editxml.fig: ==
     807== 13 Editing xml files with the GUI editxml.fig ==
    810808  This GUI '''editxml.fig''' visualises and edits xml files. It is automatically called by the browser of '''uvmat.fig''' when a file with extension .xml is opened.
    811809
     
    816814  Manual editing of element value is possible. Select the element and use the lower edit box. This edit box transforms in a menu when a preselected list of allowed input values has been set by the schema.
    817815
    818 == Appendix: overview of the package: ==
     816== Appendix: overview of the package ==
    819817=== Master GUI: ===
    820818 * 'uvmat';...% master function for file scanning and visualisation of 2D fields