Release notes
1.0.0
2026/10/07- 3D Inspection의 최초 릴리스입니다. CAD 부품 온보딩, 이미지 식별, 3D 스캔 검사를 Python API로 제공합니다.
[모델 추가]- 검출, 분할, feature 추출 모델의 weight 번들을 추가하였습니다. 다운로드 방법은 Getting started의 리소스 다운로드 절에 있습니다.
1_2_0.3didet,1_2_0.3diseg,1_2_0.3difeat
- 검출, 분할, feature 추출 모델의 weight 번들을 추가하였습니다. 다운로드 방법은 Getting started의 리소스 다운로드 절에 있습니다.
[기능 추가]- CAD 부품을 하나씩 온보딩하는 OnboardHandler를 추가하였습니다.
- OnboardHandler.build는
device와enable_timerconfig로 handler를 생성합니다. - OnboardHandler.onboard는 CAD 파일 경로 하나를 받아 식별 template, 기하 캐시, 썸네일을
PartRecord로 반환합니다. 입력 형식은.ply,.stl,.obj,.stp,.step입니다. - OnboardHandler.validate는 부품을 등록하지 않고 온보딩 가능한 형상인지 판정해 규칙별 실패 사유를 반환합니다.
- OnboardHandler.get_time은 직전
onboard의 단계별 누적 소요 시간을 ms 단위로 반환합니다.
- OnboardHandler.build는
- 이미지 식별과 스캔 검사를 하나의 handler로 제공하는 InferenceHandler를 추가하였습니다.
- InferenceHandler.build는
inference_option,device,enable_timerconfig로 handler를 생성합니다. - InferenceHandler.warmup은 더미 입력으로 식별 파이프라인과 검사 편차 단계를 1회 실행해 초회 호출 지연을 제거합니다.
set_catalog뒤에 호출합니다.
- InferenceHandler.build는
- 카탈로그 설정을 추가하였습니다. 호출 순서는 Call Order에, 활성 카탈로그가 필요한 메서드는 Active Catalog에 있습니다.
- 호출자가 온보딩 산출물
PartRecord에 intpart_id를 부여해CatalogData를 조립하고, InferenceHandler.set_catalog로 활성 카탈로그를 설정합니다. - 카탈로그 교체도 같은 호출이며 모델을 다시 로드하지 않습니다.
- 부품의
config_digest가 추론 쪽 온보딩 구성과 다르면CatalogConfigMismatchError의code를 반환하고 이전 활성 카탈로그를 유지합니다. 이 경우 해당 부품은 다시 온보딩해야 합니다.
- 호출자가 온보딩 산출물
- 이미지 식별을 추가하였습니다.
- InferenceHandler.identify_images는 부품 하나를 촬영한 RGB 이미지 목록을 받아 top-M candidate와 이미지별 detection을 반환합니다.
boxes로 bbox를 지정한 이미지는 그 bbox로 mask를 산출합니다.
- 스캔 검사를 추가하였습니다. 검사 한 건은 세 호출로 구성됩니다.
- InferenceHandler.prepare_scan은 스캔 파일을 읽어 배경을 제거한
ScanSurface를 반환합니다. 스캔 하나에 부품 하나가 전제입니다. - InferenceHandler.identify_scan은 그
ScanSurface의 부품 후보 순위를 활성 카탈로그에서 반환합니다. - InferenceHandler.inspect_scan은
ScanSurface를 호출자가 전달한PartGeometry와 대조해 부품 → 스캔 pose와 스캔 삼각형별 부호 있는 표면 편차를 반환합니다.
- InferenceHandler.prepare_scan은 스캔 파일을 읽어 배경을 제거한
- inference option을 추가하였습니다. 설명은 Inference Option에 있습니다.
- target은
identify이며 key는top_m,aggregate,input_resize입니다. - InferenceHandler.get_default_inference_option은 기본값을, InferenceHandler.get_inference_option은 현재 값을 반환합니다.
- InferenceHandler.set_inference_option은 모델을 다시 build하지 않고 값을 설정합니다.
- target은
- 반환 규약과 오류
code를 정의하였습니다. 설명은 API Return Value와 Error Code에 있습니다.- 모든 public 메서드는 (
code,message,value)의tuple을 반환합니다.code는 성공 시 0, 실패 시 음수 6자리 정수입니다. - 메서드별
Raises의 오류는 예외로 전파되지 않고code로 반환되며, 절댓값의 끝 세 자리가 오류 종류입니다.
- 모든 public 메서드는 (
- CAD 부품을 하나씩 온보딩하는 OnboardHandler를 추가하였습니다.
[기타 사항]- Python 버전은 3.11.9입니다.
- 허용하는 SaigeToolkit 버전 범위는
requirements/common.txt에 있습니다.