opencv

OpenCV中sobel算子怎么使用

小亿
92
2023-12-08 04:51:35
栏目: 编程语言

在OpenCV中,可以使用cv2.Sobel()函数来应用Sobel算子。该函数的语法如下:

dst = cv2.Sobel(src, ddepth, dx, dy[, ksize[, scale[, delta[, borderType]]]])

参数说明:

使用Sobel算子的示例代码如下:

import cv2
 
img = cv2.imread('image.jpg', 0)
 
# 在x方向上应用Sobel算子
sobelx = cv2.Sobel(img, cv2.CV_64F, 1, 0, ksize=3)
 
# 在y方向上应用Sobel算子
sobely = cv2.Sobel(img, cv2.CV_64F, 0, 1, ksize=3)
 
# 计算梯度幅值和角度
gradient_magnitude = cv2.magnitude(sobelx, sobely)
gradient_angle = cv2.phase(sobelx, sobely, angleInDegrees=True)

在这个示例中,首先使用cv2.imread()函数加载输入图像(假设为灰度图像)。然后,通过调用cv2.Sobel()函数分别在x和y方向上应用Sobel算子。最后,使用cv2.magnitude()函数计算梯度幅值,使用cv2.phase()函数计算梯度角度。

0
看了该问题的人还看了