# 阈值分割；
# 1、确定分割的目标：首先需要明确要分割的目标是什么，例如分割目标物体和背景。
# 2、确定阈值：根据图像的特点和需求，选择适当的阈值。阈值可以是一个固定的值，也可以根据图像的统计特性进行自适应选择。
# 3、将图像转换为灰度图像：如果图像不是灰度图像，需要将其转换为灰度图像。这可以通过将彩色图像的RGB通道进行加权平均得到灰度值。
# 4、应用阈值：将选择的阈值应用于灰度图像，将图像中的像素分成两个类别：低于阈值的像素和高于阈值的像素。
# 5、生成二值图像：根据阈值的应用结果，将低于阈值的像素设置为一个固定的值（例如0），将高于阈值的像素设置为另一个固定的值（例如255），从而生成二值图像。
# 6、后处理（可选）：根据实际需求，可以对生成的二值图像进行后处理操作，例如去除噪声、填充空洞等。

import numpy as np
import cv2 as cv

img=cv.imread('test1.png',cv.IMREAD_GRAYSCALE)
cv.imshow('img',img)

threshold_value = 200
max_value = 255
_,binary_img = cv.threshold(img,threshold_value,max_value,cv.THRESH_BINARY)
cv.imshow('binary_img',binary_img)

kernel = np.ones((3,3),np.uint8)
cleaned_img=cv.morphologyEx(binary_img,cv.MORPH_OPEN,kernel)
cv.imshow('cleaned_img',cleaned_img)

cv.waitKey(0)
cv.destroyAllWindows()