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) 무게중심 목록을 돌려줍니다.
배경과 잡음을 noise_sigma와 같은 강건 추정으로 구하고, background + threshold_sigma * sigma를 넘는 국소 최대를 고른다(최대값 필터와의 일치로 판정하므로 min_separation 화소 이내에 2개는 나오지 않는다). 중심은 임계값의 화소 위치가 아니라 centroid_box (기본값 2*min_separation+1) 창에서 배경을 뺀 강도로 가중한 무게중심 —— 이것이 서브픽셀 위치 정밀도를 내는 유일한 이유이며, 연결 성분의 무게중심(detect.segment_objects)은 딱딱한 임계값만큼 밝기에 의존하여치우친다.
밝은 순으로 정렬하여 max_stars개에서 잘라낸다. 가장자리에서 edge_margin (기본값 centroid_box // 2)보다 안쪽의 별만 반환한다 —— 창이 이미지에서 삐져나오는별은 무게중심이 가장자리 쪽으로 끌려가므로, 조용히 치우친 값을 반환하기보다 버린다.
Returns (N, 2) float64 keypoints. 하나도 없으면 (0, 2) (빈 것은 정당한 답이므로 예외로 하지 않는다 —— 별이 없는 시야는 존재한다).
Raises ValueError: 2-D가 아님 / 비유한 값을 포함 / *threshold_sigma*가양수가 아님 / *min_separation*이 1 미만 / *max_stars*가 1 미만인 경우.
★이름은 천체이지만, 내용은 분야 중립(강건한 배경 추정 + kσ 초과의 국소 최대 + 무게중심). 점 형태 목표 / 휘점 / 스폿 / 작은 목표 / 미소 결함 / 입자의검출과 서브픽셀 위치 결정에 그대로 쓸 수 있다 —— 수색 구조 항공 촬영에서 표류물을 찾는다, 형광 현미경의휘점을 센다 같은 용도에는 이것이 정답의 입구이다. 일본어 쿼리 op_find("輝点 検出") / op_find("点状目標") / op_find("粒子 検出")는이 op를 맨 앞에 반환한다(2026-10-11 실측. op_find("点 検出")는 "점" "검출"이많은 op에 걸리므로 상위에 오지 않는다). 2026-09-08에 이 단락을 추가하기 전까지는 일본어복수 단어 쿼리가 검색 구조상 0건이 되어, 서브픽셀 무게중심이 붙은 좌표열을 반환하는 2-D op는 이것뿐인데도 일본어로는 도달할 수 없었다(poc_search_sweep_width가 밟았다). 영역의 무게중심이 필요하면 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.