Advertisement

OpenCV图像处理技术(Python)——阈值处理

阅读量:

OpenCV图像处理技术(Python)——阈值处理

© Fu Xianjun. All Rights Reserved.

知识储备1:

在这里插入图片描述

知识储备2:

在这里插入图片描述

1.阈值处理
知识储备1:

在这里插入图片描述

知识储备2:

在这里插入图片描述

知识储备3:

在这里插入图片描述

ret, dst = cv2.threshold(src, thresh, maxval, type)
src 用于表示输入图像,并且仅限于单通道图像,默认情况下为灰度图像。
dst 是生成的输出图像。
thresh 表示阈值设置;maxval 则决定了当像素超过或低于该阈值时所赋予的具体数值。

type:二值化处理的方式及其实现细节如下:
cv2.THRESH_BINARY;
cv2.THRESH_BINARY_INV;
cv2.THRESH_TRUNC;
cv2.THRESH_TOZERO;
cv2.THRESH_TOZERO_INV

当图像像素超过THRESH_BINARY设定的阈值时设为最大值;低于或等于该阈值时则被设定为0。
其作用与THRESH_BINARY相反。
若图像像素超过THRESH_TRUNC所指定的门槛,则将其设为此门槛值;其余像素则保持原有数值。
若图像像素超过该函数指定的门限,则其数值将被保留;反之则置此像素位为0。
其效果与THRESH_TOZERO相反。

2.自适应阈值运算(adaptiveThreshold):

知识储备1:

在这里插入图片描述

知识储备2:

在这里插入图片描述

知识储备3:

在这里插入图片描述

img = cv2.imread('peppa.jpg', 0)

使用自适应均值阈值方法进行图像二值化处理

mean_threshold = cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY, 7, 5)

使用自适应高斯阈值方法进行图像二值化处理

gaus_threshold = cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY, 5, 3)
cv2.imshow("mean_threshold", mean_threshold)
cv2.imshow("gaus_threshold", gaus_threshold)
cv2.waitKey(0)
cv2.destroyAllWindows()

3.Otsu阈值运算:
知识储备:

在这里插入图片描述

img = cv2.imread('peppa.jpg', 0)
利用OpenCV的threshold函数计算合适的二值化阈值并将原始图像分割为两个部分
cv2.imshow("otsu", otsu)
等待键盘事件以获取用户的输入
cv2.waitKey(0)
释放所有窗口句柄完成操作

第二章 函数实践与色彩图像处理
任务1:函数实践

2.2

在这里插入图片描述

采用滚动条来调节阈值进行参数处理

本小节到此结束,谢谢大家!
未成年人禁止吸烟!!!

全部评论 (0)

还没有任何评论哟~