더북(TheBook)

대부분의 OpenCV 필터링 함수는 기본적으로 그림 7-3과 같은 방식으로 가장자리 픽셀을 확장하지만, 다른 방식으로 가상의 픽셀 값을 설정할 수도 있습니다. OpenCV 필터링 연산에서 사용할 수 있는 가장자리 픽셀 확장 방법을 표 7-1에 나타냈습니다. 표 7-1에 나타난 상수는 BorderTypes라는 이름의 열거형 상수 중 일부입니다.

▼ 표 7-1 OpenCV 필터링에서 가장자리 픽셀 처리 방법

BorderTypes 열거형 상수

설명

BORDER_CONSTANT

BORDER_REPLICATE

BORDER_REFLECT

BORDER_REFLECT_101

BORDER_REFLECT101

BORDER_REFLECT_101과 같음

BORDER_DEFAULT

BORDER_REFLECT_101과 같음

 

OpenCV에서 필터 마스크를 사용하는 일반적인 필터링은 filter2D() 함수를 이용하여 수행합니다. filter2D() 함수 원형은 다음과 같습니다.

void filter2D(InputArray src, OutputArray dst, int ddepth,
              InputArray kernel, Point anchor = Point(-1,-1),
              double delta = 0, int borderType = BORDER_DEFAULT);

src

입력 영상

dst

출력 영상. src와 같은 크기, 같은 채널 수를 갖습니다.

ddepth

결과 영상의 깊이

kernel

필터링 커널. 1채널 실수형 행렬

anchor

고정점 좌표. Point(-1, -1)을 지정하면 커널 중심을 고정점으로 사용합니다.

delta

필터링 연산 후 추가적으로 더할 값

borderType

가장자리 픽셀 확장 방식

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.