sequence_monitor_expected_sequence, sequence_monitor_normal_class_sequence, cycle_anomaly_stats, cycle_anomaly_intervals, 전역 sigma_level 기본값을 조합해 구성하며, per-class sigma override가 있으면 우선 적용합니다.
standby 여부는 expected − normal 차집합으로 판정합니다.
isCycleStart는 현재 정책상 classId == 1인 클래스에만 True로 부여됩니다 (expected_sequence 내 위치와 무관).
Checkpoint metadata class_names 자동 적재
Trainer.save_checkpoint(metadata={"class_names": ...})로 저장된 클래스명 매핑을 inference build 시 자동으로 읽어 InferenceHandler._class_names에 보관합니다.
dict[int, str]과 list[str] (인덱스를 class_id로 해석) 두 형태를 모두 지원합니다.
get_metadata()는 저장된 매핑을 우선 사용하고, 호출 인자 class_names로 일부만 override할 수 있습니다.
1.0.0-rc29
2026/04/14
[기능 수정]
Cycle Anomaly 통계 단위를 프레임에서 밀리초(ms)로 변환
compute_cycle_length_stats에 fps 파라미터를 추가하여, 학습 시 산출하는 사이클 길이 통계(mean, sigma)를 프레임 단위가 아닌 밀리초(ms) 단위로 저장합니다.
추론 시 timestamps_are_ms=True 환경에서 cycle_length가 ms 단위로 들어오는 것과 단위가 일치하여, z-test 이상치 판정의 정확도가 향상됩니다.
사용자가 직접 지정하거나, 미지정 시 학습 clips의 첫 번째 영상에서 자동 추출합니다.
추출된 fps는 체크포인트 config에 fps 키로 함께 저장됩니다.
[CI/CD]
Azure Pipeline Teams 알림 개선
릴리즈 태그 배포 시 Teams 알림에 release_note.md의 최신 섹션 내용을 자동으로 포함하도록 개선했습니다.
1.0.0-rc28
2026/04/07
[버그 수정]
Lazy cycle projection 체크포인트 로드 호환성 수정
MulticlassClassifier.load_state_dict()에서 _cycle_proj.weight가 UninitializedParameter 또는 UninitializedBuffer인 체크포인트를 안전하게 처리하도록 수정했습니다.
이로 인해 lazy projection이 초기화되지 않은 checkpoint를 inference build 경로에서 로드할 때 발생하던 Can't access the shape of an uninitialized parameter or buffer 오류를 방지합니다.
1.0.0-rc27
2026/03/27
[기능 수정]
Cycle Anomaly interval 조회/기본값 계산 보강
체크포인트 또는 런타임 설정에 stats만 있고 명시 intervals가 없어도, get_inference_option("cycle_anomaly_intervals")에서 mean ± sigma_level * sigma 기반의 파생 interval을 자동으로 반환합니다.
get_default_inference_option("cycle_anomaly_intervals")도 동일한 파생 interval을 반환합니다.
클래스별 test_mode, sigma_level_1, sigma_level_2 오버라이드가 있으면 해당 값을 반영해 interval을 계산합니다.
Interval 모드 fallback 정합성 개선
full_interval / marginal_interval 모드에서 명시 intervals가 없는 클래스는, getter와 동일한 파생 interval을 사용해 판정하도록 맞췄습니다.
anomaly_by_cycle_detector 모드 추가. (full_interval, marginal_interval)
full interval 일 경우, stats에 {class_id: {lower_full: float, upper_full: float}, ...} 제공 시, lower_full <= cycle_length <= upper_full 방식으로 cycle anomaly를 판단함.
marginal_interval일 경우, stats에 {lower_margin: float, upper_margin: float, base_time: float} 제공 시, base_time - lower_margin <= cycle_length <= base_time + upper_margin 방식으로 cycle anomaly를 판단함.
interval 활용 시, lower_time, upper_time 키가 추가됨.
is_anomaly_by_tracked_coordinates 기능 구현.
get_cycles 아웃풋에 centers, average_distance, max_distance, within_score_ratio, path_template 키 추가.
셀 누락이 발생한 경우(is_anomaly_by_omitted_cell == True), cell_check_result의 missing_boxes 필드에 list[list[int]] 형식으로 누락된 위치의 박스를 리턴합니다.
자세한 내용은 API Reference를 참고해주세요.
1.0.0-rc9
2025/09/30
[Hotfix]
FrameSelector 내부 patience 8 -> 4 로 변경
1.0.0-rc8
2025/09/30
[Hotfix]
checkpoint Load중 cycle_aware 키가 없을 경우 대응 처리.
1.0.0-rc7
2025/09/29
[Hotfix]
모델 호환성 추가 및 ContextSplitter 잘못 수정된 것 다시 수정.
1.0.0-rc6
2025/09/29
[기능 추가]
*_standby 클래스를 위한 단측 검정 기능 추가
[버그 수정]
class를 {n}th_class 등으로 확장 시 누락되는 현상 수정.
[기능 수정]
FrameSelector 내부 patience 5 -> 8로 증가
1.0.0-rc5
2025/09/29
[기능 수정]
FrameSelector 내부 patience 3 -> 5로 증가
sigma_level Validation 기능 기존 90%, 95%, 99% 유의수준에서, 양수로만 제한.
1.0.0-rc4
2025/09/26
[기능 추가]
CycleCounterInferenceHandler 내 detection 기능 추가. cell과 robot arm head를 검출합니다. robot arm head는 class_index=2 입니다. Detection 모델을 사용하지 않는 경우, output에 detection key가 존재하지 않습니다.
셀 정위치를 확인하는 CellChecker 기능이 추가되었습니다. detection 결과와 사전에 정의된 셀 bbox 정보를 활용하여 셀 존재 유무를 판단합니다. 셀이 하나라도 존재하지 않는 경우, CycleInfo의 is_anomaly_by_omitted_cell 값이 True로 전환됩니다.
1.0.0-rc3
2025/09/25
[기능 추가]
CycleCounterInferenceHandler 내 set_anomaly_by_cycle_detector 메소드 추가
CycleInfo 내 불필요한 필드 제거 및 is_anomaly_by_omitted_cell, is_anomaly_by_tracked_coordinates 필드 추가
[버그 수정]
Cycle 기반의 비정상 판단 시, standard deviation이 0 일 경우 epsilon 추가.
infer의 타입 수정 (기존 [List[dict]] 에서 CycleInfo로 변경)
FrameSelection inference option 변경 시 최초 컨피그 보관 후 재빌드 하는 과정 추가.
1.0.0-rc2
2025/09/23
[기능 추가]
VisualAnomalyInferenceHandler 추가
Cycle 기반의 비정상 판단 로직 추가
FrameSelector에서 한 동작에 여러 대표 프레임을 추출할 수 있도록 추가
SaigeObjectDetection, SaigeAnomalyDetection repo Submodule 추가