利用scipy.ndimage.binary_fill_hoses提取标记轮廓的mask-20201025

根据刘博记录如何提取标记内的mask,中间是自己的理解过程,可删除精简。

import numpy as np
import matplotlib.pyplot as plt
import skimage.io as io
import scipy

def marker_color(color='yellow'):
    return [255, 242, 0]

img = io.imread('./8_2.png')[...,0:3]
mask1 = np.all(np.array([255, 242, 0]) - 40 < img, axis=-1)
plt.imshow(mask1)
plt.show()
mask2 = np.all(np.array([255, 242, 0]) + 40 > img, axis=-1)
plt.imshow(mask2)
plt.show()
mask = np.logical_and(mask1, mask2)
plt.imshow(mask)
plt.show()
mask = scipy.ndimage.binary_fill_holes(mask)
plt.imshow(mask)
plt.show()

fig,axes = plt.subplots(1,2,figsize=(10,5))
axes[0].imshow(img)
axes[1].imshow(mask, cmap='gray')
plt.show()
io.imsave('tmp.png', mask*255)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值