Opencv自动阈值处理

、一、自适应阈值adaptive Threshold

       常规的threshold使用是全局阈值,即整幅图像采用同一个数作为阈值。这种方法并不适应与所有情况,尤其是当同一幅图像上的不同部分的亮度不同时。这种情况下我们需要采用自适应阈值,即adaptiveThreshold,此时的阈值是根据图像上的每一个小区域计算与其对应的阈值。因此在同一幅图像上的不同区域采用的是不同的阈值。adaptiveThreshold的使用方式如下

cv2.adaptiveThreshold(src, maxval, thresh_type, type, Block Size, C)

src:源图片

maxval:填充色

thresh_type:阈值计算方式,分为两种,分别是cv2.ADAPTIVE_THRESH_MEAN_C (相邻区域的平均值)与cv2.ADAPTIVE_THRESH_GAUSSIAN_C(相邻区域取高斯值)

type:阈值类型,cv2.THRESH_BINARY(非黑即白)或cv2.THRESH_BINARY_INV(非白即黑),与threshold中的含义相同,但种类只有这两个。

Block size:计算阈值的区域大小(区域为正方形)

C: 设定的常数,阈值等于均值或者高斯值减去这个常数

二、Otsu’s 二值化

常规的cv2.threshold两个返回值,第一个retVal(得到的阈值值(在后面一个方法中会用到)),第二个就是阈值化后的图像,其中retVal就关系到Otsu二值化,Otsu’s非常适合于图像灰度直方图具有双峰的情况,能够自动根据其直方图计算出一个阈值

Otsu 二值化在cv2.threshold的基础上在尾部补充 | cv2.THRESH_OTSU即可

cv2.threshold (src, thresh, maxval, type| cv2.THRESH_OTSU)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值