tempusSystem Class FpaProcessing
FpaProcessing is part of the WaveTrain system class library

FpaProcessing is used process the output of a focal plane sensor, such as a Camera or a TargetBoard, at runtime; after applying a specified threshold, it computes the centroid, max intensity, on-axis intensity, x, y, and azimuthally averaged slices, power-in-bucket as a function of bucket radius, and, optionally, an n-frame average image every n frames. Of course all of these things could be computed in postprocessing if we stored the individual images, but with FpaProcessing it often becomes unnecessary to store the individual images, greatly reducing the total storage requirements. When running large jobs on a remote device, minimizing the storage used can be crucial.

Note: PIB is output in units of J/m^2; to convert to J it is necessary to multiply by the pixel area of the grid (dx*dy). Bucket radii are dr*(1, 2, ..., nr-1, inf), where dr = min(dx,dy) and nr = ceil(max(|x|,|y|)/dr). The final bucket used for PIB calculations contains all energy falling outside of the largest circle that can fit within the grid; any energy in this bucket indicates that the grid is too small.

Tempus Block Diagram Editor Snapshot
Parameters
nx  int   x dimension of image grid to be used in computation, which need not match grid of input image   
ny  int   y dimension of image grid to be used in computation, which need not match grid of input image   
dx  float   x spacing of image grid to be used in computation (m), which need not match grid of input image   
dy  float   y spacing of image grid to be used in computation (m), which need not match grid of input image   
relativeThreshold  float   Relative threshold, expressed as a fraction of the maximum value in the image.   
typeOfThreshold  int   Type of threshold: 1 = subtract, then set negative values to zero. 2 = set values below the threshold to zero.   
n_per_average  int   Number of frames (consecutive images) to use in computing average image (0 means don't compute average image)   0
Inputs
image  Grid<float>   Input image   
Outputs
xc  float   x centroid (m)   
yc  float   y centroid (m)   
onAxisIntensity  float   On axis intensity (value of image at origin)   
maxIntensity  float   Maximum intensity (maximum value of image)   
xavg  Vector<float>   Average slice through image in the x direction (averaged over y)   
yavg  Vector<float>   Average slice through image in the y direction (averaged over x)   
ravg  Vector<float>   Average radial slice through image (averaged over slice angle)   
pib  Vector<float>   Integrated power in the bucket, as a function of bucket radius (J/m^2)   
averageImage  Grid<float>   The average of the first n images, the second n images, and so forth, where n = n_per_average (a parameter)   
Subsystems


Last Saved: Thu Feb 21 12:37:52 MST 2008 by TVE version 2007B