photometry op• 데이터 종류: image2d → keypoints
• 호출: import fullseye as fs; fs.ledger.star_detect(image, threshold_sigma=5.0, min_separation=3, max_stars=200, edge_margin=None, centroid_box=None, method='mad')(구현을 직접 호출하려면 import astrostack; astrostack.star_detect(image, threshold_sigma=5.0, min_separation=3, max_stars=200, edge_margin=None, centroid_box=None, method='mad'), 원장에서 가져오려면 opsastrostack.get("star_detect"))
별을 검출해 `(row, col)` 무게중심 목록을 돌려줍니다.
> 아래 상세 설명은 원문입니다 —— 요약과 제목은 번역되어 있습니다.
背景と雑音を :func:noise_sigma と同じ頑健推定で出し、
`background + threshold_sigma * sigma` を超える局所最大を拾う
(最大値フィルタとの一致で判定するので、`min_separation` 画素以内に
2 つは出ない)。中心はしきい値の画素位置ではなく、`centroid_box`
(既定 `2*min_separation+1`)の窓で背景を引いた強度で重み付けした重心
—— これが副画素の位置精度を出す唯一の理由で、連結成分の重心
(:func:detect.segment_objects)は硬いしきい値の分だけ明るさに依存して
偏る。
明るい順に並べて `max_stars 個で打ち切る。縁から edge_margin`
(既定 `centroid_box // 2`)より内側の星だけを返す —— 窓が画像からはみ出す
星は重心が縁側へ引っ張られるので、黙って偏った値を返すより落とす。
Returns `(N, 2) float64 keypoints。1 個も無ければ (0, 2)`
(空は正当な答えなので例外にしない —— 星が無い視野は存在する)。
Raises `ValueError`: 2-D でない / 非有限を含む / *threshold_sigma* が
非正 / *min_separation* が 1 未満 / *max_stars* が 1 未満の場合。
★名前は天体だが、中身は分野中立(頑健な背景推定 + kσ 超えの局所最大 +
重心)。点状目標 / 輝点 / スポット / 小さい目標 / 微小欠陥 / 粒子の
検出と副画素位置決めに、そのまま使える —— 捜索救難の空撮で漂流物を拾う、
蛍光顕微鏡の輝点を数える、といった用途はこれが正解の入口。2026-09-08 に
この段を足した: それまで `op_find("点 検出") / ("スポット 検出")` /
`("小さい目標")` はいずれも 0 件で、副画素重心つきの座標列を返す
2-D op はこれしか無いのに、和文からは辿り着けなかった
(`poc_search_sweep_width` が踏んだ)。領域の重心が要るなら
:func:blob_label 系、極大のマスクだけなら `sk_local_maxima`。
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.
• astro_stacking — py -3.11 examples/astro_stacking.py
• poc_exoplanet_transit — py -3.11 examples/poc_exoplanet_transit.py
• poc_search_sweep_width — py -3.11 examples/poc_search_sweep_width.py
• poc_star_astrometry — py -3.11 examples/poc_star_astrometry.py
keypoints 를 입력으로 받는 것)photometry)*Provenance: astrostack.py — ASTROSTACK 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.