![]() |
OpenCV 4.12.0
开源计算机视觉
|
这里,事情很简单。如果像素值大于阈值,则将其分配一个值(可能是白色),否则将其分配另一个值(可能是黑色)。
我们使用以下函数:cv.threshold (src, dst, thresh, maxval, type)
| src | 输入数组。 |
| dst | 与 src 具有相同大小和类型以及相同通道数的输出数组。 |
| thresh | 阈值。 |
| 最大值 | 与 cv.THRESH_BINARY 和 cv.THRESH_BINARY_INV 阈值类型一起使用的最大值。 |
| type | 阈值类型(参见 cv.ThresholdTypes)。 |
阈值类型 - OpenCV 提供了不同的阈值处理样式,它由函数的第四个参数决定。不同的类型是
在前一节中,我们使用全局值作为阈值。但是在图像在不同区域具有不同光照条件的所有情况下,它可能不是很好。在这种情况下,我们进行自适应阈值处理。在这种情况下,算法会计算图像小区域的阈值。因此,我们为同一图像的不同区域获得不同的阈值,并且对于光照变化的图像,它可以为我们提供更好的结果。
我们使用以下函数:cv.adaptiveThreshold (src, dst, maxValue, adaptiveMethod, thresholdType, blockSize, C)
| src | 源 8 位单通道图像。 |
| dst | 与 src 具有相同大小和相同类型的目标图像。 |
| maxValue | 分配给满足条件的像素的非零值 |
| adaptiveMethod | 要使用的自适应阈值算法。 |
| thresholdType | 必须为 cv.THRESH_BINARY 或 cv.THRESH_BINARY_INV 的阈值类型。 |
| blockSize | 用于计算像素阈值的像素邻域的大小:3、5、7,依此类推。 |
| C | 从均值或加权均值中减去的常数(请参见下面的详细信息)。通常,它是正数,但也可能为零或负数。 |
adaptiveMethod - 它决定如何计算阈值