Sobel算子
先来看看sobel算子矩阵的构造,称作卷积核更合适,这就是卷积运算
以3*3卷积核为例
可以看出Gx卷积核会增强垂直方向两边的差异,而Gy卷积核会增强水平方向上下的差异。
同时可以看到,离中间越近代表的权重越大,同时差异会更加明显,类似高斯分布
函数:dst = cv2.Sobel(src, ddepth, dx, dy, ksize)
ddepth:图像的深度
dx和dy分别表示水平和竖直方向(要哪个方向哪个就填1)
ksize是Sobel算子的大小
以前面用的圆的图片为例
#这里新增了个参数CV_64F,是因为可能产生负数
#OpenCV对于负数的像素会直接设置为0,而这个参数就是为了避免这种情况
sobelx = cv2.Sobel(img,cv.CV_64F,1,0,ksize=3)
用CV_64F(保留负数)和不用CV_64F(负数置0)的图像结果矩阵区别如下: