【问题标题】:Mapping from one plane on the other plane despite of masking regions尽管有掩蔽区域,但从一个平面映射到另一平面
【发布时间】:2014-10-26 18:00:30
【问题描述】:

我有一组数据给定here,其中第一列和第二列分别是天空坐标 (ra,dec),第三列和第四列分别是笛卡尔坐标系中的坐标 (x,y) .

我需要使用坐标xy 制作一个二维插值曲面,另一个使用RaDec。问题是存在被遮罩的区域,如上图所示。我可以通过绘制它们来说明丢失的数据(目录中没有NaN 值)。这是我迄今为止尝试过但没有给出正确答案的方法:

from scipy.interpolate import griddata
import numpy as np
import matplotlib.pyplot as plt

data = np.loadtxt('test.asc')

ra = data[:,0]
dec = data[:,1]
Xpos = data[:,2]
Ypos = data[:,3]

xi = np.linspace(Xpos.min(), Xpos.max(), 1000)
yi = np.linspace(Ypos.min(), Ypos.max(), 1000)
xi, yi = np.meshgrid(xi, yi, copy=False)
ra_int = griddata(data[:,2:4], ra, (xi.flatten(), yi.flatten()),
                  method='cubic')
dec_int = griddata(data[:,2:4], dec, (xi.flatten(), yi.flatten()),
                   method='cubic')

使用 griddata 失败并仅返回 NaN 值。有没有办法进行这种插值,以便从给定的xy 坐标估计RaDec 的值,即使在蒙面区域(从xy 映射到@ 987654338@和dec)?

【问题讨论】:

  • 您可能会尝试填补本文stackoverflow.com/questions/20753288/…中显示的空白,然后进行插值。
  • 其实我不想给你指出那个具体的答案(我不能编辑评论),但问题和你的很相似。我想亚历克斯我的答案可以很好地适应。
  • @ChristianK。这似乎很有趣,但我怎么能从一架飞机映射到另一架飞机呢?我不太清楚应该怎么做!
  • 看来我误解了你的问题。我假设问题的一部分是 z = f(x,y) 表面的插值,它有间隙,但显然情况并非如此。其实我不知道你打算做什么。 griddata 用于 f(x1,x2,x3,...,xn) 类型数据的插值。你好像还想做点别的事情……
  • 我假设 RA 和 Dec 的单位是度数(天文学数据中常用的赤道坐标系),但笛卡尔坐标集到底是什么? (在特定地理位置对地球表面的一些投影?)没有这些信息很难回答,因为我们不知道这两个空间之间的依赖关系(很可能是非线性的,而不仅仅是镜像和缩放......)

标签: python scipy scikit-learn interpolation computational-geometry


【解决方案1】:

如果我猜对了,那就是这样的:

只需将笛卡尔坐标系移动到 CCD 的中间,并将赤道坐标系移动到 CCD 的中间。然后分别计算x,y。您唯一需要做的就是分别计算 fxy 的焦距!!!


pos 是笛卡尔坐标(x 或 y)
ang是赤道坐标(RA或Dec)

  1. 从数据库中获取边缘点

    将角度移到CCD

    的中间
  2. 从中计算焦点(fx,fy)

    f = pos/tan(ang)
    
  3. 现在您可以计算数据集中任何条目的投影

    将角度移到 CCD 的中间,然后通过

    计算x,y
    pos=f*tan(ang)
    

    CCD 中间移回原始笛卡尔坐标。如果这种方法正确,您应该检查几点

[注释]

x 轴在您的输出中镜像,因此只需在最后使用x=-x,然后再返回原始笛卡尔坐标或将焦点留在f 负数。

如果您的 CCD 轴未与赤道对齐,那么您需要计算旋转(X 轴和赤道之间的角度)并在转换后围绕Z 轴应用旋转,然后再移回。 ..

【讨论】:

    猜你喜欢
    • 2023-03-17
    • 2012-10-10
    • 2017-01-14
    • 1970-01-01
    • 2023-04-09
    • 1970-01-01
    • 1970-01-01
    • 2023-03-05
    • 1970-01-01
    相关资源
    最近更新 更多