더북(TheBook)

OpenCV는 소벨 마스크를 이용하여 영상을 미분하는 Sobel() 함수를 제공합니다. Sobel() 함수는 3×3 소벨 마스크 또는 확장된 형태의 큰 마스크를 이용하여 영상을 미분합니다. Sobel() 함수 원형은 다음과 같습니다.

void Sobel(InputArray src, OutputArray dst, int ddepth,
           int dx, int dy, int ksize = 3, double scale = 1, double delta = 0,
           int borderType = BORDER_DEFAULT);

src

입력 영상

dst

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

ddepth

출력 영상의 깊이

dx

x 방향 미분 차수

dy

y 방향 미분 차수

ksize

소벨 커널의 크기

scale

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

delta

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

borderType

가장자리 픽셀 확장 방식

 

Sobel() 함수는 입력 영상 src를 편미분한 결과를 dst에 저장합니다. 결과 영상의 자료형은 ddepth 인자를 통해 명시적으로 지정해야 하고, ddepth에 -1을 지정하면 src와 같은 타입을 사용하는 dst 영상을 생성합니다. dxdy 인자는 각각 x 방향과 y 방향으로의 편미분 차수를 의미하며, Sobel() 함수에 의해 계산되는 결과 행렬 dst는 다음 수식과 같은 의미를 갖습니다.

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