OpenCV-Python:图像二值化

本文介绍了图像二值化的概念,它将图像转化为只有黑白的二值图像。通过设置全局阈值,如cv2.THRESH_BINARY和cv2.THRESH_BINARY_INV,可以实现像素点的灰度值转换。此外,还讨论了自适应阈值方法,适用于不同亮度区域的图像,以获得更好的二值化效果。

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

图像二值化定义

图像的二值化,就是将图像上的像素点的灰度值设置为0或255,也就是将整个图像呈现出只有黑白的视觉效果。

一幅图像包括目标物体、背景和噪声,要想从多值的数字图像中直接提取出目标物体,常用的方法就是设定一个阈值 T,用 T 将图像的数据分成两个部分: 大于 T 的像素群和小于 T 的像素群。这是研究灰度变换的特殊方法,称为图像的二值化(Binarization)。

全局阈值

Python-OpenCV 中提高阈值函数:

cv2.threshold (src, threshold, maxValue, method)

# src : 源图
# threshold : 设定的阈值
# maxValue : 设定的最大值
# method : 阈值化的方法 
#          cv2.THRESH_BINARY
#          cv2.THRESH_BINARY_INV
#          cv2.THRESH_TRUNC
#          cv2.THRESH_TOZERO
#          cv2.THRESH_TOZERO_INV

src 源图:实线表示原始数据;虚线便是设定的阈值

 cv2.THRESH_BINARY:大于阈值的像素点灰度值设定为 maxValue (如8位灰度值最大为255),灰度值小于阈值的像素点的灰度值设定为0。

cv2.THRESH_BINARY_INV: 大于阈值的像素点的灰度值设定为0,而小于阈值的像素点的灰度值设定为 maxValue。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值