Sei sulla pagina 1di 6

GeoPIV Procedure

Step 1
Create CP_XY.mat file
The control points whose real distance are entered in mm
The order of control points in the CP_XY is row wise from top to bottom, left to right
The CP control must be processed in the same order

Step 2

Syntax: geoCENTROID_RG(XY_locations,output_filename,targetsize,CP_diam)

Inputs:
XY_locations - two column matrix containing X and Y coordinates in object space units (e.g. mm).
output_filename - string filename for output files (e.g. 'Test' for 'CENTROID_CP_Test.txt' and
'MESH_CP_Test.txt').
targetsize - size of bounding box for initial centroid computation.
CP_diam - control point radius for control point PIV/DIC tracking using geoPIV. Should be set so
as to cover just the control point.
Notes:
When the variation of centroid coordinates with threshold intensity is output and the user is asked
for lower and upper thresholds, values should be manually clicked for a range of thresholds between
which the coordinate lines are parallel and the control point appeared symmetrical in Figure 2.

load (‘CP_XY.mat);
geoCENTROID_RG(‘CP’, ‘Example’, 50, 25);
CP is he matrix of the control point object space locations
‘Example’ is the string name for the analysis
50 is the centroiding diameter, which must be greater than 25 which is approximate
control point diameter
 Select first Image
 Select the zoom into the first point, in this case top left to right
 Monitor the calibration plot and note the threshold numbers when the shaded region is
symmetric
 Select the lower and upper thresholds while the shaded region was symmetric and the
coordinate lines are broadly parallel
 If a centroid is unacceptable, reject it by selecting ‘No’
 Repeat centroiding process for the unacceptable centroid

Step 3
Syntax: geoMESH_RG(filename,samplesizepixels,sampleintervalpixels)
creates a mesh file for geoPIV_RG and a bounding Region of Interest (RoI) image. The user
manually draws a boundary for the main region of interest. Following this, there is an option to
delete areas where control points are located, either automatically using their centroid locations or
manually.

1
Inputs:
filename - suffix of mesh filename. e.g. 'Test' results in MESH_Test.txt'.
samplesizepixels - diameter of subset (patch) size.
sampleintervalpixels - spacing of subsets (patches).

Creating an Analysis Mesh


geoMESH_RG(‘Example’,50,50);
‘Example’ is the string name for the analysis
50 is the subset diameter and 50 is the subset spacing
 If the region of interest (RoI) contain a zone to be excluded (eg buried object), type 1, in this
case type 0.
 Specify the exclusion radius – eg. 50 px
 Choose automatic or manual mode (1 or 0) because contro point centroids have already been
calculated 1 is entered for automatic exclusion zones to be generated (file:
CENTROID_CP_Example.txt)
 Browse to reference image location and select the image
 Zoom to the area of interest and returen
 Construct a bounding polygon for the analysis mesh
 Subsets are precluded from the zones surrounding the control points
 Two output files are generated: (MESH_Example.txt and RoI_Example.jpg)
 MESH_Example.txt contains subset locations and sizes.
 RoI_Example.jpg contains a binary image of the RoI

Step 4
Syntax: [name]=geoLAUNCH_RG (imgbegin, imgend, imgstep, sigfig, analysis_prefix,
RoI_prefix, img_prefix, img_type, analysis_mode, cutoff_diffnorm, cutoff_iteration,
seed_zncc_tol, min_zncc_tol)
Inputs:
imgbegin - first image number without zero padding.
Imgend - last image number without zero padding.
Sigfig - number of figures in the image numbers (i.e. if image name is
IMG_0001.jpg, sigfig is 4).
analysis_prefix - prefix of analysis. Input as a string (i.e. 'analysis').
RoI_prefix - prefix of RoI file. Input as a string (i.e. 'analysis').
img_prefix - prefix of image names. Input as a string (i.e. 'IMG_' if image name is
'IMG_XXXX.jpg').
img_type - image filetype extension. Input as a string (e.g. 'jpg' --> .jpg).
analysis_mode - analysis mode: 1 - 'point-by-point', 2 - 'leapfrog', 3 - 'Eulerian' 4 - 'Eulerian
velocity'.
cutoff_diffnorm - tolerance cutoff for Guass-Newton solver.
cutoff_iteration - maximum number of Gauss-Newton iterations.
seed_zncc_tol - seed correlation coefficient tolerance. Suggested minimum value of 0.9.
min_zncc_tol - minimum full-field correlation coefficient tolerance. Minimum value of 0.0
(~no correlation). Suggested starting value of 0.75.

2
Outputs:
name - name of launchfile.

Create launch files for mesh and control point analyses


geoLAUNCH_RG(100,150,1,4,’CP_Example’,’CP_Example’,’IMG_’,’jpg’,1’1e-
5’50,0.9,0.75);
100 is the first image number
150 is the last image number
1 Is the image increment
4 is the number of figure in the image name
‘CP_Example’ is the name for the control point analysis
‘CP_Example’ is the mesh name for the control point analysis
‘IMG_’ is the image prefix
‘jpg’ is the image file type
1 is the analysis mode; 1 = point by point for control points
1e-5 is the deformation optimisation exit tolerance
10 is the deformation optimisation max. iteration limit
0.9 is the seed correlation coefficient tolerance
0.75 is the minimum correlation coefficient tolerance
Repeat command for mesh analysis except:
Change analysis name by deleting ‘CP_’ prefix
Change mesh name by deleting ‘CP_’ prefix
Change analysis mode to 2, which correspond to:
2- leapfrog (automatic reference image updating)
3- Eulerian and
4- Eulerian velocity modes
Change maximum number of iterations to 50 to allow for more significant subset
deformations

Step 5
Run a mode 1 (point by point) analysis on control points
geoPIV_RG_run(‘CP_Example_anlaysis_launcher’);
 M1_data.mat file is automatically saved after computation.

Step 6
Run a mode 2 (leapfrog) analysis on the analysis mesh
Create a M2_data.mat file containing analysis mesh subset displacements and correlation coefficients
geoPIV_RG_run(‘Example_anlaysis_launcher’);
 This mesh displacement analysis is run in mode 2 – Reliability Guided (RG) leafrog mode –
thus extremely fast due to preconditioning of the deformation optimisation
 The seed cannot be automatically identified in this case
 Zoom to an area where small deformations occur and there is high contrast texture, then press
enter in the ‘Command Window’
 M2_data.mat file is automatically saved after each computation.

3
Step 7
Filter analysis output data using a correlation coefficient cutoff
Filter out poorly correlated data to a tighter threshold than the analysis
Examine the quality of the computations quantitatively
Load (‘M2_data.mat)
Filtered_data=geoFILTER_RG(data,0.9);
0.9 is the correlation coefficient
Red crosses: correlation coefficient < 0.9
Blue crosses: correlation coefficient > 0.9
Save filtered dta and data variable in M2_data.mat file

Step 8
Delete wild output data manually
Data with potentially erroneous wild subsets removed
Allows the user to remove potentially erroneous computations manually
Load the M2_data.mat file
Unwild_data=geoWILD_RG(data, 1, 50, 1);
Unwild_data is the output with wild subsets removed
1 is the first frame to plot vector from 50 is the last frame to plot vector to
1 is the vector plot scale factor (typically use 1)
 Note: the data variable is processed here rather than the filtered_data variable output by
geoFILTER_RG since the correlation coeffieicnts (analogous to computation quality) are
excellent
 Save to M2_data.mat

Step 9
Perform image-object space calibration
Use pinhole camera and lens distortion models to calibrate data
Output data in object space terms (I e mm)
Load(‘M2_data.mat)
XYdata=geoCALIBRATE_RG(data)
Select the M1_data.mat file and open it
Select the Centroid_CP_Example.txt file and open it
Standard error < 0.5 pixels is considered a good calibration

Step 10
Compute Strains from displacements
Load M2_data.mat
Strains=geoSTRAIN_RG(XYdata);

Step 11

Syntax: geoPLOTDISP_RG(data,frame1,frame2,x_offset,y_offset,mode,colour,plot_type)
Inputs:
data - input data matrix (uvdata or XYdata).
frame1 - frame displacements are calculated from.

4
frame2 - frame displacements are calculated to.
x_offset - input to translate measurements horizontally.
y_offset - input to translate measurements vertically.
Mode - set to 0 if using uvdata matrix or 1 if using XYdata matrix.
Colour - mono vectors if set to 0 or colour (slow!) if set to 1.
plot_type - plot type: 0 for contour, 1 for surface.

geoPLOTDISP_RG(XYdata,1,50,0,0,1,0,1);
XYdata is the calibrated object space data
1 is the first frame to plot from
50 is the final frame to plot to
0 is the horizontal offset (for adjustment)
0 is the vertical offset (for adjustment)
1 is the mode toggle (0-image space; 1- object space)
0 is the vector colour toggle (0-mono; 1-colour)
1 is the plot type toggle (0-contour; 1 – surface)

% Syntax:
geoPLOTSTRAIN_RG(strains,frame1,frame2,x_offset,y_offset,mode,component,plot_type
)
%
% Inputs:
%
% strains - input strains matrix.
% frame1 - frame displacements are calculated from.
% frame2 - frame displacements are calculated to.
% x_offset - input to translate measurements horizontally.
% y_offset - input to translate measurements vertically.
% mode - set to 0 if using pixel based strains matrix or 1 if using object
% space strains matrix (simply changes the axis label units).
% component - strain component.
% plot_type - plot type: 0 for contour, 1 for surface.

Step 12
geoPLOTSTRAIN_RG(XYdata,1,50,0,0,1,0,1);
strains are the calibrated object space data
1 is the first frame to plot from
50 is the final frame to plot to
0 is the horizontal offset (for adjustment)
0 is the vertical offset (for adjustment)
10 is the strain component – 10 is engineering shear strain (see
geoSTRAIN_RG_help)
0 is the plot type (0-contour; 1 – surface)
1 is the plot type toggle (0-contour; 1 – surface)

strains(:,1): element number.


strains(:,2): X coordinate of centroid.
strains(:,3): Y coordinate of centroid.

5
strains(:,4): anti-clockwise rotation of xy reference frame from original (betainit) orientation.
strains(:,5): total linear strain, rotating frame, originally xx.
strains(:,6): total linear strain, rotating frame, originally yy.
strains(:,7): total linear shear strain, rotating frame, originally xy.
strains(:,8): major (most-compressive) principal total strain.
strains(:,9): minor (least-compressive) principal total strain.
strains(:,10): maximum total shear strain.
strains(:,11): anticlockwise rotation of major (i.e. most compressive)principal total strain from
current xx axis (degrees).
strains(:,12): total volumetric strain.
strains(:,13): total logarithmic strain, rotating frame, originally xx.
strains(:,14): total logarithmic strain, rotating frame, originally yy.
strains(:,15): total green (lagrangian) strain, rotating frame, originally xx.
strains(:,16): total green (lagrangian) strain, rotating frame, originally yy.
strains(:,17): total green (lagrangian) deviatoric strain, rotating frame, originally xy.
strains(:,18): incremental linear strain, non-rotated frame, betainit, xx.
strains(:,19): incremental linear strain, non-rotated frame, betainit, yy.
strains(:,20): incremental linear strain, non-rotated frame, betainit, xy.
strains(:,21): major (most-compressive) principal incremental strain.
strains(:,22): minor (least-compressive) principal incremental strain.
strains(:,23): maximum incremental shear strain.
strains(:,24): anticlockwise rotation of major (i.e. most compressive) principal incremental strain
from original xx (betainit) axis (degrees).
strains(:,25): incremental volumetric strain.
strains(:,26): incremental angle of dilation (degrees).
Notes:
Compression positive, clockwise shear positive.

Potrebbero piacerti anche