[AstroPy] Distortion coefficients - FITS Header of an image

Josh Walawender jmwalawender at gmail.com
Fri Sep 2 21:03:13 EDT 2016


Hi Alice,

I’ve run in to a similar problem with distortion coefficients from the same software.  I worked with a project which was using ACP for telescope control which would solve astrometry using PinPoint.  The problem is that there seems to be no simple standard for describing distortions, so there are/were a few ways to do it.  The TRi_j standard didn’t seem to catch on and I don’t think it is supported in astropy (or at least it wasn’t when I was looking in to this a year or two ago)

In principle one could write a conversion utility to convert the TRi_j keywords to SIP, but I didn’t want to figure out that calculation and my solution in the end was just to re-solve the WCS using something like astrometry.net (which outputs SIP) rather than try to write that conversion package.

Hope this helps.

-Josh


> On Aug 31, 2016, at 11:20 PM, alice paschal <alice.pasch at orange.fr> wrote:
> 
> Hello,
> 
>  
> With a telescope, I took sky images in tracking ON. These images were saved in FITS format.
> With MaximDL and PinPoint Atsrometry softwares, we can get the FITS Header of each image, i.e. image data (for instance Observation site, CCD camera, focal length, pixels, right ascension of the image center, declination of the image center, etc). I put an example for you (see below at the end of the message).
> 
> What I would like to find is a way to take into account distortion coefficients of an image (we can find them in the FITS Header of the image, see below), in order to convert any pixels of the image into world coordinates, and vice versa.
> I am working with Python.
> 
> I have found with Astropy some useful functions, like w.wcs_world2pix to convert world coordinates into pixel coordinates. But would you know which distortion coefficients are taken into account in such a function ? The TRi_j distortion coefficients are they taken into account ? Because I could not find any information on them. I have found only papers like the following ones which are on A, B, AP, AB coefficients but not on TR coefficients :
> 
> http://docs.astropy.org/en/stable/api/astropy.wcs.Sip.html#astropy.wcs.Sip <http://docs.astropy.org/en/stable/api/astropy.wcs.Sip.html#astropy.wcs.Sip>
> http://irsa.ipac.caltech.edu/data/SPITZER/docs/files/spitzer/shupeADASS.pdf <http://irsa.ipac.caltech.edu/data/SPITZER/docs/files/spitzer/shupeADASS.pdf>
> 
> 
> Thank you in advance for your help.
> 
> Best regards
> 
> Alice
> 
> 
> 
> 
> Example of the FITS Header of an image :
> 
> SIMPLE = T 
> BITPIX = 16 /8 unsigned int, 16 & 32 int, -32 & -64 real 
> NAXIS = 2 /number of axes 
> NAXIS1 = 2184 /fastest changing axis 
> NAXIS2 = 1472 /next to fastest changing axis 
> BSCALE = 1.0000000000000000 /physical = BZERO + BSCALE*array_value 
> BZERO = 0.00000000000000000 /physical = BZERO + BSCALE*array_value 
> DATE-OBS = '2016-08-03T21:53:34' / [ISO 8601] UTC date/time of exposure start 
> 
> 
> EXPTIME = 4.00000000000E+000 / [sec] Duration of exposure 
> EXPOSURE = 4.00000000000E+000 / [sec] Duration of exposure 
> SET-TEMP = -30.000000000000000 /CCD temperature setpoint in C 
> CCD-TEMP = -29.968750000000000 /CCD temperature at start of exposure in C 
> XPIXSZ = 6.7999999999999998 /Pixel Width in microns (after binning) 
> YPIXSZ = 6.7999999999999998 /Pixel Height in microns (after binning) 
> 
> 
> XBINNING = 1 / Binning level along the X-axis 
> YBINNING = 1 / Binning level along the Y-axis 
> XORGSUBF = 0 /Subframe X position in binned pixels 
> YORGSUBF = 0 /Subframe Y position in binned pixels 
> READOUTM = 'Raw ' / Readout mode of image 
> IMAGETYP = 'Light Frame' / Type of image 
> FOCALLEN = 1153.0000000000000 /Focal length of telescope in mm 
> APTDIA = 254.00000000000000 /Aperture diameter of telescope in mm 
> APTAREA = 50670.749319791794 /Aperture area of telescope in mm^2 
> EGAIN = 0.80000001192092896 /Electronic gain in e-/ADU 
> SBSTDVER = 'SBFITSEXT Version 1.0' /Version of SBFITSEXT standard in effect 
> SWCREATE = 'MaxIm DL Version 6.08 160505 1A3Q6' /Name of software 
> SWSERIAL = '1A3Q6-HWHSQ-A0990-J2QRF-SUTCT-QC' /Software serial number 
> 
> 
> OBJCTRA = '21 28 50.00' / [hms J2000] Target right ascension 
> OBJCTDEC = '-06 44 12.0' / [dms +N J2000] Target declination 
> OBJCTALT = ' 30.8774' / Nominal altitude of center of image 
> OBJCTAZ = '139.4337' / Nominal azimuth of center of image 
> OBJCTHA = ' -2.2794' / Nominal hour angle of center of image 
> SITELAT = '43 45 11' / Latitude of the imaging location 
> SITELONG = '06 55 18' / Longitude of the imaging location 
> JD = 2457604.4121990739 /Julian Date at start of exposure 
> JD-HELIO = 2457604.4179293886 /Heliocentric Julian Date at exposure midpoint 
> 
> AIRMASS = 1.94149884803E+000 / Airmass (multiple of zenithal airmass) 
> OBJECT = ' ' / Target object name 
> TELESCOP = ' ' / Telescope name 
> INSTRUME = 'SBIG STT-3200 3 CCD Camera' / Detector instrument name 
> 
> OBSERVER = ' ' / Observer name 
> NOTES = ' ' 
> FLIPSTAT = ' ' 
> SWOWNER = 'THALES ALENIA SPACE FRANCE' /Licensed owner of software 
> INPUTFMT = 'FITS ' / Format of file from which image was read 
> 
> HISTORY File was processed by PinPoint 6.0.6 at 2016-08-08T11:19:06 
> DATE = '03/08/16' / [old format] UTC date of exposure start 
> TIME-OBS = '21:53:34' / [old format] UTC time of exposure start 
> UT = '21:53:34' / [old format] UTC time of exposure start 
> TIMESYS = 'UTC ' / Default time system 
> RADECSYS = 'FK5 ' / Equatorial coordinate system 
> RA = '21 28 50.00' / [hms J2000] Target right ascension 
> DEC = '-06 44 12.0' / [dms +N J2000] Target declination 
> FWHM = 3.31912333965E+000 / [pixels] Mean Full-Width-Half-Max of image star
> ZMAG = 2.22695229625E+001 / Mag zero point for 1 sec exposure 
> EQUINOX = 2000.0 / Equatorial coordinates are J2000 
> EPOCH = 2000.0 / (incorrect but needed by old programs) 
> PA = 3.58967846401E+002 / [deg, 0-360 CCW] Position angle of plate 
> CTYPE1 = 'RA---TAN' / X-axis coordinate type 
> CRVAL1 = 3.22235640938E+002 / X-axis coordinate value 
> CRPIX1 = 1.09200000000E+003 / X-axis reference pixel 
> CDELT1 = -3.37671457816E-004 / [deg/pixel] X-axis plate scale 
> CROTA1 = 1.03215359918E+000 / [deg] Roll angle wrt X-axis 
> CTYPE2 = 'DEC--TAN' / Y-axis coordinate type 
> CRVAL2 = -6.73039453583E+000 / Y-axis coordinate value 
> CRPIX2 = 7.36000000000E+002 / Y-axis reference pixel 
> CDELT2 = -3.38006539857E-004 / [deg/pixel] Y-Axis Plate scale 
> CROTA2 = 1.03215359918E+000 / [deg] Roll angle wrt Y-axis 
> CD1_1 = -3.37616668483E-004 / Change in RA---TAN along X-Axis 
> CD1_2 = 6.08868227955E-006 / Change in RA---TAN along Y-Axis 
> CD2_1 = -6.08264627773E-006 / Change in DEC--TAN along X-Axis 
> CD2_2 = -3.37951696156E-004 / Change in DEC--TAN along Y-Axis 
> TR1_0 = 1.09199958073E+003 / [private] X-axis distortion coefficients 
> TR1_1 = 2.18399991151E+003 
> TR1_2 = -6.18827693341E-001 
> TR1_3 = -1.23992354888E+000 
> TR1_4 = -1.21460280616E+000 
> TR1_5 = -1.17006143126E+000 
> TR1_6 = -2.36278669552E+001 
> TR1_7 = 8.13968772630E-001 
> TR1_8 = -1.05987616323E+001 
> TR1_9 = -2.51664136543E+000 
> TR1_10 = 7.75126811018E+000 
> TR1_11 = 1.11725347231E+000 
> TR1_12 = -1.15863502104E+000 
> TR1_13 = 2.78034135924E+000 
> TR1_14 = 5.04818239812E+000 
> TR2_0 = 7.36000000896E+002 / [private] Y-axis distortion coefficients 
> TR2_1 = -1.38948258924E-003 
> TR2_2 = 1.47200000121E+003 
> TR2_3 = -1.74854087048E+000 
> TR2_4 = 3.06867323249E-001 
> TR2_5 = -2.74476247742E+000 
> TR2_6 = -2.95895994527E-001 
> TR2_7 = -1.76582177998E+001 
> TR2_8 = 2.41056596524E-001 
> TR2_9 = -1.34421356097E+001 
> TR2_10 = 6.81670566601E+000 
> TR2_11 = -2.72087350085E+000 
> TR2_12 = -2.86227884736E+000 
> TR2_13 = 7.12777456134E+000 
> TR2_14 = 1.02502948504E+001 
> HISTORY WCS added by PinPoint 6.0.6 at 2016-08-08T11:19:06 
> HISTORY Matched 142 stars from the Gray GSC-ACT Catalog 
> HISTORY Average residual was 0.42 arc-seconds 
> PLTSOLVD = T / Plate has been solved by PinPoint 
> HISTORY Image data was modified, written back to file.
> 
>  
>  
> _______________________________________________
> AstroPy mailing list
> AstroPy at scipy.org
> https://mail.scipy.org/mailman/listinfo/astropy

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/astropy/attachments/20160902/c12df40a/attachment.html>


More information about the AstroPy mailing list