边缘算子


  • sobel算子
    • 用于检测图像中 x 方向或 y 方向的边缘,先计算出边缘的值,在合并结果
    • cv.Sobel( img, ddepth, dx, dy, kernal_size)
      • ddepth:输出图像的数据类型
      • 1、dx:水平方向检测:cv.Sobel(img,ddepth,1,0,ksize)
      • 2、dy:垂直方向检测:cv.Sobel(img,ddepth,0,1,ksize)
      • 3、检查之后的值:可能为负数也可能大于255,需要将值转为unit8:cv.convertScaleAbs()
      • 4、在使用图形的混合cv.addweighted(x,alpha,y,beta,gamma)
        • 将 x 方向和 y 方向的 Sobel 边缘按权重合并,得到完整的边缘图像。
        • 一定要用灰度图进行边缘检测
  • 拉普拉斯算子
    • 用于检测图像中所有方向的边缘
    • cv.Laplician(img,ddepth,ksize)
      • 检查之后的值:可能为负数也可能大于255,需要将值转为unit8:cv.convertScaleAbs()
  • canny算子
    • cv.Canny(img,ddepth,dmin,dmax)
      • dmin:低于这个值,丢弃
      • dmax:高于这个值作为边界保留
      • canny里面带了sobel算子