OpenCV图像阈值

阈值的基本概念是更加简化可视数据以进行分析。将图像转换为灰度时, 必须记住, 灰度仍然至少有255个值。阈值将根据阈值将所有内容转换为白色或黑色。假设我们希望阈值是125(255个中), 那么125以下的所有内容将被转换为0或黑色, 而125之上的所有内容将被转换为255或白色。语法如下:

retval, threshold = cv2.threshold(src, thresh, maxValue, cv2.THRESH_BINARY_INV)

参数-

src:源图像, 应该是灰度图像。

thresh:用于对像素值进行分类。

maxVal:代表像素阈值时要给出的值。

OpenCV提供了不同样式的阈值, 这些阈值用作函数的第四个参数。这些是以下内容:

  • cv2.THRESH_BINARY
  • cv2.THRESH_BINARY_INV
  • cv2.THRESH_TRUNC
  • cv2.THRESH_TOZERO
  • cv2.THRESH_TOZERO_INV

让我们来一个样本输入图像

OpenCV图像阈值

我们以上面的图像作为输入。我们描述阈值实际上是如何工作的。上面的图像有些暗淡, 有点难以阅读。有些部分足够轻便可以阅读, 而另一些部分则需要更多的焦点才能正确阅读。

让我们考虑以下示例:

import cv2
img  = cv2.imread(r'C:\Users\DEVANSH SHARMA\book1.jpg', 1)
retval, threshold = cv2.threshold(img, 62, 255, cv2.THRESH_BINARY)
cv2.imshow("Original Image", img)
cv2.imshow("Threshold", threshold)
cv2.waitKey(0)

输出

OpenCV图像阈值

上面的程序突出显示了图像。现在我们可以轻松读取图像的内容。


微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?