假设你想隔离眼部血管,这里有一个方法可以分为两个阶段,一个是去除伪影,另一个是隔离血管将图像转换为灰度
二值图像的Otsu阈值法
执行形态学操作去除伪影
血管分离的自适应阈值
利用最大阈值区域寻找轮廓并进行滤波
按位与得到最终结果
从原始图像开始,我们转换为灰度和大津阈值以获得二值图像
现在我们执行变形打开来移除工件(左)。我们反转这个掩模以获得白色边界,然后进行一系列按位运算以获得去除的伪影图像(右)
从这里我们自适应阈值得到静脉
注意这里有不需要的边界,所以我们找到轮廓并使用最大阈值区域进行过滤。如果轮廓通过过滤器,我们将其绘制到一个空白遮罩上
最后,我们对原始图像进行位与运算以得到结果
注意,我们可以在自适应阈值之后执行额外的变形打开来去除小的噪声粒子,但是折衷的是它将删除静脉细节。我把这一步留给你import cv2
import numpy as np
# Grayscale, Otsu's threshold, opening
image = cv2.imread('1.png')
blank_mask = np.zeros(image.shape,