Applications¶
The following sections provide an overview of the applications distributed as part of the upsp software package.
Running each application with the -h
option will also provide
brief usage instructions to stdout
.
upsp-extract-frames
¶
The upsp-extract-frames
application is a utility to dump high-speed
camera video frames to “friendlier” formats. Video frames can be output
to common image formats (e.g., jpg, png) or video formats (e.g., avi,
mp4).
upsp-external-calibration
¶
The upsp-external-calibration
application locates model targets in
the first frame, then finds the position and orientation of the wind
tunnel model relative to the camera using photogrammetry techniques.
psp_process
¶
The majority of “computational heavy lifting” is performed by the
psp_process
application. Conceptually, the processing is split into
three steps:
Initialization: Video files are opened; first-frame camera calibration parameters are loaded from file; fiducial patching is initialized (see +@sec:fiducial-patching); diagnostic images for each camera are saved; first-frame image-to-grid projections are initialized
Phase 1: For each time step, pixel (“intensity”) data from each camera frame is projected to its corresponding vertex of the model grid. Intensity data from multiple cameras are combined.
Phase 2: The intensity time series at each grid vertex is detrended and converted to a surface pressure measurement, using the provided unsteady gain calibration and the reference steady-state pressure.
For more detail on the algorithms used in each step, please see the uPSP SwDD.
Fiducial Patching¶
In many cases, wind tunnel test models will have surface area not covered by pressure-sensitive paint. Particularly troublesome cases are small regions within larger painted areas, referred to as “fiducials.” Example fiducials could be:
masking tape to protect transducer heads from paint spray (often circular regions around a transducer head)
unpainted points on the model used for wind-on external calibration by
upsp-external-calibration
fasteners used to add/remove portions of test model between runs
oil stains from lubrication of test model articles
While larger regions can be excluded manually from downstream analysis,
these smaller areas are much harder to manually exclude. In this case,
psp_process
can automatically “patch” over known fiducial points on
the model if they are provided in the input tgts
file. The position
and diameter of the fiducial must be supplied; a patch is applied in the
image plane prior to projecting to the model grid, where the patched
pixels are replaced by a 3rd-order, 2D-interpolation of the patch
boundary pixels. For fiducials that are closely-spaced such that their
patches would overlap, one larger patch is applied to the set of
fiducials (to cover use cases such as a shock array of closely-spaced
transducer heads on the model in a streamwise line). Diagnostic images
written out by psp_process
include an example of the patching output
for the first frame from each video file, and can be used to manually
tune the patch algorithm parameters for best performance on a
per-wind-tunnel-test basis.