Main Page | Files | Data Structures | Functions | Global Variables |

include/gpiv/gpiv-piv.h File Reference

module for PIV image evaluation More...

#include <gpiv/gpiv-piv_par.h>
#include <gpiv/gpiv-valid_par.h>
Include dependency graph for gpiv-piv.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  __GpivCovariance
 Covariance data. More...

Defines

#define __LIBGPIV_PIVL_H__
#define GPIV_ZEROPAD_FACT   2
 magnification factor of zero-padded int. area
#define GPIV_DIFF_ISI   0
 difference between interrogation sizes of first and second image if zero offset has been used
#define GPIV_CUM_RESIDU_MIN   0.25
 minimum cumulative residu for convergence
#define GPIV_MAX_PIV_SWEEP   10
 maximum number of PIV evaluation sweeps, starting from zero
#define GPIV_SNR_DISABLE   88.0
 snr value for manually disabled estimator
#define GPIV_DEFORMED_IMG_NAME   "gpiv_defimg"
 Deformed image to be stored in TMP_DIR.
#define GPIV_LOGFILE   "gpiv.log"
 Log file to be stored in TMP_DIR.
#define CMPR_FACT   2
 Image compression factor for speeding up the evaluation.
#define GPIV_SHIFT_FACTOR   3
 For initial grid, apply int_shift = int_size_i / GPIV_SHIFT_FACTOR.

Typedefs

typedef struct __GpivCovariance GpivCov

Enumerations

enum  GpivIFit { GPIV_NONE = 0, GPIV_GAUSS = 1, GPIV_POWER = 2, GPIV_GRAVITY = 3 }
 

Type of sub-pixel estimation.

More...
enum  GpivIntGeo { GPIV_AOI = 0, GPIV_LINE_C = 1, GPIV_LINE_R = 2, GPIV_POINT = 3 }
 

Interrogation geometry.

More...

Functions

gchar * gpiv_piv_count_pivdata_fromimage (const GpivImagePar *image_par, const GpivPivPar *piv_par, guint *nx, guint *ny)
 Calculates the number of interrogation areas from the image sizes, pre-shift and area of interest.
GpivPivDatagpiv_piv_interrogate_img (const GpivImage *image, const GpivPivPar *piv_par, const GpivValidPar *valid_par, const gboolean verbose)
 PIV interrogation of an image pair at an entire grid.
gchar * gpiv_piv_interrogate_ia (const guint index_y, const guint index_x, const GpivImage *image, const GpivPivPar *piv_par, const guint sweep, const guint last_sweep, gfloat **int_area_1, gfloat **int_area_2, GpivCov *cov, GpivPivData *piv_data)
 Interrogates a single Interrogation Area.
void gpiv_piv_isizadapt (const GpivPivPar *piv_par_src, GpivPivPar *piv_par_dest, gboolean *isiz_last)
 Adjusts interrogation area sizes.
gchar * gpiv_piv_write_deformed_image (GpivImage *image)
 Stores deformed image to file system with pre defined name to TMPDIR and prints message to stdout.
void gpiv_fread_fftw_wisdom (const gint dir)
 Reads fftw wisdoms from file and stores into a (public) string.
void gpiv_fwrite_fftw_wisdom (const gint dir)
 Writes fftw wisdoms to a file.
gchar * gpiv_piv_dxdy_at_new_grid (const GpivPivData *piv_data_src, GpivPivData *piv_data_dest)
 Calculates dx, dy of piv_data_dest from piv_data_src by bi-linear interpolation of inner points with shifted knots or extrapolation of outer lying points.
gchar * gpiv_piv_shift_grid (GpivPivData *piv_data)
 Shifts the knots of a 2-dimensional grid containing PIV data for improved (bi-linear) interpolation.
GpivPivDatagpiv_piv_gridgen (const guint nx, const guint ny, const GpivImagePar *image_par, const GpivPivPar *piv_par)
 Generates grid by Calculating the positions of interrogation areas.
GpivPivDatagpiv_piv_gridadapt (const GpivImagePar *image_par, const GpivPivPar *piv_par_src, GpivPivPar *piv_par_dest, const GpivPivData *piv_data, const guint sweep, gboolean *grid_last)
 Adjust grid nodes if zero_off or adaptive interrogation area has been used.

Detailed Description

module for PIV image evaluation

SOURCES: lib/piv.c

LAST MODIFICATION DATE:

Id
gpiv-piv.h,v 1.2 2008-04-09 06:10:28 gerber Exp

Definition in file gpiv-piv.h.


Define Documentation

#define __LIBGPIV_PIVL_H__

Definition at line 56 of file gpiv-piv.h.

#define CMPR_FACT   2

Image compression factor for speeding up the evaluation.

Definition at line 76 of file gpiv-piv.h.

#define GPIV_CUM_RESIDU_MIN   0.25

minimum cumulative residu for convergence

Definition at line 68 of file gpiv-piv.h.

#define GPIV_DEFORMED_IMG_NAME   "gpiv_defimg"

Deformed image to be stored in TMP_DIR.

Definition at line 72 of file gpiv-piv.h.

#define GPIV_DIFF_ISI   0

difference between interrogation sizes of first and second image if zero offset has been used

Definition at line 65 of file gpiv-piv.h.

#define GPIV_LOGFILE   "gpiv.log"

Log file to be stored in TMP_DIR.

Definition at line 73 of file gpiv-piv.h.

#define GPIV_MAX_PIV_SWEEP   10

maximum number of PIV evaluation sweeps, starting from zero

Definition at line 69 of file gpiv-piv.h.

#define GPIV_SHIFT_FACTOR   3

For initial grid, apply int_shift = int_size_i / GPIV_SHIFT_FACTOR.

Definition at line 78 of file gpiv-piv.h.

#define GPIV_SNR_DISABLE   88.0

snr value for manually disabled estimator

Definition at line 71 of file gpiv-piv.h.

#define GPIV_ZEROPAD_FACT   2

magnification factor of zero-padded int. area

Definition at line 64 of file gpiv-piv.h.


Typedef Documentation

typedef struct __GpivCovariance GpivCov

Definition at line 107 of file gpiv-piv.h.


Enumeration Type Documentation

enum GpivIFit

Type of sub-pixel estimation.

Enumerator:
GPIV_NONE 

No fitting.

GPIV_GAUSS 

Gauss fitting.

GPIV_POWER 

Power fitting.

GPIV_GRAVITY 

Plain gravity fitting.

Definition at line 86 of file gpiv-piv.h.

enum GpivIntGeo

Interrogation geometry.

Enumerator:
GPIV_AOI 

Area of interst.

GPIV_LINE_C 

Along column line.

GPIV_LINE_R 

Along row line.

GPIV_POINT 

At single point.

Definition at line 98 of file gpiv-piv.h.


Function Documentation

void gpiv_fread_fftw_wisdom ( const gint  dir  ) 

Reads fftw wisdoms from file and stores into a (public) string.

Parameters:
[in] dir direction of fft; forward (+1) or inverse (-1)
Returns:
void
void gpiv_fwrite_fftw_wisdom ( const gint  dir  ) 

Writes fftw wisdoms to a file.

Parameters:
[in] dir direction of fft; forward (+1) or inverse (-1)
Returns:
void
gchar* gpiv_piv_count_pivdata_fromimage ( const GpivImagePar image_par,
const GpivPivPar piv_par,
guint *  nx,
guint *  ny 
)

Calculates the number of interrogation areas from the image sizes, pre-shift and area of interest.

Parameters:
[in] image_par structure of image parameters
[in] piv_par structure of piv evaluation parameters
[out] nx number of columns (second array index)
[out] ny number of rows (first array index)
Returns:
NULL on success or error message on failure
gchar* gpiv_piv_dxdy_at_new_grid ( const GpivPivData piv_data_src,
GpivPivData piv_data_dest 
)

Calculates dx, dy of piv_data_dest from piv_data_src by bi-linear interpolation of inner points with shifted knots or extrapolation of outer lying points.

Parameters:
[in] piv_data_src input piv data
[out] piv_data_dest output piv data
Returns:
NULL on success or *err_msg on failure
GpivPivData* gpiv_piv_gridadapt ( const GpivImagePar image_par,
const GpivPivPar piv_par_src,
GpivPivPar piv_par_dest,
const GpivPivData piv_data,
const guint  sweep,
gboolean *  grid_last 
)

Adjust grid nodes if zero_off or adaptive interrogation area has been used.

This is performed by modifying int_shift equal to int_shift / GPIV_SHIFT_FACTOR, until it reaches (src) int_shift. Then, grid_last is set TRUE, which will avoid changing the interrogation shift in next calls and signal the (while loop in) the calling function.

Parameters:
[in] image_par image parameters
[in] piv_par_src piv evaluation parameters
[in] piv_data input PIV data
[in] sweep interrogation sweep step
[out] piv_par_dest modified piv evaluation parameters
[out] grid_last flag if final grid refinement has been
Returns:
piv_data or NULL on failure
GpivPivData* gpiv_piv_gridgen ( const guint  nx,
const guint  ny,
const GpivImagePar image_par,
const GpivPivPar piv_par 
)

Generates grid by Calculating the positions of interrogation areas.

Parameters:
[in] nx number of horizontal grid points
[in] ny number of vertical grid points
[in] image_par structure of image parameters
[in] piv_par structure of piv evaluation parameters
Returns:
piv_data or NULL on failure
gchar* gpiv_piv_interrogate_ia ( const guint  index_y,
const guint  index_x,
const GpivImage image,
const GpivPivPar piv_par,
const guint  sweep,
const guint  last_sweep,
gfloat **  int_area_1,
gfloat **  int_area_2,
GpivCov cov,
GpivPivData piv_data 
)

Interrogates a single Interrogation Area.

Parameters:
[in] index_y y-index of interrogation area position
[in] index_x x-index of interrogation area position
[in] image structure of image
[in] piv_par structure of piv evaluation parameters
[in] sweep sweep number of iterative process
[in] last_sweep flag for last sweep
[in] int_area_1 first interrogation area
[in] int_area_2 second interrogation area
[out] cov structure containing covariance data
[out] piv_data modified piv data at [index_y][index_x] from interrogation
Returns:
NULL on success or error message on failure
GpivPivData* gpiv_piv_interrogate_img ( const GpivImage image,
const GpivPivPar piv_par,
const GpivValidPar valid_par,
const gboolean  verbose 
)

PIV interrogation of an image pair at an entire grid.

Parameters:
[in] image image containing data and header info
[in] piv_par image interrogation parameters
[in] valid_par PIV data validation parameters
[out] verbose prints progress of interrogation to stdout
Returns:
GpivPivData containing PIV estimators on success or NULL on failure
void gpiv_piv_isizadapt ( const GpivPivPar piv_par_src,
GpivPivPar piv_par_dest,
gboolean *  isiz_last 
)

Adjusts interrogation area sizes.

For each interrogation sweep, (dest) int_size_i is halved, until it reaches (src) int_size_f. Then, isiz_last is set TRUE, which will avoid changing the interrogation sizes in next calls.

Parameters:
[in] piv_par_src original parameters
[out] piv_par_dest actual parameters, to be modified during sweeps
[out] isiz_last flag for last interrogation sweep
Returns:
void
gchar* gpiv_piv_shift_grid ( GpivPivData piv_data  ) 

Shifts the knots of a 2-dimensional grid containing PIV data for improved (bi-linear) interpolation.

See: T. Blu, P. Thevenaz, "Linear Interpolation Revitalized", IEEE Trans. in Image Processing, vol13, no 5, May 2004

Parameters:
[in] piv_data piv data that will be shifted in-place
Returns:
NULL on success or error message on failure
gchar* gpiv_piv_write_deformed_image ( GpivImage image  ) 

Stores deformed image to file system with pre defined name to TMPDIR and prints message to stdout.

Parameters:
[in] image image containing header and image data frames
Returns:
NULL on success or error message on failure

Generated on Sat Mar 6 08:53:44 2010 for libgpiv-0.6.1 by doxygen 1.6.2