cv2.threshold 参数
时间: 2024-06-23 08:01:13 浏览: 115
`cv2.threshold()` 函数是OpenCV库中的一个重要图像处理函数,用于将一幅灰度图像分割成两个阈值范围内的区域,通常用作二值化过程。这个函数有多个参数,它们控制着二值化的过程和结果。以下是主要参数及其含义:
1. `src` (输入):源图像,通常是一个灰度图像数组。
2. `threshold` (阈值):阈值,图像中像素值超过这个阈值会被归为最大值(白色),否则归为最小值(黑色)。这通常是二值化的关键参数。
3. `maxval` (最大值):当像素值超过阈值时,设置为的最大值(白色)。如果是0,则像素值会被设置为255(对于8位图像)或对应于`dtype`的最大值(对于其他深度)。
4. `type` (类型):阈值比较类型,常见的选项有以下几种:
- `cv2.THRESH_BINARY` (0):简单的阈值比较,像素大于阈值则设为最大值,否则设为最小值。
- `cv2.THRESH_BINARY_INV` (1):与上一种相反,像素小于阈值设为最大值,否则设为最小值。
- `cv2.THRESH_TRUNC` (4):仅保留像素大于等于阈值的部分,其余部分设为阈值。
- `cv2.THRESH_TOZERO` (6):像素小于阈值设为0,其余部分不变。
- `cv2.THRESH_TOZERO_INV` (7):像素大于等于阈值设为0,其余部分不变。
5. `mask` (可选):用于指定感兴趣区域的掩码。如果提供,只有掩码为True的位置才会应用阈值操作。
6. `borderType` (可选):边界处理方式,如`cv2.BORDER_CONSTANT`(默认值)使用常数值填充,`cv2.BORDER_REPLICATE`复制边缘像素等。
阅读全文