阈值的基本概念是更加简化可视数据以进行分析。将图像转换为灰度时, 必须记住, 灰度仍然至少有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
文章图片
我们以上面的图像作为输入。我们描述阈值实际上是如何工作的。上面的图像有些暗淡, 有点难以阅读。有些部分足够轻便可以阅读, 而另一些部分则需要更多的焦点才能正确阅读。
让我们考虑以下示例:
import cv2img= 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图像阈值】上面的程序突出显示了图像。现在我们可以轻松读取图像的内容。
推荐阅读
- OpenCV人脸检测的局限性
- OpenCV图像旋转
- OpenCV图像侵蚀和膨胀
- OpenCV图像过滤器
- OpenCV图像基本操作
- OpenCV图像轮廓
- OpenCV模糊(图像平滑)
- OpenCV Canny边缘检测
- OpenCV教程 | Python使用OpenCV