sobel算子 1 2 1
scharr算子 3 10 3
两者计算量和计算速度是一样的,但是scharr算子准确度更高,在梯度检测时用的也更多。
函数如下所示:
参数解释见上一篇sobel算子。
求两个方向上的梯度:使用fx fy同时为1,这种编程方式会报错,故和sobel算子不一样 ,只能有一种编程方式,即相加,使用函数addWeighted 。
其实也可以说scharr算子是对sobel算子的改进,故
sobel函数的第五个值表示卷积核大小,不可能为负数,所以为-1 时,表示scharr算子。
import cv2
a=cv2.imread('imag