人生的意义就是思考其意义分享 http://blog.sciencenet.cn/u/qianlivan 天体物理工作者,家乡云南昆明。

博文

FITS文件里的坐标

已有 8231 次阅读 2010-9-8 16:40 |个人分类:读书|系统分类:科研笔记| FITS, 图像可视化

天文里大多数数据都存成FITS(Flexible Image Transport System)格式,有一个文件头描述文件的特征,剩下的就是数据了。

过去两周碰到一个问题,把一些已知坐标的天体叠画到观测数据上的时候,总是有些偏差,并且不是计算误差造成的。咨询了一个老师后,我大概知道是坐标投影的问题。这个和地图的原理差不多,为了在一个平面上表示一个球面上的内容,总要做一些投影。在区域很小的情况下,球面近似和投影平面重合,但是如果区域很大,或者距参考点的距离较大,球面和投影平面就会有很大的差别。

FITS文件存的数据一般是一个多维数组,所以原始坐标(像素坐标,pixel coordinate)实际是数组的指标,或者像素值。不过需要注意的是,FITS文件的指标是类似fortran的,从1开始,并且数组指标指的是像素的中心。所以第一个像素的原始坐标是从0.5到1.5

为了从像素坐标计算球面坐标,首先需要计算投影平面的坐标,这就需要知道参考点的坐标(像素坐标已经投影平面坐标)以及每个像素的大小(投影平面坐标的增量)。参考点的像素坐标在头文件里的关键字是CRPIXi(i=1,2,...),投影平面坐标的关键字是 CRVALi(i=1,2...),投影平面坐标的增量的关键字是CDELTi(i=1,2,...)。若一点的像素值为n,那么相应的投影平面坐标可以计算为
                                      x=(n-CRPIXi)*CDELTi+CRVALi
接下来为了计算球面坐标最关键的一步就是求解投影方程。投影类型对应的关键字是CTYPEi(i=1,2,...)。我遇到的是orthographic projection,可以计算如下。

 





我之前遇到的问题就是只计算了投影平面的坐标(x,y),没有作投影,在远离参考点的地方偏差就很大。不过实际做完投影后画出的图还是差一点,我后来注意到第一个像素的像素坐标是从0.5到1.5,改了之后就正常了。

https://blog.sciencenet.cn/blog-117333-360909.html

上一篇:aips初步尝试(二)
下一篇:视界面上的力矩
收藏 IP: .*| 热度|

1 李宇斌

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-5 07:10

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部