opencv转成 16位灰度图_20、 OpenCV导数和梯度

在图像处理中,导数和梯度的概念有点类似,或者说有些关联。梯度在图像处理中非常重要,可以有说,几乎所有的图像处理算法都与梯度有关。梯度包括方向和幅值两部分。最常见的利用梯度的算法就是边缘检测算法。如sobel算法等。在OpenCV中,可以利用sobel、Scharr计算一阶导数或梯度,利用Laplacian计算二阶导数或梯度。

1、Sobel算子 

用于表示微分的最常用算子是Sobel算子。Sobel算子存在任何导数阶以及混合偏导数(例如,∂2/∂x∂y)。sobel算子如下。

void cv::Sobel(

cv::InputArray src,

cv::OutputArray dst,

int ddepth,

int xorder,

int yorder,

cv::Size ksize = 3,

double scale = 1,

double delta = 0,

int borderType = cv::BORDER_DEFAULT

);

src和dst是图像的输入和输出。参数ddepth允许选择输出的深度(例如,CV_32F)。如果src是一个8位图像,那么dst的深度应至少为CV_16S以避免溢出。xorder和yorder是导数的阶数。通常,使用0,1或至多2;0值表示该方向上没有导数。ksize参数应该是奇数,是要使用的滤波器的宽度(和高度)。borderType

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值