2017-07-29 99 views
0

我正在尝试使用简单线性,非天体轴的WCS。这些实际上只是表示图像的傅立叶变换的U,V坐标。如何在WCS中定义轴名称

import astropy.wcs as wcs 
w=wcs.WCS(naxis=2) 
w.wcs.axis_types[0]=0 
w.wcs.axis_types[1]=0 
w.wcs.ctype[0]='UU---SIN' 
w.wcs.ctype[1]='VV---SIN' 
print(w) 
ww=w.deepcopy() 

正如我读documentation for axis_types,我已指定的第一两个轴是线性轴(即非天体)。但是,当执行深度复制时,出现错误:

astropy.wcs._wcs.InconsistentAxisTypesError: ERROR 4 in wcs_types() at line 2486 of file cextern/wcslib/C/wcs.c: 
Unrecognized celestial type (UU---SIN in CTYPE1). 

我在做什么错?

感谢, 添

回答

0

啊,我看到axis_types是一个属性,不能以这种方式进行设置。试图这样做时很明显:w.wcs.axis_types=[0,0]。仍然不知道如何正确执行此操作。

0

而不是UU---SINVV---SIN,只需使用UUVVwcs认识到SIN投影表示天体坐标系,但UUVV没有描述任何天体坐标系。

import astropy.wcs as wcs 
w=wcs.WCS(naxis=2) 
w.wcs.ctype[0]='UU' 
w.wcs.ctype[1] = 'VV' 
w.deepcopy() 

这就提出了一个问题,但是,是否有一个明确定义的约定(大概网格化?)在FITS图像UV数据。

+0

谢谢,这是有效的。我不知道正在进行变换的FITS图像的官方扩展。我相信使用UU--和VV--加上投影来自AIPS很久以前。 -SIN是适当的,因为u,v,w是相对于给定的SIN投影定义的。出于这个原因,RA和DEC轴有时保留为天体坐标系。有一天,有人应该解决这个问题,但这不是我!再次感谢。 –

0

我相信AIPS仍然这样做,我对WCSLIB对象感到失望。 UU --- SIN等似乎是一种正确的方式来描述我们在这种网格 图像中有什么。实际上FFT使用这种轴类型,而UVIMG只是使用U 和V.