next up previous 274
Next: MAKECLUMPS - Create simulated data containing clumps and noise
Up: Description of the CUPID applications
Previous: FINDBACK - Estimate the background in an NDF by removing small scale structure


FINDCLUMPS - Identify clumps of emission within a 1, 2 or 3 dimensional NDF

Description:
This application identifies clumps of emission within a 1, 2 or 3 dimensional NDF. It is assumed that any background has already been removed from the data array (for instance, using CUPID:FINDBACK). Information about the clumps is returned in several different ways:

  • A pixel mask identifying pixels as background, clump or edge pixels is written to the Quality array of each output NDF (see parameters OUT and QOUT). Three quality bits will be used; one is set if and only if the pixel is contained within one or more clumps, another is set if and only if the pixel is not contained within any clump, and the other is set if and only if the pixel is in a clump but on the edge of the clump (i.e. has one or more neighbouring pixels that are not inside a clump). These three quality bits have names associated with them which can be used with the KAPPA applications SETQUAL, QUALTOBAD, REMQUAL, SHOWQUAL. The names used are "CLUMP", "BACKGROUND" and "EDGE". For instance, to overlay the outline of a set of 2D clumps held in NDF "fred" on a previously displayed 2D image, do "qualtobad fred fred2 background" followed by "contour noclear mode=good fred2".

  • Information about each clump, including a minimal cut-out image of the clump and the clump parameters, is written to the CUPID extension of the output NDF (see the section "Use of CUPID Extension" below).

  • An output catalogue containing clump parameters can be created (see parameter OUTCAT).


The algorithm used to identify the clumps (GaussCLumps, ClumpFind, etc) can be specified (see parameter METHOD).

Usage:
findclumps in out outcat method

Parameters:

BACKOFF = _LOGICAL (Read)
If TRUE, the background level in each clump is removed from the clump data values before calculating the reported clump sizes and centroid position (the background level used is the minimum data value in the clump). If FALSE, the full data values, including background, are used when calculating the clump sizes and centroid position.

If BACKOFF is FALSE, a clump that sits on a high background level will have a larger reported width than an identical clump sitting on a lower background level. The position of the centroid may also be affected by the background level. This is usually undesirable, and so the default value for BACKOFF is usually TRUE. The main reason you may want to set BACKOFF to FALSE is if you want to compare clump properties found by FINDCLUMPS with those found by the IDL version of CLUMPFIND (which includes the background in its calculations). For this reason, the dynamic default value got BACKOFF is TRUE, unless METHOD is "ClumpFind" and the ClumpFind.IDLAlg configuration parameter is non-zero, in which case the dynamic default for BACKOFF is FALSE.

Note, the other reported clump properties such as total data value, peak data value, etc, are always based on the full clump data values, including background. []

CONFIG = GROUP (Read)
Specifies values for the configuration parameters used by the clump finding algorithms. If the string "def" (case-insensitive) or a null (!) value is supplied, a set of default configuration parameter values will be used.

The supplied value should be either a comma-separated list of strings or the name of a text file preceded by an up-arrow character "$\wedge$", containing one or more comma-separated list of strings. Each string is either a "keyword=value" setting, or the name of a text file preceded by an up-arrow character "$\wedge$". Such text files should contain further comma-separated lists which will be read and interpreted in the same manner (any blank lines or lines beginning with "#" are ignored). Within a text file, newlines can be used as delimiters as well as commas. Settings are applied in the order in which they occur within the list, with later settings over-riding any earlier settings given for the same keyword.

Each individual setting should be of the form:

$<$keyword$>$=$<$value$>$

where $<$keyword$>$ has the form "algorithm.param"; that is, the name of the algorithm, followed by a dot, followed by the name of the parameter to be set. If the algorithm name is omitted, the current algorithm given by parameter METHOD is assumed. The parameters available for each algorithm are listed in the "Configuration Parameters" sections below. Default values will be used for any unspecified parameters. Unrecognised options are ignored (that is, no error is reported). [current value]

DECONV = _LOGICAL (Read)
Determines if the clump properties stored in the output catalogue and NDF extension should be corrected to remove the effect of the instrumental beam width specified by the FwhmBeam and VeloRes configuration parameters. If TRUE, the clump sizes will be reduced and the peak values increased to take account of the smoothing introduced by the beam width. If FALSE, the undeconvolved values are stored in the output catalogue and NDF. Note, the filter to remove clumps smaller than the beam width is still applied, even if DECONV is FALSE. [TRUE]
ILEVEL = _INTEGER (Read)
Controls the amount of diagnostic information reported. It should be in the range 0 to 6. A value of zero will suppress all screen output. Larger values give more information (the precise information displayed depends on the algorithm being used). Note, this screen output describes the progress of the specific clump finding algorithm selected using the METHOD parameter, and therefore clump parameters such as clump size, etc, will be displayed using the definition most natural to the chosen algorithm. These definitions may not be the same as those used to create the output catalogue, since the output catalogue contains standardised columns chosen to allow comparison between different algorithms. For instance, the clump sizes displayed on the screen by the GaussClumps algorithm will be FWHM in pixels, but the clump sizes stored in the output catalogue are the RMS deviation of each pixel centre from the clump centroid, weighted by the corresponding pixel data value. [1]
IN = NDF (Read)
The 1, 2 or 3 dimensional NDF to be analysed.
LOGFILE = LITERAL (Read)
The name of a text log file to create. If a null (!) value is supplied, no log file is created. [!]
METHOD = LITERAL (Read)
The algorithm to use. Each algorithm is described in more detail in the "Algorithms:" section below. Can be one of:

  • GaussClumps

  • ClumpFind

  • Reinhold

  • FellWalker


Each algorithm has a collection of extra tuning values which are set via the CONFIG parameter. [current value]
NCLUMPS = _INTEGER (Write)
The total number of clumps descrriptions stored within the output NDF (and catalogue).
OUT = NDF (Write)
The output NDF which has the same shape and size as the input NDF. Information about the identified clumps and the configuration parameters used will be stored in the CUPID extension of this NDF. See "Use of CUPID Extension" below for further details about the information stored in the CUPID extension. Other applications within the CUPID package can be used to display this information in various ways. The information written to the DATA array of this NDF depends on the value of the METHOD parameter. If METHOD is GaussClumps, the output NDF receives the sum of all the fitted Gaussian clump models including a global background level chosen to make the mean output value equal to the mean input value. If METHOD is ClumpFind, FellWalker or Reinhold, each pixel in the output is the integer index of the clump to which the pixel has been assigned. Bad values are stored for pixels which are not part of any clump. The output NDF will inherit the AXIS and WCS components (plus any extensions) from the input NDF.
OUTCAT = FILENAME (Write)
An optional output catalogue in which to store the clump parameters. No catalogue will be produced if a null (!) value is supplied. The following columns are included in the output catalogue:

  • Peak1: The position of the clump peak value on axis 1.

  • Peak2: The position of the clump peak value on axis 2.

  • Peak3: The position of the clump peak value on axis 3.

  • Cen1: The position of the clump centroid on axis 1.

  • Cen2: The position of the clump centroid on axis 2.

  • Cen3: The position of the clump centroid on axis 3.

  • Size1: The size of the clump along pixel axis 1.

  • Size2: The size of the clump along pixel axis 2.

  • Size3: The size of the clump along pixel axis 3.

  • Sum: The total data sum in the clump.

  • Peak: The peak value in the clump.

  • Volume: The total number of pixels falling within the clump.


The coordinate system used to describe the peak and centroid positions is determined by the value supplied for parameter WCSPAR. If WCSPAR is FALSE, then positions are specified in the pixel coordinate system of the input NDF. In addition, the clump sizes are specified in units of pixels, and the clump volume is specified in units of cubic pixels (square pixels for 2D data). If WCSPAR is TRUE, then positions are specified in the current coordinate system of the input NDF. In addition, the clump sizes and volumes are specified in WCS units. Note, the sizes are still measured parallel to the pixel axes, but are recorded in WCS units rather than pixel units. Celestial coordinate positions are units of degrees, sizes are in units are arc-seconds, and areas in square arc-seconds. Spectral coordinates are in the units displayed by the KAPPA command "ndftrace".

If the data has less than 3 pixel axes, then the columns describing the missing axes will not be present in the catalogue.

The catalogue inherits any WCS information from the input NDF.

The "size" of the clump on an axis is the RMS deviation of each pixel centre from the clump centroid, where each pixel is weighted by the corresponding pixel data value (optionally with the background removed - see parameter BACKOFF). If parameter DECONV is set TRUE, the values stored for "Size..." and "Peak" are corrected to take account of the smoothing introduced by the instrumental beam. These corrections reduced the "size..." values and increase the peak value. Beam sizes are specified by configuration parameters FWHMBeam and VeloRes.

For the GaussClump algorithm, the Sum and Volume values refer to the part of the Gaussian within the level defined by the GaussClump.ModelLim configuration parameter.

The values used for configuration parameters and ADAM parameters are written to the history information of the output catalogue.

The KAPPA command "listshow" can be used to draw markers at the central positions of the clumps described in a catalogue. For instance, the command "listshow fred plot=mark" will draw markers identifying the positions of the clumps described in file fred.FIT, overlaying the markers on top of the currently displayed image. [!]

PERSPECTRUM = _LOGICAL (Read)
This parameter is ignored unless the supplied input NDF is 3-dimensional and includes a spectral axis. If so, then a TRUE value for PERSPECTRUM will cause all spectra within the supplied cube to be processed independenly of the neighbouring spectra. That is, each identified clump will contain pixels from only a single input spectrum. If a clump extends across multiple spectra, then it will be split up into multiple clumps, one for each spectrum. Currently, this parameter can only be used with the FellWalker and ClumpFind methods. A value of FALSE is always used for other methods. [FALSE]
QOUT = NDF (Write)
An optional output NDF that is a copy of the input NDF, except that any Quality component in the input NDF is discarded and a new one created. The new Quality component defines 3 flags that indicate if each pixel is inside a clump, on the edge of a clump or outside all clumps. If a null (!) value is supplied, no NDF is created. [!]
REPCONF = _LOGICAL (Read)
If a TRUE value is supplied, then the configuration parameters supplied by the CONFIG parameter will be listed to standard output. [current value]
RMS = _DOUBLE (Read)
Specifies a value to use as the global RMS noise level in the supplied data array. The suggested default value is the square root of the mean of the values in the input NDF's Variance component. If the NDF has no Variance component, the suggested default is based on the differences between neighbouring pixel values. Any pixel-to-pixel correlation in the noise can result in this estimate being too low. The value supplied for this parameter will be ignored if the RMS noise level is also given in the configuration file specified by parameter CONFIG.
WCSPAR = _LOGICAL (Read)
If a TRUE value is supplied, then the clump parameters stored in the output catalogue and in the CUPID extension of the output NDF, are stored in WCS units, as defined by the current coordinate frame in the WCS component of the input NDF (this can be inspected using the KAPPA:WCSFRAME command). For instance, if the current coordinate system in the 3D input NDF is (RA,Dec,freq), then the catalogue columns that hold the clump peak and centroid positions will use this same coordinate system. The spatial clump sizes will be stored in arc-seconds, and the spectral clump size will be stored in the unit of frequency used by the NDF (Hz, GHz, etc). If a FALSE value is supplied for this parameter, the clump parameters are stored in units of pixels within the pixel coordinate system of the input NDF. The dynamic default for this parameter is TRUE if the current coordinate system in the input NDF represents celestial longitude and latitude in some system, plus a recogonised spectral axis (if the input NDF is 3D). Otherwise, the dynamic default is FALSE. []

Use of CUPID Extension
This application will create an NDF extension called "CUPID" in the output NDF and will add the following components to it:


contour noclear "fred2.more.cupid.clumps(9).model" mode=good labpos=$\backslash$!


Algorithms

GaussClumps Configuration Parameters
The GaussClumps algorithm uses the following configuration parameters. Values for these parameters can be specified using the CONFIG parameter. Default values are shown in square brackets:


ClumpFind Configuration Parameters
The ClumpFind algorithm uses the following configuration parameters. Values for these parameters can be specified using the CONFIG parameter. Default values are shown in square brackets:


Reinhold Configuration Parameters
The Reinhold algorithm uses the following configuration parameters. Values for these parameters can be specified using the CONFIG parameter. Default values are shown in square brackets:


FellWalker Configuration Parameters
The FellWalker algorithm uses the following configuration parameters. Values for these parameters can be specified using the CONFIG parameter. Default values are shown in square brackets:




next up previous 274
Next: MAKECLUMPS - Create simulated data containing clumps and noise
Up: Description of the CUPID applications
Previous: FINDBACK - Estimate the background in an NDF by removing small scale structure

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