Changes between Version 37 and Version 38 of Tutorial/AdvancedParticleImagingVelocimetry2
- Timestamp:
- Jan 20, 2015, 3:20:42 PM (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Tutorial/AdvancedParticleImagingVelocimetry2
v37 v38 1 1 [[TracNav(Tutorial/TOC)]] 2 2 3 = [wiki:Tutorial] / Advanced Particle Imaging Velocimetry = 3 4 This is an example using more advanced tools than the simple example [wiki:Tutorial/ParticleImageVelocimetry Tutorial: Particle Image Velocimetry]. 5 Image pre_processing and merging of mutiple fields is used to optimise PIV in the case of a narrow parietal jet (produced by convection in a cavity). 6 Open the example UVMAT_DEMO6_PIVconvection (accessible on http://servforge.legi.grenoble-inp.fr/pub/soft-uvmat/). 4 This is an example using more advanced tools than the simple example [wiki:Tutorial/ParticleImageVelocimetry Tutorial: Particle Image Velocimetry]. Image pre_processing and merging of mutiple fields is used to optimise PIV in the case of a narrow parietal jet (produced by convection in a cavity). Open the example UVMAT_DEMO6_PIVconvection (accessible on http://servforge.legi.grenoble-inp.fr/pub/soft-uvmat/). 7 5 8 6 = Calibration = … … 13 11 14 12 = Sub_background = 15 We observe parasitic light rays on the images which correspond to fixed features, leading possibly to spurious velocity vectors equal to 0. To eliminate those we use '''sub_background'''. 16 In the GUI uvmat, select '''Run/field series'''. Then select the program 'sub_background'. This function is not provided in the default menu, so you need to use the last menu option 'more...', and select the function in the sub-folder 'series/' of the package uvmat. This option is then preserved in the menu for later use. 17 Then run '''sub_background''' over the whole index range in i and j, using the default parameters. Answer Yes to the question 'apply levels', which will conveniently rescale the image brightness after background removal. 13 We observe parasitic light rays on the images which correspond to fixed features, leading possibly to spurious velocity vectors equal to 0. To eliminate those we use '''sub_background'''. In the GUI uvmat, select '''Run/field series'''. Then select the program 'sub_background'. This function is not provided in the default menu, so you need to use the last menu option 'more...', and select the function in the sub-folder 'series/' of the package uvmat. This option is then preserved in the menu for later use. Then run '''sub_background''' over the whole index range in i and j, using the default parameters. Answer Yes to the question 'apply levels', which will conveniently rescale the image brightness after background removal. 18 14 19 15 = First PIV = 20 Do PIV on the the whole image series, selecting all the options from Civ1 to Patch2 (see [wiki:Tutorial/ParticleImageVelocimetry Tutorial: Particle Image Velocimetry] for an introduction). 16 Do PIV on the the whole image series, selecting all the options from Civ1 to Patch2 (see [wiki:Tutorial/ParticleImageVelocimetry Tutorial: Particle Image Velocimetry] for an introduction). 21 17 22 Choose the pair 'j=1-2' which provides the smaller time interval (100 ms), a good choice to capture correlations in a first try (although higher precision can be obtained with a larger time interval if the correlation is still of good quality). 18 Choose the pair 'j=1-2' which provides the smaller time interval (100 ms), a good choice to capture correlations in a first try (although higher precision can be obtained with a larger time interval if the correlation is still of good quality). 23 19 24 20 Select the check box Mask and open the file 'mask_1.png' previously created. … … 27 23 28 24 = Making two masks = 29 The parietal jet requires a very good resolution, particularly among x. To limitate PIV to this jet, let us create a specific mask. 30 Open the previously created contour polygon contour_mask.xml in uvmat by the menu bar '''Projection object/browse...'''. Check the box '''edit''' (tag '''[!CheckEditObject]''') in the frame '''Object''' of uvmat (left hand side) to allow editing of the polygon then replace the lower x bound 0 by 52. Create the corresponding mask by '''Tools/make mask''', save it with name Dalsa1.mask/mask_plume.png. Similarly create a mask for the bulk Dalsa1.mask/mask_bulk.png, with bounds in x [0 55]. 31 25 The parietal jet requires a very good resolution, particularly among ''x''. To limitate PIV to this jet, let us create a specific mask. Open the previously created contour polygon ''contour_mask.xml'' in '''uvmat''' by the menu bar '''Projection object/browse...'''. Check the box '''edit''' (tag '''[!CheckEditObject]''') in the frame '''Object''' of '''uvmat''' (left hand side) to allow editing of the polygon then replace the lower ''x'' bound 0 by 52. Create the corresponding mask by '''Tools/make mask''', save it with name ''Dalsa1.mask/mask_plume.png''. Similarly create a mask for the bulk ''Dalsa1.mask/mask_bulk.png'', with bounds in ''x'' [0 55]. 26 32 27 = PIV on the parietal plume = 33 Open an image of the subfolder Dalsa1.sback (for instance Dalsa1_1_1.png) and in the GUI '''series''', change the same on the bottom '''output !SubDir''' by Dalsa1.sback.civ_bulk.28 Open an image of the subfolder Dalsa1.sback (for instance Dalsa1_1_1.png) and in the GUI '''series''', change the same on the bottom '''output !SubDir''' by ''Dalsa1.sback.civ_bulk''. 34 29 35 30 Choose the following parameters in the GUI '''civ_input''': 31 36 32 * pair j=1-2 for Civ1 and Civ2 : it minimises the time interval which is needed to capture the large velocity in the plume. 37 33 * !CorrBox x,y=(5 31) which optimizes the resolution in x (5 pixels) … … 45 41 Select the pair j=1-3 to deal with the small velocities (considering that the parietal plume has been masked). Then use the default parameters. 46 42 47 = Merging data on a common grid = 48 Create a projection grid in phys coordinates. For that open a velocity field with uvmat, displayed in phys coordinates. Use the upper bar menu option '''Projection object/plane'''. Then in the GUI '''set_object''', choose the option '''!ProjMode=interp_lin'''. Choose a mesh 0.1 cm in each direction, ranging from 0 to 58.8 in x and 0 to 55 in y. Press REFRESH to see the result of projection in the GUI view_field. Check the option '''nb_vec/4''' to reduce the number of vectors displayed on the plot.43 = Merging data on a common grid = 44 Create a projection grid in phys coordinates. For that purpose, open a velocity field of Dalsa1.sback.civ_bulk with uvmat, displayed in phys coordinates. Use the upper bar menu option '''Projection object/plane'''. Then in the GUI '''set_object''', choose the option '''!ProjMode=interp_lin'''. Choose a mesh 0.1 cm in each direction, ranging from 0 to 58.8 in x and 0 to 55 in y. Press '''[REFRESH]''' to see the result of projection in the GUI '''view_field'''. Check the option '''nb_vec/4''' in '''view_field''' to reduce the number of vectors displayed on the plot. 49 45 50 Now in '''series''' open the PIV file Dalsa1.sback.civ_bulk as input. Then append the second file Dalsa1.sback.civ_plume using the menu bar selection '''!Open/Browse append...'''.46 Now in '''series''' open the PIV file ''Dalsa1.sback.civ_bulk'' as input. Then append the second file ''Dalsa1.sback.civ_plume'' using the menu bar selection '''Open/Browse append...'''. 51 47 52 Set '''!FieldTransform''' to 'phys', and select '''Projection Object'''. The plane for projection is then incorporated in '''series'''. 48 Set '''!FieldTransform''' to 'phys', and select '''Projection Object'''. The plane for projection is then incorporated in '''series'''. 53 49 54 It is also advised to introduce masks in the interpolation process so that each field is interpolated in its range of validity. This is done by selecting the option '''Mask'''. Use the browser to fill the table of masks, in accordance with the table of input file series. 50 It is also advised to introduce masks in the interpolation process so that each field is interpolated in its range of validity. This is done by selecting the option '''Mask'''. Use the browser to fill the table of masks, in accordance with the table of input file series. 55 51 56 = Merging data using thin plate shell = 57 The previously used linear interpolation does not provide field derivatives. For that purpose, we proceed as previouisly but use the option '''!ProjMode=interp_tps''' for the projection plane in '''set_object'''. 52 = Merging data using thin plate shell = 53 The previously used linear interpolation does not provide field derivatives. For that purpose, we proceed as previouisly but use the option '''!ProjMode=interp_tps''' for the projection plane in '''set_object'''. 58 54 59 In the GUI '''series''', select simultaneously the fields vec(U,V), curl(U,V) and div(U,V) to get the vorticity and divergence in addition to velocity. The calculation is significantly longer that for interp_lin, so in the demo we use a resolution DX=DY=0.2 cm for the projection plane (instead of 0.1 cm). 55 In the GUI '''series''', select simultaneously the fields vec(U,V), curl(U,V) and div(U,V) to get the vorticity and divergence in addition to velocity. The calculation is significantly longer that for interp_lin, so in the demo we use a resolution DX=DY=0.2 cm for the projection plane (instead of 0.1 cm). 60 56 61 Open the resulting files with uvmat. Select a vector (components U, V) or a scalar curl or div to visualize the different fields. 57 Open the resulting files with uvmat. Select a vector (components U, V) or a scalar curl or div to visualize the different fields.