影像的天文对准
astroalign的Python项目详细描述
astroalign是一个python模块,它将尝试对齐两个恒星天文图像,特别是在没有可用的wcs信息时。
它通过在两幅图像中找到相似的3点星号(三角形)并推导它们之间的仿射变换来实现。
通用注册例程尝试使用角点匹配特征点 使点对应的检测例程。 这些通常不适用于恒星天文图像,因为恒星 几乎没有稳定的结构,所以,总的来说,彼此无法区分。 星体匹配更为稳健,更接近于人类对恒星图像的匹配方式。
astroalign可以匹配不同视场、点扩散函数、视觉和大气条件的图像。
它可能不工作,或工作时特别小心,对图像的扩展对象很少点样的来源或在非常拥挤的领域。
您可以在http://toros-astro.github.io/astroalign/找到一个具有主要功能的jupyter笔记本示例。
安装
使用设置工具:
$ pip install astroalign
或通过
$ python setup.py install
用法示例
>>> import astroalign as aa
>>> aligned_image, footprint = aa.register(source_image, target_image)
在本例中,source_image
将通过变换进行插值,使像素与target_image
重合,并存储在aligned_image
中。
如果我们只想知道两幅图像中控制点的变换和对应关系,那么使用find_transform
将返回Scikit-Image相似变换对象中的变换和源中的星列表以及目标中的相应星。
>>> transf, (s_list, t_list) = aa.find_transform(source, target)
source
和target
可以是图像的numpy数组,也可以是图像上的(x,y)对星位置。
返回的transf
对象是一个scikit图像^{
s_list
和t_list
是source
和target
之间(x,y)点对应的numpy数组。{{CD7}}应用到^ {CD9}}将近似地呈现^ {CD10}}。
此软件包的灵感来自astrometry.net程序
Toros开发团队