目标
- 在本教程中,您将学习简单的阈值,自适应的阈值,Otsu的阈值等等。
- 您将学习以下功能:cv2.threshold, cv2.adaptiveThreshold等
简单阈值
在这里,事情是直截了当的。如果像素值大于阈值,则分配给它一个值(可以是白色的),否则它被分配给另一个值(可能是黑色)。所使用的功能是cv2.threshold。第一个参数是源图像,其中应该是灰度图像。第二个参数是阈值,用于对像素值进行分类。第三个参数是maxVal,它表示像素值大于(有时小于)阈值时要给出的值。OpenCV提供了不同类型的阈值,它由函数的第四个参数决定。不同的类型有:
- cv2.THRESH_BINARY
- cv2.THRESH_BINARY_INV
- cv2.THRESH_TRUNC
- cv2.THRESH_TOZERO
- cv2.THRESH_TOZERO_INV
文档清楚地解释了每种类型的含义。请看一下文件。
得到两个输出。第一个是复核稍后再解释。第二个输出是我们的阈值图像.
代码:
import cv2
import numpy as np
from matplotlib import pyplot as plt
img = cv2.imread('gradient.png',0)
ret,thresh1 = cv2.threshold(img,127,255,cv2.THRESH_BINARY)
ret,