跳转到主要内容

图像天文测量对齐

项目描述

logo


QuatroPe unit tests Coverage Documentation Status PyPI PyPI - Downloads ascl:1906.001

ASTROALIGN 是一个Python模块,它将尝试对齐两张恒星天文图像,尤其是在没有WCS信息的情况下。

它通过在两张图像中找到相似的3点星群(三角形)并推导出它们之间的仿射变换来实现。

通用的注册例程尝试匹配特征点,使用角点检测例程来制作点对应关系。这些通常对于恒星天文图像失败,因为星星几乎没有稳定的结构,所以通常无法相互区分。星群匹配更加稳健,更接近人类匹配恒星图像的方式。

Astroalign可以匹配不同视场、点扩展函数、视宁度和大气条件的图像。

它可能在扩展对象图像(具有很少的点源或非常拥挤的场)上无法工作,或者需要特别注意。

您可以在 http://quatrope.github.io/astroalign/ 找到具有主要功能的Jupyter笔记本示例。

完整文档: https://astroalign.readthedocs.io/

安装

使用setuptools

$ pip install astroalign

或从本分布使用

$ python setup.py install

性能:可选

此库可选兼容于 bottleneck,在某些情况下可能提供性能改进。使用以下命令将bottleneck作为与astroalign平级的依赖项安装到您的项目中

pip install bottleneck

Astroalign将自动选择此可选依赖项并使用其性能改进的函数来计算变换。

运行测试

python tests/test_align.py

使用示例

>>> import astroalign as aa
>>> aligned_image, footprint = aa.register(source_image, target_image)

在这个示例中,source_image将通过变换进行插值,使其像素与target_image的像素一一对应,并存储在aligned_image中。

如果我们只对知道变换以及两幅图像中控制点的对应关系感兴趣,使用find_transform将返回一个包含变换的Scikit-Image SimilarityTransform对象以及源图像中星星与目标图像中对应星星的列表。

>>> transf, (s_list, t_list) = aa.find_transform(source, target)

sourcetarget可以分别是一个图像的numpy数组(灰度或彩色),或者是一个包含图像上星星位置(x, y)对的迭代器。

返回的transf对象是一个包含变换矩阵以及缩放、旋转和平移参数的scikit-image SimilarityTransform对象。

s_listt_list是源和目标之间(x, y)点对应的numpy数组。transf应用于s_list将大致渲染t_list

相关软件

还有其他可能提供类似astroalign功能的软件。此列表并不全面,可能还有其他软件。

引用

如果您在科学出版物中使用astroalign,我们希望引用以下论文

Astroalign: A Python module for astronomical image registration.
Beroiz, M., Cabral, J. B., & Sanchez, B.
Astronomy & Computing, Volume 32, July 2020, 100384.

TOROS Dev Team

martinberoiz@gmail.com

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

astroalign-2.5.1.tar.gz (59.2 kB 查看哈希)

上传时间

构建分布

astroalign-2.5.1-py3-none-any.whl (12.0 kB 查看哈希)

上传时间 Python 3

支持