掩膜区域内像素值_眼底图像预处理-掩膜图像

眼底图像分析需要首先获取ROI 感兴趣区,这样在后续的处理中能有效避免ROI 区域外的像素的影响,降低运算的复杂度。

一般选取彩色眼底图像最能反映光照情况的红色通道灰度图进行处理,包括两步:阈值处理和形态学腐蚀操作。

我们用彩色眼底图像的红色通道做了mask 掩膜图,得到满意的结果。

代码如下:

#从目录下读取彩色眼底图,

img_ori = cv2.imread('./dataset/1.jpg')

#调整到图像统一尺寸

img_resized = cv2.resize(img_ori, (width, height), interpolation=cv2.INTER_CUBIC)

#分离出红色通道

b,g,r = cv2.split(img_resized)

#对红色通道图进行CLAHE 处理

clahe = cv2.createCLAHE(cliplimt=2.0,titleGrideSize=(8,8))

img_clahe_red = clahe.apply(r)

# 获得 红色通道的掩膜图

img_red_mask =get_redmask(img_clahe_red)

#保存掩膜图

cv2.imwrite('./mask/1_mask.png',img_red_mask )

----------下面是掩膜图处理函数 --------------

def get_redmask(img_red):

# 采用红色通道的阈值为 10 过滤非 ROI区 , 即取图像最大亮度区200~255 之间的 5%

ret, img_threshold = cv2.threshold(img_red,10,255,cv.THRESH_BINARY)

#创建 半径为 3 的圆形结构元素做kernel

kernel = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (3, 3))

# 对 ROI 区进行腐蚀运算

img_erode = cv2.erode(img_threshold, kernel, iterations=1)

# 对显示结果

cv2.imshow('redm', img_erode)

#返回 结果

return img_erode

e210278ea7755eadfe716fe5c9128bad.png

cad15a1554636a457773425f4219ca87.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值