---
name: "gpiv"
section: "1"
platform: "linux"
package: "gpiv"
version: "0.6.1-2.3"
release: "Debian 8 (Jessie)"
platforms: ["linux"]
url: "https://new.carta.tech/gpiv"
---

# gpiv(1)

Analyzes images obtained from a fluid flow by Particle Image Velocimetry.

## NAME

gpiv - Analyzes images obtained from a fluid flow by Particle Image Velocimetry.

## SYNOPSIS

**gpiv**  \[**-? \| --help**\] \[**--usage**\] \[**--console\_bins** *BINS*\] \[**--console\_tooltips**\] \[**--console\_view\_gpivbuttons**\] \[**--console\_view\_tabulator**\] \[**--display\_background**  *INT*\] \[**--display\_intregs**\] \[**--display\_piv**\] \[**--display\_stretch**\] \[**--display\_scalar**  *INT*\] \[**--display\_vectorscale** *SCALE*\] \[**--display\_view\_menubar**\] \[**--display\_view\_rulers**\] \[**--display\_zoomscale** *SCALE*\] \[**--hdf**\] \[**--img\_fmt**\] \[**--mpi\_nodes\]** **\[-p** \| **--print**\] \[**--process\_imgproc**\] \[**--process\_piv**\] \[**--process\_gradient**\] \[**--process\_resstatst**\] \[**--process\_errvec**\] \[**--process\_peaklock**\] \[**--process\_average**\] \[**--process\_scale**\] \[**--process\_substract**\] \[**--process\_vorstra**\] \[*IMAGE1*, *IMAGE2*, *...*\]

## DESCRIPTION

**Gpiv** *is a Graphic User Interface program for recording and* *analyzing images obtained from a fluid flow that has been seeded with* *tracer particles by the so-called Particle Image Velocimetry (PIV)* *technique. It allows to have a quick overview of the process settings,* *easily changing them, executing the processes, visualizing and* *optimizing their results in an interactive way. The processes that may* *be performed are image recording, interrogation (resulting into PIV* *estimators), validation and post-processing of the PIV estimators.*

*The settings for the PIV processes are subsequently searched in* *~/.gpivrc* or in *gpiv.conf* (system wide), which is provided by libgpiv.

For recording images, **gpiv** recognizes (CCD) cameras that are IIDC-compliant and connected to the Computer with the IEEE1394 or Firewire protocol.

In case **gpiv** will trigger a camera and lasers, it uses a kernel module gpivtrig\_rtl from the gpivtrig package that depends on the Real Time Application Interface (RTAI) and RealTimeLinux. Trigger pulses are send to the parallel port of the Computer (/dev/lpt0 or /dev/lpt1; see the configure script of the gpivtrig package) at bins #1 (camera), #2 and #3 (first and second laser respectively). The program may be started directly if all modules have been loaded or by the gpiv\_control script, also included in the gpivtrig package, which takes care of the loading and unloading of the needed kernel modules. Currently, the trigger system is tested with RTAI-3.1 and the linux kernel-2.4.27.

The parameters and options to be used for **gpiv** are obtained from ~/.gnome2/gpiv or default settings are to be used if absent. The settings may be changed or updated by menu-\>settings-\>preferences. The parameters of **gpiv** (not the PIV process settings) may be overruled by the command line options, as explained below.

When **gpiv** is used on a (Beowulf, distributed memory) cluster, the MPI-parallelised program **gpiv\_rr** from the gpivtools package is invoked using **mpirun**. The **gpiv** program, however, is launched in the normal way, without invoking **mpirun**.

## Options

- **-? \| --help**

  On-line help. Besides the options of **gpiv** it also shows the additional GNOME, GTK and GNOME GUI options.

- **--usage**

  Display a brief usage message.

- **--console\_bins** *BINS*

  Number of bins for histograms of estimators at sub-pixel level, performed by the peaklock process and of the median residues, performed by the errvec process.

- **-t** \| **--console\_tooltips**

  Show tooltips.

- **--console\_view\_gpivbuttons**

  View the **gpiv** buttons of the application.

- **--console\_view\_tabulator**

  View the tabulator of the application containing all PIV process settings.

- **--display\_background** *INT*

  Displaying of background: *INT* = 0: darkblue *INT* = 1: black *INT* = 2: first frame of image *INT* = 3: second frame of image

- **--display\_intregs**

  Enables displaying of interrogation regions.

- **--display\_piv**

  Displaying of PIV data.

- **--display\_stretch**

  Enables automatic stretching of the display when zooming.

- **--display\_scalar** *INT*

  Display derived quantities from PIV data: *INT* = 0: none *INT* = 1: vorticity *INT* = 2: shear strain *INT* = 3: normal strain

- **--display\_view\_menubar**

  Enables displaying of the menubar.

- **--display\_view\_rulers**

  Enables displaying of the ruler.

- **--display\_vectorscale** *SCALE*

  Display vector with index:  *SCALE* = 0: magnification factor = 1,  *SCALE* = 1: magnification factor = 2,  *SCALE* = 2: magnification factor = 4,  *SCALE* = 3: magnification factor = 8,  *SCALE* = 4: magnification factor = 16,  *SCALE* = 5: magnification factor = 32,  *SCALE* = 3: magnification factor = 64,  *SCALE* = 4: magnification factor = 128,  *SCALE* = 5: magnification factor = 256.

- **-z** \| **--display\_zoomscale** *SCALE*

  Display zoom with index:  *SCALE* = 0: magnification factor = 0.5,  *SCALE* = 1: magnification factor = 0.83,  *SCALE* = 2: magnification factor = 1.0,  *SCALE* = 3: magnification factor = 1.3,  *SCALE* = 4: magnification factor = 1.6,  *SCALE* = 5: magnification factor = 2.0.

- **--hdf**

  Save data in HDF5 format with **.gpi** extension.

- **--img\_fmt** *INT*

  store (modified) image data and header in: *INT* = 0: PNG format,  *INT* = 1: raw format,  *INT* = 2: HDF5 format, included with the resulting PIV and post-processing data with **.gpi** extension.

- **--mpi\_nodes** *INT*

  To define the number of nodes when used on a cluster. Used by **mpirun -np** *INT*.

- **-p** \| **--print**

  Print process parameter settings to stdout.

- **--process\_imgproc**

  Includes image processing in the chain-process.

- **--process\_piv**

  Includes piv interrogation in the chain-process.

- **--process\_gradient**

  Includes testing on the displacement gradient within interrogation area in the chain-process.

- **--process\_resstatst**

  Includes calculation of statistics of displacement residuals in the chain-process.

- **--process\_errvec**

  Includes validation on PIV data in the chain-process.

- **--process\_peaklock**

  Includes peak lock in the chain- process.

- **--process\_average**

  Includes calculation of the whole field average PIV displacements in the chain-process.

- **--process\_scale**

  Includes scaling in the chain-process.

- **--process\_subtract**

  Includes substracting of the whole field average PIV displacements in the chain-process.

- **--process\_vorstra**

  Includes calculation of vorticity in the chain-process.

- *IMAGE1*, *IMAGE2*, *...*

  Loads *IMAGE1*, *IMAGE2*, ... from a file or from an URI using the Gnome Virtual File System.  The maximum allowed image dimensions and quantity to be loaded are defined by the program as described in gpiv\_gui.h or by the 'configure' script during the building of **gpiv**.

## SEE ALSO

On-line documentation at http://gpiv.sourceforge.net/gpiv\_doc/index.html or from the help-menu of **gpiv**, gpiv\_control(1) and [gpivtools(1)](/gpivtools/1.md).

## AUTHOR

Gerber Van der Graaf
