Next: Cleaning the Clump Edges
Up: Reinhold
Previous: Reinhold
The initial identification of the edges is done by considering a set of
1-dimensional profiles through the data array. Each such profile can be
represented by a plot of data value against distance (in pixels) along the
profile. For each such profile, the algorithm proceeds as follows.
- Find the highest remaining (i.e. unused) data value in the profile.
- If this value is less than a specified background level (given by
the configuration parameter Reinhold.Noise), then there are no
remaining significant peaks in the profile so continue with the next
profile.
- Work out away from the peak position along the profile in both directions
to find the edges of the peak. A peak ends when it either i) meets a
pixel which has already been included within another peak, or ii) two
adjacent pixels are both below the background level, or iii) the average
gradient of the profile over three adjacent pixel drops below a minimum
value specified by the configuration parameter Reinhold.FlatSlope,
or iv) the end of the profile is reached.
- If the peak was not truncated by reaching either end of the profile,
and if the peak spans sufficient pixels, the positions of the two edges of
the peak are marked in a mask array which is the same shape and size as the
2D or 3D data array. The minimum number of pixels spanned by a peak in
order for the peak to be usable is given by the configuration parameter
Reinhold.MinPix.
- The position of the peak itself is also marked so long as its peak
value is above a specified minimum value (given by configuration parameter
Reinhold.Thresh).
- The pixels within the 1D profile which fall between the upper and
lower edges of the peak are marked as ``used'', and the algorithm loops
back to the start (i.e. step 1 above).
This algorithm is applied to each 1D profile in turn. These profiles
are divided into groups of parallel profiles; the first group contains
profiles which are parallel to the first pixel axis, the second group
contains profiles which are parallel to the second pixel axis, etc.
There are also groups which contain parallel profiles which proceed diagonally
through the data array. Thus there is a group of parallel profiles for every
pixel axis and for every possible diagonal direction. Within each group,
there are sufficient profiles to ensure that every element in the data
array is included in a profile within the group.
Once all profiles have been processed, a 2 or 3D array is available that
identifies both the edges of the peaks and also the peak positions
themselves. Pixels which are flagged as peaks are only retained if the
pixel was found to be a peak in every profile group. That is, pixels
which appear as a peak when profiled in one direction but not when
profiled in another are discarded.
Next: Cleaning the Clump Edges
Up: Reinhold
Previous: Reinhold
CUPID
Starlink User Note 255
D.S. Berry
19th March 2008
E-mail:ussc@star.rl.ac.uk
Copyright © 2008 Science and Technology Facilities Council