이진화
→ 문턱값을 기준으로 픽셀을 분류한 결과에 따라 값을 재설정하는 작업
→ 이미지 내 관심 객체를 추출
단일 문턱치 처리
명령어 | 설명 |
---|---|
Threshold | input MAT에 문턱값을 적용하여 max_val값으로 이진화한 이미지를 output MAT에 저장 |
flags
threshold type | 설명 |
---|---|
THRESHOLD_BINARY | 일반적인 문턱치 처리 |
THRESHOLD_BINARY_INV | THRESHOLD_BINARY의 결과를 반전시킴 |
THRESHOLD_TRUNC | 문턱값 초과시 문턱값을 적용하고, 이하시 원래 값 유지 (max를 지정하는 것과 같음) |
THRESHOLD_TOZERO | 문턱값 이하시 0값을 적용하고, 초과시 원래 값 유지 (min를 지정하는 것과 같음..?) |
THRESHOLD_TOZERO_INV | THRESHOLD_TOZERO의 결과를 반전시킴 |
THRESHOLD_OTSU | 두개의 피크를 구분하는 문턱값을 찾음 |
→ pixel마다 적절한 thrshold를 자동으로 구함
기준: 이웃한 픽셀의 평균값에 -C 더한 값
명령어 | 설명 |
---|---|
adaptiveThreshold | input MAT에 커널사이즈, C값을 적용하여 자동으로 이진화한 이미지를 output MAT에 저장 |
flags
threshold type | 설명 |
---|---|
ADAPTIVE_THRESH_MEAN_C | 주변 픽셀의 평균값으로 계산 |
ADAPTIVE_THRESH_GAUSSIAN_C | 주변 픽셀에 가우시안 커널을 적용한 값으로 계산 |
→ 2개의 문턱값 설정하여 안 범위에 든 픽셀 추출
→ HSV 컬러 영역에서 H값으로 이진화
명령어 | 설명 |
---|---|
inRange | hsv 이미지를 입력으로 받아 Scale로 구성된 2개의 문턱값을 설정하여 이진화 |
→ 팽창, 침식의 과정을 연속으로 수행
노이즈 제거, 객체 추출을 위해 사용됨
명령어 | 뜻 | 설명 |
---|---|---|
dilate | 침식 (dilation) | kernel, anchor, iteration을 지정하여 이미지의 침식 연산을 수행 |
erode | 팽창 (erosion) | kernel, anchor, iteration을 지정하여 이미지의 팽창 연산을 수행 |
flags
명령어 | 뜻 | 설명 |
---|---|---|
morphologyEx(CV_MOP_OPEN) | 침식 (opening) | 화이트 노이즈를 제거하기 위해 침식 → 팽창 수행 |
morphologyEx(CV_MOP_CLOSE) | 팽창 (closing) | 블랙 노이즈를 제거하기 위해 팽창 → 침식 수행 |