물체 검출과 오검출 평가

검출 개수가 많다고 좋은 설정은 아닙니다. 알고 있는 원의 위치·크기와 비교해 오검출을 판단합니다.

실습 전에

01 원을 많이 찾으면 더 잘 찾은 걸까요?

설명

놓친 원·중복·오검출과 중심·반지름 오차를 함께 봐야 합니다.

02 잡음을 줄이면 검출은 항상 좋아질까요?

설명

전처리로 잡음이 줄어도 경계가 흐려질 수 있어 같은 정답과 비교합니다.

실행 조건

opencv-python-headless·NumPy·Matplotlib을 사용합니다.

실습

실습용 노트북 미리보기실습용 노트북 다운로드

1. 정답이 있는 영상 만들기

시작 조건

160×200 Gray 영상에 중심 (50,50), (140,70), (90,120), 반지름 15,20,12인 원을 그립니다.

진행 방법

  1. 제공된 원 영상에 HoughCircles를 적용하세요.
  2. 검출 결과를 원본 위에 그려 실제 원과 대응시키세요.

남길 결과

기록 항목과 확인할 점
원
실제 중심·반지름
검출 중심·반지름
오차 [pixel]

확인할 점

  • 검출하지 못한 경우를 오차 0으로 기록하지 않았는가?
  • 가까운 원을 중복 대응시키지 않았는가?

2. 검출 기준 하나 바꾸기

시작 조건

param2=15와 25를 비교합니다. 같은 영상·반지름 범위를 유지합니다.

진행 방법

  1. 검출 수·놓친 원·중복·오검출을 각각 세세요.
  2. 중심 오차 5 pixel 이내이고 반지름 오차 4 pixel 이내인 검출을 대응으로 정하세요.
  3. 어떤 기준이 더 나은지 검출 수가 아니라 오류의 종류로 판단하세요.

남길 결과

기록 항목과 확인할 점
param2
대응된 원
놓친 원
오검출
중심 오차

확인할 점

  • 서로 다른 임계값에서 같은 대응 기준을 사용했는가?
  • 원 하나에 여러 검출을 모두 정답으로 세지 않았는가?

3. 흐림·잡음에서 실패 찾기

시작 조건

seed=7, 표준편차 15의 영상 잡음을 추가하고 같은 설정을 적용합니다.

진행 방법

  1. 검출 전에 Median 또는 Gaussian Filter 중 하나를 선택하세요.
  2. 필터 전후의 검출과 계산 시간을 비교하세요.
  3. 영상 기반 제어에서 검출을 신뢰할 수 없는 조건을 한 가지 정하세요.

남길 결과

기록 항목과 확인할 점
전처리
검출 수
대응 성공
처리 시간 [ms]

확인할 점

  • uint8 변환 전에 값을 0…255로 제한했는가?
  • 시간은 한 번의 실행 수치로 알고리즘의 일반적 속도라고 단정하지 않았는가?

공식 예제·데이터