基极低水平

class astropy.wcs.wcsapi.BaseLowLevelWCS[源代码]

基类:object

低级WCS接口的抽象基类。

在中对此进行了描述 APE 14: A shared Python interface for World Coordinate Systems .

属性摘要

array_shape 

WCS应用到的数据的形状作为长度的元组 pixel_n_dim 在里面 (row, column) order(Python中数组的约定)。

axis_correlation_matrix 

返回一个 (world_n_dimpixel_n_dim )表示使用布尔值的矩阵表示给定的世界坐标是否依赖于给定的像素坐标。

pixel_axis_names 

描述每个像素轴名称的字符串的iterable。

pixel_bounds 

在其中定义WCS的边界(以像素坐标为单位),如具有 pixel_n_dim (min, max) 元组。

pixel_n_dim 

像素坐标系中的轴数。

pixel_shape 

WCS应用到的数据的形状作为长度的元组 pixel_n_dim 在里面 (x, y) 订单(如果是图像, x 是水平坐标和 y 是垂直坐标)。

serialized_classes 

指示Python对象是以序列化形式还是作为实际的Python对象给定的。

world_axis_names 

一个iterable字符串,用于描述每个世界轴的名称。

world_axis_object_classes 

提供有关为世界坐标构造高级对象的信息的词典。

world_axis_object_components 

一份清单 world_n_dim 元素提供有关为世界坐标构造高级对象的信息。

world_axis_physical_types 

描述每个世界轴的物理类型的字符串iterable。

world_axis_units 

给定每个轴的世界坐标单位的一种字符串。

world_n_dim 

世界坐标系中的轴数。

方法总结

array_index_to_world_values(*index_arrays)

将数组索引转换为世界坐标。

pixel_to_world_values(*pixel_arrays)

将像素坐标转换为世界坐标。

world_to_array_index_values(*world_arrays)

将世界坐标转换为数组索引。

world_to_pixel_values(*world_arrays)

将世界坐标转换为像素坐标。

属性文档

array_shape

WCS应用到的数据的形状作为长度的元组 pixel_n_dim 在里面 (row, column) order(Python中数组的约定)。

如果WCS在具有特定形状的数据集上下文中有效,则此属性可用于存储数据的形状。例如,如果实现WCS对象的切片,则可以使用此选项。这是一个可选属性,它应该返回 None 如果形状未知或不相关。

axis_correlation_matrix

返回一个 (world_n_dimpixel_n_dim )表示使用布尔值的矩阵表示给定的世界坐标是否依赖于给定的像素坐标。

这默认为一个矩阵,其中所有元素 True 在没有任何进一步信息的情况下。对于完全独立的轴,对角线为 True 以及所有其他条目 False .

pixel_axis_names

描述每个像素轴名称的字符串的iterable。

如果轴没有名称,则应返回空字符串(如果子类不重写此属性,则这是所有轴的默认行为)。请注意,这些名称仅用于显示目的,不是标准化的。

pixel_bounds

在其中定义WCS的边界(以像素坐标为单位),如具有 pixel_n_dim (min, max) 元组。

界限应该在 [(xmin, xmax), (ymin, ymax)] 命令。WCS解决方案有时仅保证在特定像素值范围内是准确的,例如在定义包含拟合失真的WCS时。这是一个可选属性,它应该返回 None 如果形状未知或不相关。

pixel_n_dim

像素坐标系中的轴数。

pixel_shape

WCS应用到的数据的形状作为长度的元组 pixel_n_dim 在里面 (x, y) 订单(如果是图像, x 是水平坐标和 y 是垂直坐标)。

如果WCS在具有特定形状的数据集上下文中有效,则此属性可用于存储数据的形状。例如,如果实现WCS对象的切片,则可以使用此选项。这是一个可选属性,它应该返回 None 如果形状未知或不相关。

如果您有兴趣获得一个类似于Numpy数组的形状,那么应该使用 array_shape 相反。

serialized_classes

指示Python对象是以序列化形式还是作为实际的Python对象给定的。

world_axis_names

一个iterable字符串,用于描述每个世界轴的名称。

如果轴没有名称,则应返回空字符串(如果子类不重写此属性,则这是所有轴的默认行为)。请注意,这些名称仅用于显示目的,不是标准化的。有关标准化轴类型,请参见 world_axis_physical_types .

world_axis_object_classes

提供有关为世界坐标构造高级对象的信息的词典。

字典的每个键都是 world_axis_object_components ,每个值都是一个包含三个元素或四个元素的元组:

  • 元组的第一个元素必须是一个类或一个指定类的完全限定名的字符串,它将指定要创建的实际Python对象。

  • 第二个元素应该是一个元组,指定初始化类所需的位置参数。如果 world_axis_object_components 指定应将世界坐标作为位置参数传递,此元组应包括 None 世界坐标的占位符。

  • 第三个元组元素必须是具有初始化类所需的关键字参数的字典。

  • 可选地,对于高级用例,第四个元素(如果存在)应该是一个可调用的Python对象,它被调用而不是类,并传递位置参数和关键字参数。它应该返回元组中第一个元素类型的对象。

请注意,我们不要求类是Astropy类,因为不能保证Astropy将拥有代表各种世界坐标的所有类。此外,我们建议输出尽可能保持可读性。

这里使用的类应该能够通过将一个实例作为第一个参数传递给具有不同参数的同一个类(例如。 Time(Time(...), scale='tai') ). 这是实现高级接口的一个需求。

这个字典中每个值的第二个和第三个元组元素可以包含类的实例,或者如果需要,可以包含序列化版本,这些版本的形式应该与上面描述的主类的形式相同(一个包含三个元素的元组,具有类的完全限定名,然后是位置参数和关键字参数)。对于用Python实现的低级API对象,我们建议只返回实际对象(而不是序列化的形式),以获得最佳性能。实现应该始终使用或从不使用序列化类来表示Python对象,并且应该使用 serialized_classes 属性。

请参阅文档 APE 14: A shared Python interface for World Coordinate Systems 例如。

world_axis_object_components

一份清单 world_n_dim 元素提供有关为世界坐标构造高级对象的信息。

列表中的每个元素都是一个包含三个项的元组:

  • 第一个是这个世界数组对应的世界对象的名称,它 must 匹配中使用的字符串名称 world_axis_object_classes . 请注意,名称可能会出现两次,因为两个世界阵列可能对应一个世界对象(例如,一个天体坐标可能同时具有“ra”和“dec”阵列,这两个阵列对应于一个天空坐标对象)。

  • 第二个元素是字符串关键字参数名或中对应类的位置索引 world_axis_object_classes .

  • 第三个参数是一个字符串,给出了要在相应类上访问的属性的名称 world_axis_object_classes 才能得到数值。或者,该参数可以是一个可调用的Python对象,它接受一个高级坐标对象,并返回适合传递给低级WCS转换方法的数值。

请参阅文档 APE 14: A shared Python interface for World Coordinate Systems 举个例子。

world_axis_physical_types

描述每个世界轴的物理类型的字符串iterable。

这些应该是voucd1+控制词汇表中的名称(http://www.ivoa.net/documents/latest/UCDlist.html). 如果不存在匹配的UCD类型,则可以改为 "custom:xxx" 在哪里 xxx 是任意字符串。或者,如果物理类型未知/未定义,则元素可以是 None .

world_axis_units

给定每个轴的世界坐标单位的一种字符串。

字符串应该跟在 IVOA VOUnit standard (尽管如VOUnit规范文件中所述,不遵循本标准的装置仍然允许使用,但不建议使用)。

world_n_dim

世界坐标系中的轴数。

方法文件

array_index_to_world_values(*index_arrays)[源代码]

将数组索引转换为世界坐标。

这和 pixel_to_world_values 但指标应在 (i, j) 订单,哪里有图像 i 是一排而且 j 是列(即与 pixel_to_world_values

如果 world_n_dim1 ,此方法返回单个标量或数组,否则返回标量或数组的元组。

abstract pixel_to_world_values(*pixel_arrays)[源代码]

将像素坐标转换为世界坐标。

这种方法需要 pixel_n_dim 标量或数组作为输入,像素坐标应该从零开始。退换商品 world_n_dim 标量或数组,单位由 world_axis_units . 注意,在每个维度的第一个像素的中心,像素坐标被假定为0。如果像素位于未定义WCS的区域中,则可以返回NaN。坐标应在 (x, y) 订单,哪里有图像, x 是水平坐标和 y 是垂直坐标。

如果 world_n_dim1 ,此方法返回单个标量或数组,否则返回标量或数组的元组。

world_to_array_index_values(*world_arrays)[源代码]

将世界坐标转换为数组索引。

这和 world_to_pixel_values 只是索引应该返回 (i, j) 订单,哪里有图像 i 是一排而且 j 是列(即与 pixel_to_world_values ). 索引应返回为四舍五入整数。

如果 pixel_n_dim1 ,此方法返回单个标量或数组,否则返回标量或数组的元组。

abstract world_to_pixel_values(*world_arrays)[源代码]

将世界坐标转换为像素坐标。

这种方法需要 world_n_dim 标量或数组作为输入,单位由 world_axis_units . 退换商品 pixel_n_dim 标量或数组。注意,在每个维度的第一个像素的中心,像素坐标被假定为0。如果世界坐标没有匹配的像素坐标,则可以返回NaN。坐标应该返回到 (x, y) 订单,哪里有图像, x 是水平坐标和 y 是垂直坐标。

如果 pixel_n_dim1 ,此方法返回单个标量或数组,否则返回标量或数组的元组。