我正在运行 python2.5 并尝试使用 astLib 库来分析天文图像中的 WCS 信息。我尝试使用以下框架代码实例化对象:
from astLib import astWCS
w = astWCS.WCS('file.fits') # error here
其中 file.fits 是指向有效拟合文件的字符串。
我尝试使用传递 pyfits 标头对象的替代方法,但这也失败了:
import pyfits
from astLib import astWCS
f = pyfits.open('file.fits')
header = f[0].header
f.close()
w = astWCS.WCS(header, mode='pyfits') # error here also
错误是这样的:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/home/astro/phrfbf/build/lib/python2.6/site-packages/astLib/astWCS.py", line 79, in __init__
self.updateFromHeader()
File "/home/astro/phrfbf/build/lib/python2.6/site-packages/astLib/astWCS.py", line 119, in updateFromHeader
self.WCSStructure=wcs.wcsinit(cardstring)
File "/home/astro/phrfbf/build/lib/python2.6/site-packages/PyWCSTools/wcs.py", line 70, in wcsinit
return _wcs.wcsinit(*args)
TypeError: in method 'wcsinit', argument 1 of type 'char *'
当我在 ipython 中运行时,我在 pastebin 上得到了完整的错误
我知道 astWCS 模块是 WCStools 的包装版本,但我更喜欢使用 Python 模块,因为我的其余代码都在 Python 中
任何人都可以帮助解决这个问题吗?