OpenCV之scharr算子详解/scharr算子和sobel算子的区别

scharr算子实际上是sobel算子的优化,scharr算子在处理边缘时比sobel精度高一些。两种算子唯一的区别就是他们的卷积核不同,他们无论在计算时间还是复杂度都是一样的。
在这里插入图片描述
容易看出两种算子卷积核的差异。
opencv中提供给我们scharr算子的函数:

cv2.Scharr(src,ddepth,dx,dy)

参数解释同sobel,不清楚的请移步OpenCV之sobel算子详解
但是我们既然说scharr算子是sobel算子的优化,我们当然也可以通过sobel算子实现scharr算子的功能,只需

cv2.Sobel(src,ddepth,dx,dy,-1)

把sobel函数第五个参数改为-1即可变为scharr算子。

例子

待处理图片
在这里插入图片描述
sobel算子:
在这里插入图片描述
scharr算子:
在这里插入图片描述
区别很明显,scharr算子明显在细节处理要好于sobel算子

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值