Skip to content

Latest commit

 

History

History
83 lines (57 loc) · 3.51 KB

File metadata and controls

83 lines (57 loc) · 3.51 KB

변경 요약

근거가 된 원문

항목 내용
원문 파일 docs/reference/halcon13/
정의서 절 docs/02_DEFINITIONS.md §
검증 절 docs/03_VERIFICATION.md §

인용: (원문 그대로)

검증 결과

도형 값 기댓값(손계산) 실측 오차 판정
S1
S5
S6
GlimHalconTest.exe 결과 : PASS __ / FAIL __   (exit code __)

정확도 게이트 체크리스트

이 저장소의 PR 은 아래를 전부 만족해야 병합됩니다. 해당 없는 항목은 N/A 와 사유를 적으세요. 빈칸으로 두지 마세요.

순서 (정의 → 검증 → 구현)

  • docs/02_DEFINITIONS.md 에 정의를 먼저 추가했다 (시그니처 · 원문 인용 · 수식 · 예외 · 미결 쟁점)
  • docs/03_VERIFICATION.md 에 기준 도형 S1~S7 기댓값을 손계산 과정과 함께 넣었다 (결과만 적지 않았다)
  • 곡선 도형 기댓값을 연속 기하 공식으로 잡지 않았다 — 디지털 원의 8-연결 체인 길이는 2πR 보다 +5.5% 크다 (docs/04_IMPLEMENTATION_NOTES.md §3). 연속 기하값은 NOTE 로만 남기고 판정은 이산 도형(정사각형 · 직선 · 단일픽셀)으로 했다
  • 원문에 명시가 없는 부분을 추측으로 채우지 않고 미결 쟁점(CV-n / P-n)으로 등록했다

테스트

  • 단위테스트가 위 기댓값과 일치한다 — GlimHalconTest exit code 0
  • 기존 테스트가 하나도 깨지지 않았다 (FAIL 0 유지)
  • Assertion 검사(0 ≤ Circularity ≤ 1, Compactness ≥ 1 또는 0, Convexity ≤ 1, ContLength ≥ 0)를 통과한다

코드

  • 소스 파일 인코딩이 UTF-8 BOM 이다 (BOM 없는 한글 주석은 VS 가 CP949 로 오독해 다음 줄을 삼킨다)
  • 공개 헤더에 외부 타입(cv::Mat 등)을 노출하지 않았다 — PIMPL 로 숨겼다
  • 공개 API 밖으로 예외를 던지지 않는다 (내부 try-catch → 빈 리전 규약 0 반환)
  • 0 나눗셈 · 빈 리전 · 단일 픽셀 · 1픽셀 두께 · 빈 컨투어를 전부 가드했다
  • 좌표계를 혼동하지 않았다 — 공개 API 는 HALCON (row, col), 내부 OpenCV 는 (x, y). 변환 지점을 주석으로 명시했다
  • 스타일을 지켰다 — 클래스/함수 PascalCase, 변수 camelCase, 멤버 m_, 들여쓰기 탭, C++14

문서 · 커밋

  • docs/00_OVERVIEW.md §6 현황표(정의/검증/구현 체크박스)를 갱신했다
  • README 의 진행 배지 · 현황표가 실제와 맞다
  • 커밋이 1기능 1커밋 이고 컨벤셔널 커밋(feat: fix: docs: test: refactor: chore:)이다
  • 빌드 산출물(build/, *.obj, *.lib, *.exe)을 커밋하지 않았다

남은 리스크 / 미결 쟁점