void cv::Sobel(
    Mat src,
    Mat dst,
    int ddepth,
    int dx,
    int dy,
    int ksize = 3,
    double scale = 1,
    double delta = 0,
    int borderType = BORDER_DEFAULT
)
void Cv2.Sobel(
    Mat src,
    Mat dst,
    MatType ddepth,
    int xorder,
    int yorder,
    int ksize = 3,
    double scale = 1,
    double delta = 0,
    BorderTypes borderType = BorderTypes.Reflect101
)
dst = cv2.Sobel(
    src,
    ddepth,
    dx,
    dy,
    ksize = None,
    scale = None,
    delta = None,
    borderType = None
)


소벨 계산식(Sobel Formula): $$ \text{dst} = \frac{\partial^{xorder+yorder} \text{src}}{\partial x^{xorder} \partial y^{yorder}} $$ 방향에 따른 필터 형태(Filter type according to direction): $$ \begin{matrix} \begin{bmatrix} -1 & 0 & 1 \\ -2 & 0 & 1 \\ -1 & 0 & 1 \end{bmatrix} & \begin{bmatrix} 1 & 2 & 1 \\ 0 & 0 & 0 \\ -1 & -2 & -1 \end{bmatrix} \\ \ 3 \times 3 \ \text{Vertical Mask} & 3 \times 3 \ \text{HorizontalMask} \\ \begin{bmatrix} -1 & -1 & 0 & 1 & 1 \\ -1 & -1 & 0 & 1 & 1 \\ -2 & -2 & 0 & 2 & 2 \\ -1 & -1 & 0 & 1 & 1 \\ -1 & -1 & 0 & 1 & 1 \end{bmatrix} & \begin{bmatrix} 1 & 1 & 2 & 1 & 1 \\ 1 & 1 & 2 & 1 & 1 \\ 0 & 0 & 0 & 0 & 0 \\ -1 & -1 & -2 & -1 & -1 \\ -1 & -1 & -2 & -1 & -1 \end{bmatrix} \\ \ 5 \times 5 \ \text{Vertical Mask} & 5 \times 5 \ \text{HorizontalMask} \end{matrix} $$


요약(Summary)

입력 이미지의 X축과 Y축에 따라 미분한 값을 계산합니다.

매개변수(Parameter)

입력 이미지(src) 소벨을 적용하려는 입력 이미지

출력 이미지(dst) 소벨이 적용된 이미지

출력 이미지 정밀도(ddepth) 출력 이미지의 정밀도 설정

X 방향 차수(dx, xorder) X축 미분 차수

Y 방향 차수(dy, yorder) Y축 미분 차수

커널 크기(ksize) 커널의 크기

비율(scale) 필터링 된 픽셀에 곱해지는 값

오프셋(delta) 필터링 된 픽셀에 더해지는 값

외삽 방식(borderType) 이미지 밖의 픽셀을 외삽하는데 사용되는 방식

반환값(Returns)

출력 이미지(dst) 소벨이 적용된 이미지