Last Updated Jan 2001
Copyright
© 2001 The Association of Universities for Research in Astronomy, Inc.
All Rights Reserved.
|
Purpose :
Find the center of the objects stored in a CIM files.
Procedure :
This routine refuse the objects whit one of this caracteristics:
- Position of the maximum out of x_boxsize or y_boxsize
defined from cim image. (This happen if the cutout was runned in a big
object and the cutout take only a part of it)
- Classification code defferent from that specified
with the option /CLASS_TYPE=a.
- Dimension of the cutout bigger than max_size,
where max_size is 512x512 matrix.
The total number of objects refused is reported in the
DID file. This routine performs a fit to the cutout images with a bidimensional
circular gaussian or with a bidimensional elliptical gaussian to find the
object center. The routine takes the object cutout stored in the cim file,
normalizes the image, and starts the iterations sequence using, as starting
point, the baricenter position. The parameters passed to the fit routine
(GNTICK) are CENT_TYPE dependent; we have:
- centroider_params(1)=(image_max-bzero)/bscale
!amplitude of gaussian
- centroider_params(2)=oop.x_position-cih.lx+1.5
!x position on the cutout
- centroider_params(3)=oop.y_position-cih.ly+1.5
!y position on the cutout
- Circular Gaussian
- number_parameters=7
- centroider_params(4)=sqrt((oop.uf_xx+oop.uf_yy)/2.0)
!sigma of circular gaussian
- Elliptical Gaussian
- number_parameters=9
- centroider_params(4)=sqrt(oop.uf_xx) !sigma_x
of ellipltical gaussian
- centroider_params(5)=sqrt(oop.uf_yy) !sigma_y
of ellipltical gaussian
- centroider_params(6)=oop.uf_xy /(sqrt(oop.uf_xx)*sqrt(oop.uf_yy))
!Correlation coefficent
- ENDIF
- centroider_params(number_parameters-2)=0.001
!background plane x coefficient
- centroider_params(number_parameters-1)=0.001
!background plane y coefficient
- centroider_params(number_parameters-0)=(skyc-bzero)/bscale
!background plane constant
GNTICK stops when one of the following controls are
satisfied:
- Number of iterations > centroider_option(1)
(=NUM_IT_MAX)
- [In this case centroider_error=-1]
- Difference on the parameters (step i+1 - step
i)
- [In this case centroider_error=see Output Effects]
Somthing is wrong with the current estimate of
one (or more) of the parameters (es. negative sigma, negative intensity
at peak ...)
- [In this case centroider_error=-2]
Output Effects :
This routine writes out only those quantites newly
calcolated or upgrated to pre-existing oop file or to the cen file. These
potentially affected variables are (using the oop structure):
Record Num.
| Name
| Comment
|
19
| proc_info_flags
| XXXXXXXXXn
|
60
| x_cen
| X centroid (pixel unit)
|
61
| y_cen
| Y centroid (pixel unit)
|
62
| x_epsilon
| X error (pixel unit)
|
63
| y_epsilon
| Y error (pixel unit)
|
64
| chi_squared
| sigma 0 centroider error fit
|
65
| x_sigma
| sigma on X direction
|
66
| y_sigma
| sigma on Y direction (only for elliptical
centroider)
|
67
| pos_angle
| correlation coefficent (only for elliptical
centroider)
|
68
| cen_iterations
| Iteration number or flag (0,-1,-2,-3)
|
69
| cen_local_sky
| Local sky recomputed from the centroider fit
using a slating plane
|
70
| cen_int_density
| Integrated density recomputed from the fit
|
Calling Sequence :
- CENTROIDER_SINGLE imagefile
- [/XRANGE=(lx,ux)]
- {default entire plate}
- [/YRANGE=(lx,ux)]
- {default entire plate}
- [/CLASS_TYPE=n] Type of object where run the
Centroider {def=1}
- {def = 0 --> Stars}
- { 1 --> Galaxies}
- [/ALL_CLASS] Run the centroider on all objects,
don't take in account the qualifier /CLASS_TYPE=n
- {def = False}
- [/CENT_TYPE=a] Type of centroider
- {def=CIRCULAR}
- CIRCULAR ----> Circular Gaussian + slanting
plane as local background
- ELLIPTICAL --> Elliptical Gaussian +
slating plane as local background
- [/NUM_IT_MAX=n] Max. number of iterations
- {default = 30}
- [/ERR_TOLL=t.] Max. differences on the parameters
computed at (step i+1 - step i) multiplied for 1000
- {default 0.001}
- [/CEN] Write output to cen file (same structure
as the oop file)
- {defaults doesn't write on cen, upgrade
the oop}
- [/NO_ERR_FILE] Don't write the oop.object_number,
oop.cih_id and flag centroider for the object where the centroider
fails.
- {default write on the file ****.centr_error
with this format='(2x,i8,2x,i8,2x,i2)' oop.object_number,oop.cih_id,centroider_flag}
- [/VERBOSE]
- [/DEBUG] Debug mode
Availability :
- GSSS AXP - yes
- GSSS VAX - yes
- PIXELS - no
History/Author :
Version/Date
| Developer
| Inst.
| Comment
|
16-Oct-1994
| Andrea Zacchei
| CRA/OATo
| Original Implementation
|
27-Nov-1996
| Andrea Zacchei
| CRA/OATo
| Revision
|
04-Dec-1996
| Andrea Zacchei
| CRA/OATo
| Added Class_type qualifier
|
21-Jan-1997
| Andrea Zacchei
| CRA/OATo
| Revision
|
19-Mar-1997
| Andrea Zacchei
| CRA/OATo
| Adopted the new oop structure
|
26-Mar-1997
| Andrea Zacchei
| CRA/OATo
| Added All_class qualifier
|
28-Apr-1997
| Andrea Zacchei
| CRA/OATo
| Added /NO_ERR_FILE qualifier
|
25-Jun-1997
| Andrea Zacchei
| CRA/OATo
| Fix the Elliptical centroider fit
|
27-Jun-1997
| Andrea Zacchei
| CRA/OATo
| Optimization
|
|