图像梯度-Sobel算子
其计算梯度的过程为:
- sobel和scharr对应的参数信息:
- src – 输入图像。dst – 输出图像,与输入图像同样大小,拥有同样个数的通道。
- ddepth –输出图片深度;下面是输入图像支持深度和输出图像支持深度的关系:
- src.depth() = CV_8U, ddepth = -1/CV_16S/CV_32F/CV_64F
- src.depth() = CV_16U/CV_16S, ddepth = -1/CV_32F/CV_64F
- src.depth() = CV_32F, ddepth = -1/CV_32F/CV_64F
- src.depth() = CV_64F, ddepth = -1/CV_64F
- 当 ddepth为-1时, 输出图像将和输入图像有相同的深度。输入8位图像则会截取顶端的导数。
- xorder – x方向导数运算参数。yorder – y方向导数运算参数。
- ksize – Sobel内核的大小,可以是:1,3,5,7。 注意:只可以是小于7 的奇数
- scale – 可选的缩放导数的比例常数。delta – 可选的增量常数被叠加到导数中。borderType – 用于判断图像边界的模式。
import cv2
img = cv2.imread("D:/WeChat.picture/pie.jpg")
cv2.waitKey(0)
cv2.destroyAllWindows()
dst = cv2.Sobel(src, ddepth, dx, dy