python+opencv图像处理之五:图像阈值化处理
一、阈值化
阈值即为界限,或者说是临界值,是指一个效应能够产生的最低值或最高值。旨在提取图像中的目标物体,将背景以及噪声区分开来。
通常会设定一个阈值T,通过T将图像的像素划分为两类:大于T的像素群和小于T的像素群。灰度转换处理后的图像中,每个像素都只有一个灰度值,大小表示明暗程度。利用阈值化,我们就可以从一副图像中分割出我们需要的物体部分。
常见阈值化公式,即二进制阈值化:
Y={0,grayTY= \begin{cases} 0, & \text {grayT} \end{cases}Y={0,255,grayT
当灰度Gray小于阈值T时,其像素设置为0,图像中显示为黑色;当灰度Gray大于或等于阈值T时,其Y值为255,图像中显示为白色。
opencv中对于图像阈值处理提供了cv2.threshold()函数
cv2.threshold()中包含四个参数,分别为:
第一个原图像
第二个进行分类的阈值
第三个是高于(低于)阈值时赋予的新值
第四个是一个方法选择参数,常用的有:
参数
参数作用效果
cv2.THRESH_BINARY
像素点的灰度值大于阈值,设其灰度值为最大值(255);小于阈值,设其灰度值为最小值(0)
cv2.THRESH_BINARY_INV
像素点的灰度值大于阈值,设其灰度值为最小值(0);小于阈值