跳到主要内容
Sandbox Physics
在拥挤天空里测准星光

AC02 · L2

同一像素的光,可以属于两颗星

两颗星的光落到同一像素,仍然可以分开测量。关键是它们在整幅图上留下的比例不同:把每个像素当作一条关于亮度的方程,就能一起解出两颗星。

先用两个像素解一次

假设背景已经准确扣除,两颗星都只有两个像素贡献。目标的光有八成落进左像素、两成落进右像素;邻星恰好相反。观测到左边九百、右边六百光电子。这里先忽略噪声,未知量只有两颗星的总亮度。

把左像素方程乘四,再减去右像素方程,可以消去邻星;也可以先把两个方程相加,得到两颗星总共一千五百。代回去,目标一千,邻星五百。每个像素都混着两颗星的光,方程却仍能分开它们。

0.8Ft+0.2Fn=900,0.2Ft+0.8Fn=6000.8F_{\mathrm t}+0.2F_{\mathrm n}=900,\qquad0.2F_{\mathrm t}+0.8F_{\mathrm n}=600
光电子数在本例中按一次曝光计算。两行的比例不同,给了两条独立的信息。
Ft+Fn=1500,Ft=1000,Fn=500F_{\mathrm t}+F_{\mathrm n}=1500,\qquad F_{\mathrm t}=1000,\quad F_{\mathrm n}=500
这不是把左像素全算给目标。左边九百中,有八百来自目标、一百来自邻星。

把像素排成一张方程表

真实图像有很多像素。用向量 y\boldsymbol y 表示一串观测值,用 f=(Ft,Fn,B)T\boldsymbol f=(F_{\mathrm t},F_{\mathrm n},B)^{\mathsf T} 表示三个未知数。矩阵 AA 的每一行,依次存目标落入该像素的比例、邻星比例和常数一。把矩阵乘以这三个未知数,便得到所有像素的预期值。

有噪声时,通常找不到让每一行都精确相等的一组答案。于是给每个像素算残差:观测减预测。较不可靠的像素权重小一些,再让加权残差平方和尽量小。这叫加权最小二乘。

y=Af+ϵ,Ai⋅=(Pit,Pin,1),χ2=∑i(yi−(Af)i)2vi\boldsymbol y=A\boldsymbol f+\boldsymbol\epsilon,\quad A_{i\cdot}=(P_{i\mathrm t},P_{i\mathrm n},1),\quad\chi^2=\sum_i\frac{(y_i-(A\boldsymbol f)_i)^2}{v_i}
像素方差为已知数,且各像素独立。权重矩阵的对角线是方差的倒数,其他位置为零。

从最小残差求出亮度与误差

对每个未知亮度分别求导,意思是:微调这个亮度时,平方和还会不会继续下降。最低点的三个导数都为零。把三条条件排在一起,得到下面的线性方程。上标 T\mathsf T 表示把行列对调。

若三种空间形状可以独立分辨,左侧矩阵就有逆,乘上它可得拟合结果。逆矩阵也给出拟合量的协方差:对角线上是各自方差,非对角线上表示两个估计怎样一起涨落。开平方就得到亮度标准差。

教学模型把真实生成方差直接交给拟合,还固定了星心与高斯宽度。这相当于已知这些输入的理想实验。真实测光中,它们来自有误差的估计;固定输入的拟合误差没有包含这一部分。

ATWAf^=ATWy,f^=(ATWA)−1ATWyA^{\mathsf T}WA\widehat{\boldsymbol f}=A^{\mathsf T}W\boldsymbol y,\qquad\widehat{\boldsymbol f}=(A^{\mathsf T}WA)^{-1}A^{\mathsf T}W\boldsymbol y
对三参数线性模型,求解一张三行三列的表即可。
Cov⁡(f^)=(ATWA)−1\operatorname{Cov}(\widehat{\boldsymbol f})=(A^{\mathsf T}WA)^{-1}
此式要求模型正确、权重等于真实逆方差。它包含同时拟合常数背景带来的随机误差。

对应阅读:Photutils 3.1.1, PSF photometry · Photutils 3.1.1, Aperture photometry

两团光越像,误差越大

回到两个像素的例子。若两颗星都恰好把一半光分到左右两个像素,无论怎样转移两颗星之间的亮度,总预测都一样。你可以测总和,却无法唯一决定各自有多亮。

接近这种情况时,数学仍能给出一个答案,但噪声只要有一点改变,就会让亮度分配变很多。邻星的估计往上偏时,目标常往下偏。误差增大反映的是图像真的缺少区分能力。给拟合多加几位小数不会补上这些信息。

把真实照片拟合完,还应看残差在哪里聚集。一圈有方向的残差,可能提示光斑形状不准;一边正、一边负的残差,可能提示位置偏了。它们需要新的模型或校准。改善光斑模型或位置标定,才是在处理这类图案的来源。

Lab 默认条件下固定的一次合成曝光,各项均为每次曝光的光电子数。
量保存结果
注入目标6670 e−6670\,\mathrm e^{-}
补偿后的孔径估计8320 e−8320\,\mathrm e^{-}
双星拟合6760 e−6760\,\mathrm e^{-}
拟合标准差104 e−104\,\mathrm e^{-}
补偿后的邻星混光1550 e−1550\,\mathrm e^{-}

孔径半径 2.8 像素,高斯宽度 1.2 像素,星距 3.2 像素,邻星与目标平均亮度之比 0.8;背景每像素 90 光电子,读出噪声标准差 4 光电子。随机种子 444、变化相位 1.2 弧度固定这次曝光。运行 node scripts/astronomy/ac02/default-benchmark.ts 可重算。连续曝光会推进相位和噪声,后续读数会变。

把人造星放进去,再找回来

注入回收试验提供一次可以知道答案的检查。先生成已知亮度的恒星,再加上背景与随机噪声,用同一套测量流程恢复它。重复许多次,可分别观察平均偏差、误差范围覆盖真值的频率,以及达到预设门槛的比例。

本路线固定了八组试验,每组二百次,门槛为拟合亮度大于五倍拟合标准差。目标位置已知,因此这里测试的是指定位置的条件回收,尚未包含搜索整幅图时的误报、多重比较和漏检定位。

在三百五十光电子这一组,邻星距目标一点四像素时,二百次中二十次过门槛;移到七像素时,一百九十二次过门槛。两组使用同一模拟规则。这个差别说明,邻星能显著降低暗星的回收率,即使平均亮度估计仍接近正确。结果文件同时保存每组偏差与均方根误差。

练习与解释性答案

  1. 两颗星完全重合而光斑形状相同时,增加曝光能分出各自亮度吗?

    展开解释

    仅凭这一幅图像不能。更多光子能更准地测总亮度,但两颗星仍对应相同的空间形状。需要不同颜色、不同时间行为或独立位置等额外信息。

  2. 为什么要同时拟合背景,而不是只拟合两颗星?

    展开解释

    背景给每个像素加常数。若模型遗漏这一项,拟合会让恒星亮度吸收一部分背景。把背景一起求出能处理该项,同时也会增加参数之间的随机相关。

  3. 二百次中二十次回收,能否说所有真实巡天的完备率都是百分之十?

    展开解释

    不能。这个比例只对应指定亮度、间距、已知位置和理想光斑模型。真实巡天还要对天区、星等、颜色、背景和定位流程做注入试验。

动手检验预测

找出分不开的趋势

  1. 固定邻星亮度和光斑宽度,逐渐减小恒星间距。
  2. 比较青色拟合曲线相对白色注入真值的偏离与“拟合误差”。白色曲线自身也在变化,应先扣掉这部分真实变化。
  3. 导出一幅图像,从其中的两个光斑和常数背景重建预测像素。

来源与计算范围

  1. Photutils 3.1.1, Aperture photometry

    孔径覆盖权重、背景扣除与误差传播。浏览器另用文档说明的面积中点求积。

  2. Photutils 3.1.1, PSF photometry

    光源分组、亮度拟合与点扩散函数的作用。教学拟合固定两颗星的中心和高斯宽度。

反馈这个页面有错误、看不明白,或者缺了什么?告诉我们
反馈类型

提交时会附带本页地址、Lab ID、网站语言和设备类型。请不要填写个人信息。反馈最多保存 12 个月。隐私政策