我试图将WCS用于简单的线性非天体轴。这些实际上只是代表图像傅立叶变换的U,V坐标。
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 :(得分:0)
啊,我看到axis_types是一个属性,无法以这种方式设置。在尝试这样做时显而易见:w.wcs.axis_types=[0,0]
。仍然不确定如何正确地做到这一点。
答案 1 :(得分:0)
而不是UU---SIN
和VV---SIN
,只需使用UU
和VV
即可。 wcs
认识到SIN
投影表示天体坐标系,但UU
和VV
未描述任何天体坐标系。
import astropy.wcs as wcs
w=wcs.WCS(naxis=2)
w.wcs.ctype[0]='UU'
w.wcs.ctype[1] = 'VV'
w.deepcopy()
然而,这引出了一个问题,即FITS图像中是否存在明确定义的(大概是网格化的)UV数据的约定。
答案 2 :(得分:0)
我相信AIPS仍然这样做,我对WCSLIB对象感到失望。 UU --- SIN等似乎是描述我们在这种网格中所拥有的东西的正确方法 图片。实际上FFT确实使用这种轴类型,而UVIMG只使用U. 和V。