cv2.threshold()参数
时间: 2023-10-28 08:52:45 浏览: 66
cv2.threshold() 是 OpenCV 中的一个图像处理函数,用于将灰度图像进行二值化处理。它有以下两个参数:
1. src:要处理的原始图像,必须为灰度图像。
2. thresh:用于对像素值进行分类的阈值。
除此之外,还有两个可选参数:
3. maxval:当像素值高于(或低于,具体取决于阈值类型)阈值时,像素值应设置为的最大值。
4. type:二值化操作的类型,可以是以下几种类型之一:
- cv2.THRESH_BINARY:当像素值高于阈值时,将其设置为 maxval,否则将其设置为0。
- cv2.THRESH_BINARY_INV:当像素值高于阈值时,将其设置为0,否则将其设置为 maxval。
- cv2.THRESH_TRUNC:当像素值高于阈值时,将其设置为阈值,否则不变。
- cv2.THRESH_TOZERO:当像素值低于阈值时,将其设置为0,否则不变。
- cv2.THRESH_TOZERO_INV:当像素值低于阈值时,将其设置为 maxval,否则不变。
相关问题
cv2.threshold返回参数
当你在OpenCV中使用`cv2.threshold()`函数对图像进行二值化处理时,它通常返回两个值:`ret`和`thresh`。
- `ret` (结果码):这是一个整数值,表示阈值处理是否成功。常见的返回值及其意义如下:
- `0`:成功,阈值操作按照预期进行了。
- 正数:表示出现了错误,需要查阅OpenCV文档了解具体的错误代码含义。
- `thresh` (阈值处理后的图像):这是一个二维数组(Mat对象),与输入图像的维度相同,包含了处理后的二值图像。每个元素要么是0(如果原始像素值小于阈值),要么是255(如果原始像素值大于等于阈值)。如果是`cv2.THRESH_BINARY_INV`模式,那么低值会被设为255,高值设为0。
这两个返回值一起提供了一种检查操作是否成功的机制,并让你可以获取到实际的二值化结果。例如,你可以先存储`ret`然后根据其值判断是否成功,再进一步处理`thresh`数组。
cv2.threshold函数参数
cv2.threshold函数是OpenCV库中用于图像阈值化的函数。它的参数如下:
1. src:要进行阈值化的输入图像,通常为灰度图像。
2. thresh:阈值,用于将像素值分为两个类别。具体取值根据下一个参数type决定。
3. maxval:当像素值高于(或低于,根据type参数)阈值时,所赋予的新像素值。
4. type:阈值化的类型,可选取以下几种:
- cv2.THRESH_BINARY:大于阈值的像素值设置为maxval,小于等于阈值的像素值设置为0。
- cv2.THRESH_BINARY_INV:大于阈值的像素值设置为0,小于等于阈值的像素值设置为maxval。
- cv2.THRESH_TRUNC:大于阈值的像素值设置为阈值,小于等于阈值的像素值保持不变。
- cv2.THRESH_TOZERO:大于阈值的像素值保持不变,小于等于阈值的像素值设置为0。
- cv2.THRESH_TOZERO_INV:大于阈值的像素值设置为0,小于等于阈值的像素值保持不变。
该函数会返回两个值:ret和threshed。其中ret是选择的阈值(在自适应阈值化中会有所不同),threshed是进行阈值化后的图像。
阅读全文