Opencv之图像自适应阈值二值化处理adaptiveThreshold

本文介绍了自适应阈值在图像处理中的应用,对比固定阈值的二值化处理,自适应阈值能够根据图像的局部特征动态设定阈值,实现更精准的二值化效果。文中详细解释了cv2库中adaptiveThreshold函数的使用方法,包括参数说明及代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、自适应阈值

二、adaptiveThreshold

三、代码


 

一、自适应阈值

相比于固定阈值的二值化处理【https://blog.youkuaiyun.com/qq_37385726/article/details/82015545

自适应阈值不需要确定一个固定的阈值,而是可以根据对应的自适应方法,通过图像的局部特征自适应的设定阈值,做出二值化处理。

 

二、adaptiveThreshold

adaptiveThreshold(

  1. img  输入图像. 
  2. double max_value,
  3. int adaptive_method=cv2.ADAPTIVE_THRESH_MEAN_C,cv2.ADAPTIVE_THRESH_MEAN_C
  4. int threshold_type=CV_THRESH_BINARY,cv2.THRESH_BINARY_INV
  5. int block_size=3,
  6. double param=5

)

 CV_ADAPTIVE_THRESH_MEAN_C 和 CV_ADAPTIVE_THRESH_GAUSSIAN_C, 它是一个从均值或加权均值(区域中(x,y)周围的像素根据高斯函数按照他们离中心点的距离进行加权计算)提取的常数

参数6,param是在 adaptive_method计算出结果后,需要再减去param

 

 

三、代码

import cv2

img1 = cv2.imread('./Image/letter.png',cv2.IMREAD_GRAYSCALE)


img1 = cv2.resize(img1,(300,300),interpolation=cv2.INTER_AREA)
cv2.imshow('img1',img1)


res1 = cv2.adaptiveThreshold(img1,255,cv2.ADAPTIVE_THRESH_GAUSSIAN_C,cv2.THRESH_BINARY,25,5)
res2 = cv2.adaptiveThreshold(img1,255,cv2.ADAPTIVE_THRESH_MEAN_C,cv2.THRESH_BINARY,25,5)

cv2.imshow('res1',res1)
cv2.imshow('res2',res2)

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值