sun op• 데이터 종류: image2d → keypoints
• 호출: import fullseye as fs; fs.ledger.sun_pixel_position(image, threshold=0.98, min_area=4)(구현을 직접 호출하려면 import geocam; geocam.sun_pixel_position(image, threshold=0.98, min_area=4), 원장에서 가져오려면 opsgeocam.get("sun_pixel_position"))
영상 속 태양(센서를 포화시키는 원반)의 무게중심 → keypoints (1, 2) = (u, v).
전제는 "태양은 센서를 포화시키고, 구름이나 눈은 포화 직전에서 멈춘다". 값이 threshold(절댓값, 영상은 0~1) 이상인 화소를 8 근방으로 연결하고, 최대 덩어리의 휘도 무게중심을 반환한다. 덩어리가 min_area 미만, 또는 포화 화소가 없으면 "태양이 찍혀 있지 않다"로서 ValueError(조용히 구름의 반사를 반환하지 않는다 —— 태양이산에 가려진 시각의 사진에서, 구름을 태양으로 읽어 자세를 더럽히지 않기 위한 게이트). 영상의 최댓값에 대한 비가아니다(비로 하면, 태양이 없는 사진에서 가장 밝은 구름이 반드시 "태양"이 된다). 야경의 인공 광원이나태양의 수면 반사는 포화할 수 있으므로, 그런 장면에서는 쓸 수 없다. 덩어리는 꽉 찬 원이어야 한다(충전율 ≥ 0.4, 종횡비 ≤ 2.5)—— 노출 과다로 하늘의 띠가 포화된 사진은 가늘고 긴 덩어리가 되어 거부된다.
Args:
image: (H, W) float, 0~1(범위 밖은 ValueError).
threshold: 포화로 간주하는 절댓값(기본값 0.98).
min_area: 덩어리의 최소 화소 수.
Returns:
keypoints (1, 2) float: (u, v).
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.
• poc_public_camera_heading — py -3.11 examples/poc_public_camera_heading.py
keypoints 를 입력으로 받는 것)camera_orientation_from_sun · camera_orientation_from_sun_candidates
sun)sun_position · camera_orientation_from_sun · sun_bloom_fit · camera_orientation_from_sun_candidates
*Provenance: geocam.py — GEOCAM 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.