介绍
转载,原文链接:https://blog.csdn.net/weixin_42272768/article/details/110746790
阈值的作用是根据设定的值处理图像的灰度值,比如灰度大于某个数值像素点保留。通过阈值以及有关算法可以实现从图像中抓取特定的图形,比如去除背景等。
cv2中的阈值相关函数有:
- 普通阈值函数
threshold
- 自适应阈值函数
adaptivthreshold
首先介绍简单阈值函数:
[retval, dst] = cv2.threshold(src, thresh, maxval, type[, dst])
"""
src是灰度图像
thresh是起始阈值
maxval是最大值
type是定义如何处理数据与阈值的关系
"""
type
类型:
选项 | 像素值>thresh | 其他情况 |
---|---|---|
cv2.THRESH_BINARY | maxval | 0 |
cv2.THRESH_BINARY_INV0 | 0 | maxval |
CV2.THRESH_TRUNC | thresh | 当前灰度值 |
cv2.THRESH_TOZERO | 当前灰度值 | 0 |
cv2.THRESH_TOZERO_INV | 0 | 当前灰度值 |
另外还有几种类型一般与以上混用:
- cv2.THRESH_OTSU:使用最小二乘法处理像素点,适合双峰图
- cv2.THRESH_TRIANGLE:使用三角算法处理像素点,适合单峰图
- cv2.THRESH_MASK