Changes between Version 16 and Version 17 of UvmatHelp


Ignore:
Timestamp:
Jun 1, 2013, 5:18:46 PM (11 years ago)
Author:
sommeria
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • UvmatHelp

    v16 v17  
    1111  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).
    1212
    13  * '''browse_data.fig''' scans the data directory of a project 
    14  *  '''civ.fig:''' runs the software for Particle Imaging Velocimetry 
     13 * '''browse_data.fig''' scans the data directory of a project
     14 * '''civ.fig:''' runs the software for Particle Imaging Velocimetry
    1515 * '''editxml.fig:'''  displays and edits xml files according to an xml schema. xml reading and editing is performed by the toolbox [xmltree->http://www.artefact.tk/software/matlab/xml/] , copied in the subdirectory /@xmltree.
    16  * '''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, copied in the subdirectory /toolbox_calib. 
    17  * '''get_field.fig:''' selects coordinates and field in a general NetCDF file. The subdirectory /get_field contains functions called by the GUI get_field. 
    18  * '''series.fig:''' apply various processing functions to series of fields. These functions are stored in the subdirectory /series. 
    19  * '''set_object.fig:''' creates and edits geometric objects used to project data: points, lines, planes... 
     16 * '''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, copied in the subdirectory /toolbox_calib.
     17 * '''get_field.fig:''' selects coordinates and field in a general NetCDF file. The subdirectory /get_field contains functions called by the GUI get_field.
     18 * '''series.fig:''' apply various processing functions to series of fields. These functions are stored in the subdirectory /series.
     19 * '''set_object.fig:''' creates and edits geometric objects used to project data: points, lines, planes...
    2020 * '''view_field.fig:''' is a GUI complementing uvmat for plotting projected data.
    2121
     
    701701
    702702== Appendix: overview of the package: ==
    703 
    704703=== Master GUI: ===
    705 -'uvmat';...% master function for file scanning and visualisation of 2D fields
     704 * 'uvmat';...% master function for file scanning and visualisation of 2D fields
    706705
    707706=== Other GUIs:(function .m and associated figure .fig) ===
    708 -'civ';...   %function associated with the interface 'civ.fig' for PIV and spline interpolation -'create_grid';...% called by the GUI geometry_calib to create a physical grid   - 'dataview';...% function for scanning directories in a campaign -'editxml';...%display and edit xml files using a xls schema -'geometry_calib';...%performs geometric calibration from a set of reference points -'get_field';...% choose and plot a field from a Netcdf file -'msgbox_uvmat';... associated with GUI msgbox_uvmat.fig to display message boxes, for error, warning or input calls -'rotate_points';...%'rotate_points': associated with GUI rotate_points.fig to introduce (2D) rotation parameters -'series';...% master function for analysis field series, with interface 'series.fig' -'set_grid';...% creates a grid for PIV -'set_object';...%  edit a projection object -'translate_points';...% associated with GUI translate_points.fig to display translation parameters   -'view_field';...% function for visualisation of projected fields'
     707 * 'civ';...   %function associated with the interface 'civ.fig' for PIV and spline interpolation
     708 * 'create_grid';...% called by the GUI geometry_calib to create a physical grid
     709 * 'dataview';...% function for scanning directories in a campaign
     710 * 'editxml';...%display and edit xml files using a xls schema
     711 * 'geometry_calib';...%performs geometric calibration from a set of reference points
     712 * 'get_field';...% choose and plot a field from a Netcdf file
     713 * 'msgbox_uvmat';... associated with GUI msgbox_uvmat.fig to display message boxes, for error, warning or input calls
     714 * 'rotate_points';...%'rotate_points': associated with GUI rotate_points.fig to introduce (2D) rotation parameters
     715 * 'series';...% master function for analysis field series, with interface 'series.fig'
     716 * 'set_grid';...% creates a grid for PIV  * 'set_object';...%  edit a projection object
     717 * 'translate_points';...% associated with GUI translate_points.fig to display translation parameters
     718 * 'view_field';...% function for visualisation of projected fields'
    709719
    710720=== functions activated by mouse and keybord in GUI : ===
    711 -'keyboard_callback';... % function activated when a key is pressed on the keyboard -'mouse_down';% function activated when the mouse button is pressed on a figure (callback for 'WindowButtonDownFcn') -'mouse_motion';...% permanently called by mouse motion over a figure (callback for 'WindowButtonMotionFcn') -'mouse_up';... % function to be activated when the mouse button is released (callback for 'WindowButtonUpFcn')
     721 * 'keyboard_callback';... % function activated when a key is pressed on the keyboard
     722 * 'mouse_down';% function activated when the mouse button is pressed on a figure (callback for 'WindowButtonDownFcn')
     723 * 'mouse_motion';...% permanently called by mouse motion over a figure (callback for 'WindowButtonMotionFcn')
     724 * 'mouse_up';... % function to be activated when the mouse button is released (callback for 'WindowButtonUpFcn')
    712725
    713726=== main functions used: ===
    714 -'civ_matlab';...% civ programs, Matlab version (called by civ.m, option Civprogram/Matlab in the upper menu bar) -'plot_field';...%displays a vector field and/or scalar or images -'plot_object';...%draws a projection object (points, line, plane...) -'proj_field';...%project a field on a projection object (plane, line,...) -'RUN_STLIN';...% combine 2 displacement fields for stereo PIV -'sub_field';...% combine the two input fields,
     727 * 'civ_matlab';...% civ programs, Matlab version (called by civ.m, option Civprogram/Matlab in the upper menu bar)
     728 * 'plot_field';...%displays a vector field and/or scalar or images
     729 * 'plot_object';...%draws a projection object (points, line, plane...)
     730 * 'proj_field';...%project a field on a projection object (plane, line,...)
     731 * 'RUN_STLIN';...% combine 2 displacement fields for stereo PIV * 'sub_field';...% combine the two input fields,
    715732
    716733=== convert and I/O functions: ===
    717 -'cell2tab';... % transform a Matlab cell in a character array suitable for display in a table -'fill_GUI';... % fill a GUI with handles 'handles' from input data Param  -'imadoc2struct';...% convert the image documentation file ImaDoc into a Matlab structure -'nc2struct';...% transform a netcdf file in a corresponding matlab structure -'num2stra';...% transform number to the corresponding character string depending on the nomenclature. -'read_field':...% read the fields from files in different formats (netcdf files, images, video) -'read_GUI'::...% read a GUI and provide the data as a Matlab structure 'read_image';... read images or video objects -'read_multimadoc';... %read a set of Imadoc files and compare their timing of different file series 'read_xls';...%read excel files containing the list of the experiments -'stra2num';...% transform letters (a, b, A, B,) or numerical strings ('1','2'..) to the corresponding numbers -'struct2nc';...% write fields in netcdf files -'struct2xml';... transform a matlab structure to a xml tree. -'xml2struct'...% read an xml file as a Matlab structure, converts numeric character strings into numbers
     734 * 'cell2tab';... % transform a Matlab cell in a character array suitable for display in a table
     735 * 'fill_GUI';... % fill a GUI with handles 'handles' from input data Param
     736 * 'imadoc2struct';...% convert the image documentation file ImaDoc into a Matlab structure
     737 * 'nc2struct';...% transform a netcdf file in a corresponding matlab structure
     738 * 'num2stra';...% transform number to the corresponding character string depending on the nomenclature.
     739 * 'read_field':...% read the fields from files in different formats (netcdf files, images, video)
     740 * 'read_GUI'::...% read a GUI and provide the data as a Matlab structure 'read_image';... read images or video objects
     741 * 'read_multimadoc';... %read a set of Imadoc files and compare their timing of different file series 'read_xls';...%read excel files containing the list of the experiments
     742 * 'stra2num';...% transform letters (a, b, A, B,) or numerical strings ('1','2'..) to the corresponding numbers
     743 * 'struct2nc';...% write fields in netcdf files
     744 * 'struct2xml';... transform a matlab structure to a xml tree.
     745 * 'xml2struct'...% read an xml file as a Matlab structure, converts numeric character strings into numbers
    718746
    719747=== ancillary functions: ===
    720 -'calc_field';...% defines fields (velocity, vort, div...) from civx data (old conventions) and calculate them. -'calc_field_interp': defines fields (velocity, vort, div...) from civ data and calculate them for projection with linear interpolation -'calc_field_tps': defines fields (velocity, vort, div...) from civ data and calculate them with tps interpolation -calc_tps': calculate the thin plate spline (tps) coefficients for interpolation -'check_files';...% check the path, modification date and svn version for all the function in the toolbox UVMAT. -'close_fig';...% function  activated when a figure is closed -'copyfields';...% copy fields between two matlab structures -'delete_object';...%delete a projection object, defined by its index in the Uvmat list or by its graphic handle 'fileparts_uvmat': splits a file name in root and indices and recognize file naming convention -'filter_tps';...% find the thin plate spline coefficients for interpolation-smoothing -'find_field_cells';...% group the variables of a nc-formated Matlab structure into 'fields' with common dimensions -find_field_cells': test field structure for input in proj_field and plot_field, group the variables  into 'fields' with common dimensions -'find_file_series';...%check the content of an input file and find the corresponding file series -'fullfile_uvmat';...%creates a file name from a root name and indices. -'get_file_type': determine info about a file (image, multimage, civdata,...) -'griddata_uvmat';...%make 2D linear interpolation using griddata, with input appropriate for both Matlab 6.5 and 7
    721 
    722   -'hist_update';...%  update of a current global histogram by inclusion of a new field
    723 
    724 -'ListDir';... scan the structure of the directory tree (for dataview.m) -'open_uvmat';...% open with uvmat the  field selected in the list of 'civ/status' or 'series/check_data_files' -'peaklock';...% -'phys_XYZ';...% transform coordiantes from pixels to phys -'px_XYZ';...% transform coordiantes from phys to pixels   -'read_civxdata';...reads civx data from netcdf files -'read_civdata';... reads new civ data from netcdf files -'read_get_field';... read the list of selected variables from the GUI get_field (TODO: use read_GUI) -'read_imatext';...%read .civ files (obsolete, but can be adapted to other text documentation files)  -'read_xls';...%read excel files containing the list of the experiments -'reinit';...% suppress the personal parameter file 'uvmat_perso.mat' -'set_col_vec';...% sets the color code for vectors depending on a scalar and input parameters (used for plot_field) -'tps_coeff';...% calculate the thin plate spline (tps) coefficients -'tps_eval';... %calculate the thin plate spline (tps) interpolation at a set of points -'tps_eval_dxy';...% calculate the derivatives of thin plate spline (tps) interpolation at a set of points (limited to the 2D case) -'update_imadoc';...  %update the ImaDoc xml file -'update_obj';... update the object representation graph and its projection field, record it in the uvmat interface -'update_waitbar';... update the waitbar display, used for ACTION functions in the GUI 'series' -'write_plot_param'...%update plotting parameters after plot, TODO: change into a general function: fill_GUI
     748 * 'calc_field';...% defines fields (velocity, vort, div...) from civx data (old conventions) and calculate them.
     749 * 'calc_field_interp': defines fields (velocity, vort, div...) from civ data and calculate them for projection with linear interpolation
     750 * 'calc_field_tps': defines fields (velocity, vort, div...) from civ data and calculate them with tps interpolation
     751 * calc_tps': calculate the thin plate spline (tps) coefficients for interpolation
     752 * 'check_files';...% check the path, modification date and svn version for all the function in the toolbox UVMAT.
     753 * 'close_fig';...% function  activated when a figure is closed
     754 * 'copyfields';...% copy fields between two matlab structures
     755 * 'delete_object';...%delete a projection object, defined by its index in the Uvmat list or by its graphic handle 'fileparts_uvmat': splits a file name in root and indices and recognize file naming convention
     756 * 'filter_tps';...% find the thin plate spline coefficients for interpolation-smoothing
     757 * 'find_field_cells';...% group the variables of a nc-formated Matlab structure into 'fields' with common dimensions
     758 * find_field_cells': test field structure for input in proj_field and plot_field, group the variables  into 'fields' with common dimensions
     759 * 'find_file_series';...%check the content of an input file and find the corresponding file series
     760 * 'fullfile_uvmat';...%creates a file name from a root name and indices.
     761 * 'get_file_type': determine info about a file (image, multimage, civdata,...)
     762 * 'griddata_uvmat';...%make 2D linear interpolation using griddata, with input appropriate for both Matlab 6.5 and 7
     763 * 'hist_update';...%  update of a current global histogram by inclusion of a new field
     764 * '!ListDir';... scan the structure of the directory tree (for dataview.m)
     765 * 'open_uvmat';...% open with uvmat the  field selected in the list of 'civ/status' or 'series/check_data_files'
     766 * 'peaklock';...% -'phys_XYZ';...% transform coordiantes from pixels to phys
     767 * 'px_XYZ';...% transform coordiantes from phys to pixels
     768 * 'read_civxdata';...reads civx data from netcdf files
     769 * 'read_civdata';... reads new civ data from netcdf files
     770 * 'read_get_field';... read the list of selected variables from the GUI get_field (TODO: use read_GUI)
     771 * 'read_imatext';...%read .civ files (obsolete, but can be adapted to other text documentation files)
     772 * 'read_xls';...%read excel files containing the list of the experiments
     773 * 'reinit';...% suppress the personal parameter file 'uvmat_perso.mat'
     774 * 'set_col_vec';...% sets the color code for vectors depending on a scalar and input parameters (used for plot_field)
     775 * 'tps_coeff';...% calculate the thin plate spline (tps) coefficients
     776 * 'tps_eval';... %calculate the thin plate spline (tps) interpolation at a set of points
     777 * 'tps_eval_dxy';...% calculate the derivatives of thin plate spline (tps) interpolation at a set of points (limited to the 2D case)
     778 * 'update_imadoc';...  %update the ImaDoc xml file
     779 * 'update_obj';... update the object representation graph and its projection field, record it in the uvmat interface
     780 * 'update_waitbar';... update the waitbar display, used for ACTION functions in the GUI 'series'
     781 * 'write_plot_param'...%update plotting parameters after plot, TODO: change into a general function: fill_GUI
    725782
    726783=== series functions ===
    727 -'aver_stat': calculate field average over a time series -'avi2png': copy an avi movie to a series of B/W .png images (take the average of green and blue color components) -'check_data_files': check the existence, type and status of the files selected by series.fig -'merge_proj': concatene several fields from series, can project them on a regular grid in phys coordinates -'sub_background': subtract a sliding background to an image series -'time_series': extract a time series after projection on an object (points , line..)
     784 * 'aver_stat': calculate field average over a time series
     785 * 'avi2png': copy an avi movie to a series of B/W .png images (take the average of green and blue color components)
     786 * 'check_data_files': check the existence, type and status of the files selected by series.fig
     787 * 'merge_proj': concatene several fields from series, can project them on a regular grid in phys coordinates
     788 * 'sub_background': subtract a sliding background to an image series
     789 * 'time_series': extract a time series after projection on an object (points , line..)
    728790
    729791=== transform functions ===
    730 - 'ima_filter': low-pass filter of an image (builtin filtering parameter) - 'ima_remove_background': removes backgound from an image (using the local minimum) - 'ima_remove_particles': removes particles from an image (keeping the local minimum) - 'FFT2_detrend': calculate the 2D spectrum of the input scalar after removing the linear trend (requires the Matlab image processing toolbox). -'phys': transforms image (Unit='pixel') to real world (phys) coordinates using geometric calibration parameters. It acts if the input field contains the tag 'CoordUnit' with value 'pixel' -'phys_polar': this transforms the fields to polar coordinates, radius in abscissa (same unit as x, y) and azimuth in ordinate (unit =degree).
     792 * 'ima_filter': low-pass filter of an image (builtin filtering parameter)
     793 * 'ima_remove_background': removes backgound from an image (using the local minimum)
     794 * 'ima_remove_particles': removes particles from an image (keeping the local minimum)
     795 * 'FFT2_detrend': calculate the 2D spectrum of the input scalar after removing the linear trend (requires the Matlab image processing toolbox). 
     796 * 'phys': transforms image (Unit='pixel') to real world (phys) coordinates using geometric calibration parameters. It acts if the input field contains the tag 'CoordUnit' with value 'pixel'
     797 * 'phys_polar': this transforms the fields to polar coordinates, radius in abscissa (same unit as x, y) and azimuth in ordinate (unit =degree).