sigma_clip_stack — ASTROSTACK stack op

数据种类:imagesimage2d

调用:import astrostack; astrostack.sigma_clip_stack(frames, mode='sigma_clip', kappa=3.0, iters=5, center='median', scale='mad')(或 opsastrostack.get("sigma_clip_stack"))

用法

合成一串帧(均值 / 中位数 / κ-σ 剪裁),并给出采纳掩码。

> 以下的详细说明为原文 —— 摘要与标题已翻译。

*mode*:

• `"mean" —— 単純平均。雑音は sqrt(N)` で下がるが、外れ値(宇宙線・

人工衛星の航跡)は `1/N` しか薄まらず必ず残る

• `"median"` —— 中央値。外れ値に強い代わりに、正規分布のとき雑音は

平均の `sqrt(pi/2) = 1.2533` 倍しか下がらない(= 実効的に 36 % 枚数を

捨てている)。

• `"sigma_clip" —— 中央値を中心、scale` を尺度として

`|x - center| > kappa * scale` を落とし、残りで平均を取る。これを

`iters` 回。外れ値に強く、かつ生き残った画素は平均されるので雑音も

`sqrt(N_accepted)` で下がる —— 実用の既定。

破綻点は 50 %。 中心を中央値、尺度を MAD で取る以上、汚染フレームが

半数を超えた画素では中央値そのものが汚染側に乗り、クリップは正しい方

捨てる。これはこの実装の不具合ではなく中央値の定義そのもので、

`center="mean"` にすればもっと早く(汚染 1 枚でも)壊れる。テストは

0〜60 % の汚染率で誤差を測り、壊れる側もそのまま残してある

**`scale の既定が "mad" なのは実測の結果。** scale="std"` は

「外れ値を見つけるための尺度を、その外れ値自身が膨らませる」ので、汚染が

増えるとむしろ何も落とさなくなる —— 24x24 の平坦場(真値 100、

σ=2)20 枚のうち 4 枚(20 %)に +500 の汚染を入れた実測では、

`scale="std"` は棄却率 0.0 % で誤差 +99.9975(= 単純平均と

小数点以下まで完全に同じ)、`scale="mad"` は棄却率 22.0 % で誤差

-0.019。破綻点は `std が 10〜20 % の間、mad` がちょうど 50 % で、

5 倍近く違う。

Returns `(stack, accepted)`:

• `stack —— (H, W)` float64。

• `accepted —— (N, H, W) bool、True` = 採用した画素。

`mode="mean" / "median" では全 True`(どちらもクリップしない

ので、「採否」の概念が無いことを `False` が 1 つも無いことで示す)。

Raises `ValueError`: *frames* が list / tuple でない / 枚数が 2 未満 /

形が揃っていない / *mode* が :data:STACK_MODES にない / *kappa* が非正 /

*center* が `"median" / "mean" 以外 / *scale* が "std"` /

`"mad"` 以外の場合。

参考(示例数据・文献)

• 示例数据目录(下载 URL / 许可证) —— 2-D 用 skimage.data(BSD/公有领域)加合成图,3-D 给出真实数据源(Stanford/PDS 等)的下载 URL。

• 算子来历与参考文献 —— 该算子族所依据的研究/方法出处。

• 算法的正典(作者・年份)与用途见上面的族使用指南

可运行的示例(实际调用该算子并已验证的样例)

astro_stackingpy -3.11 examples/astro_stacking.py

poc_astro_photometrypy -3.11 examples/poc_astro_photometry.py

类型可衔接的下一个算子(可接受 image2d 作为输入)

frame_quality · noise_sigma · cosmic_ray_reject · star_detect · psf_fit · aperture_photometry · frame_align

同类别(stack)

drizzle_resample


*Provenance: astrostack.py — ASTROSTACK 算子登记表。本条目由 tools/opdocs.py md 自动生成(请勿手工编辑)。*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.