After digitization of the Schmidt plate
material on the GAMMA scanning machines
, each plate scan is processed through an image processing pipeline.
The scan is divided into a grid with cells
0.5mm in size, and the density histograms are accumulated for each
cell. Within each cell, pixel statistics are accumulated, including
the mean and rms values. The computation of the SKY image is performed
by taking the median values of each cell and then running a sequence
of median filters at different scales (8,4,2,1 cells) to smooth
out the image over these scales. The mean and rms of this smoothed
image is then computed.
this smoothed image is the computed sky background, in an attempt
to avoid processing the "Bad" edges of the plate and
the label and sensitometer areas, the edges of the sky image
are examined for areas which the data is more than
5 sigma away from the mean sky are set negative. This is a flag
for the Object Detection program to avoid processing.
A single value of sigma is calculated for
the whole plate by taking the mode of the histogram distribution
of sigma values over cells in the plate. The cell sigmas are not
used directly, because these sigmas are calculated from every pixel
in the cell, and contain stars which make the sigma calculation
too high. Instead, the sigma calculation for each cell is found
by taking the slope of the cumulative histogram of pixel values
in the cell at the 50% level. Pixels at this level are nearly all
sky, and if the sky noise behaves as a gaussian, the slope of the
cumulative pixel histogram is 1 / ((2*PI)**(1/2)*sigma) which can
be used to find sigma for the individual cells. The final plate
sigma is then found from the mode of the histogram of the individual
cell sigmas. This is a good approximation for sigma over the whole
plate from the unsmoothed sky using all pixels in the plate. Bad
plate areas are excluded from this sigma calculation.
This task uses an implementation of the ROE
COSMOS image processing software (developed by R. K. Lutz and B.
D. Kelly, with some modifications introduced in 1981-1983 by B.
Lasker and K. Chaudhry) which connects a minimum number of pixels
that are brighter than a threshold level above sky. Once an object
has been completed, its size, integrated density and moments are
computed from which parameters such as x,y and shape are calculated.
The threshold level for object detection was
set at 3 sigma above sky. A single value of sigma was used for the
entire plate, as described above. Fifteen additional thresholds,
equally spaced (in density space) between the detection threshold
and the saturation level, were also defined, and object areas were
determined at each of these thresholds as well.
small image "cutout" was extracted
and saved around each detected object, with ample margins to include
the wings of extended objects. All further image processing was
performed on these cutout images, rather than the full scan image.
The maximum cutout extracted was 4.25' x 4.25', so if a detected
object was larger than this, it received no further processing (deblending,
centroiding, etc). This results in a small number of "holes" in
the GSC2 catalog around the brightest stars, galaxies, and the
occasional very bright satellite trail.
This is based upon the published (Beard, MacGillivray,
and Thanisch 1090 MNRAS, 247, 311-321) ROE COSMOS deblender algorithm.
Objects are separated by looking for segmentation at upper thresholds
and using a gaussian fit to the slope to assign fractional pixels
to each object. The deblender uses the same thresholds as the object
detection task, but uses a single local sky value that was recorded
by the object detector.
After finding multiple objects in a cutout,
the deblender apportions the original image intensity at each cutout
pixel according to the appropriate strength from each newly found
object. Thus each new object has its own intensity at every pixel
in the original cutout image. Once an object has been completed,
its size, integrated density and moments are computed from which
parameters such as x,y and shape are calculated.
The centroider performs a fit to the cutout
image with a circular or elliptical gaussian to find the object's
center. The routine normalizes the image, and starts the iteration
sequence using the barycenter position as a starting point and assuming
a flat sky. The centroider returns the amplitude, x, y, and sigma
of the gaussian (x, y, and xy sigmas for an elliptical fit), and
the x slope, y slope, and constant of the fitted background.
images occurring in the same cutout require special handling.
First, an attempt is made to perform a
simultaneous fit to all objects in the deblended "family".
If this fails to converge, each deblended component is run individually
through the single centroider, after applying the fractional pixel
allocation determined by the deblender.
If the centroider failed to converge on an
object after a reasonable number of iterations, or if the centroider
failed for some other reason, only the barycenter position determined
from object detection or deblending was used in calibration. If
the object had been classified
as a plate defect, which has a very low chance of convergence, the
centroider was not attempted. For objects that occurred in very
large cutouts (for example, small stars in the vicinity of a bright
star), the centroider was also omitted, due to resource constraints.
Additional image processing was performed
to compute features used in classification. Two types of features
are computed: spike parameters and texture parameters.
Bright point sources on Schmidt plates display
diffraction spikes. These were used to good effect in GSC1 for star/nonstar
discrimination in the brighter magnitude ranges. Spike parameters
are computed by comparing the gradient of the image along the spike,
which should be weak, with the gradient along the thin dimension
of the spike, which should be strong.
Texture parameters are computed based on the
co-occurrence matrix for the object cutout (with fractional pixel
allocation applied in the case of deblended objects). Once the matrix
has been calculated, the entropy, contrast, and 2nd order angular
moment are computed based on this matrix. See Malagnini, 1983, SCMA,
for further details.