首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用numpy读取灰度蒙版图像?

如何使用numpy读取灰度蒙版图像?
EN

Stack Overflow用户
提问于 2021-03-03 21:53:39
回答 1查看 41关注 0票数 1

我正在阅读一些关于语义分割的代码,试图学习一些技术,但我可以找出我真正需要解释的一个特定部分,这里是整个函数

代码语言:javascript
复制
def DataGen():
    img_ = []
    mask_ = []
    c1 = []
    y1 = []
    for i in range(len(image_)):
        image = cv2.imread(image_[i])
        image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
        image = image / 255
        image = cv2.resize(image, (height, width), interpolation=cv2.INTER_AREA)  # image
        cc1 = cv2.resize(image, (height // 2, width // 2), interpolation=cv2.INTER_AREA)  # resize image

        mask = cv2.imread(mask_id[i], 0)
        mask[np.where(mask == 0)] = 198
        target = np.zeros([966, 1296, 2])

        target[:, :, 1][np.where(mask == 149)] = 1
        target[:, :, 0][np.where(mask == 76)] = 1

        mask = cv2.resize(target, (height, width), interpolation=cv2.INTER_AREA)
        yy1 = cv2.resize(target, (height // 2, width // 2), interpolation=cv2.INTER_AREA)
        mask = np.expand_dims(mask, axis=-1)
        print(mask)
        yy1 = np.expand_dims(yy1, axis=-1)
        img_.append(image)
        mask_.append(mask)
        c1.append(cc1)
        y1.append(yy1)
    img_ = np.array(img_)
    C1 = np.array(c1)
    Y1 = np.array(y1)
    mask_ = np.array(mask_)
    mask_[np.where(mask_ != 0)] = 1
    Y1[np.where(Y1 != 0)] = 1
    return img_, C1, mask_, Y1

这就是我有点迷惑的地方

代码语言:javascript
复制
mask = cv2.imread(mask_id[i], 0) # mask is read in grayscale Point-1
mask[np.where(mask == 0)] = 198

target = np.zeros([966, 1296, 2]) # numpy is define Point-2
target[:, :, 1][np.where(mask == 149)] = 1
target[:, :, 0][np.where(mask == 76)] = 1

mask = cv2.resize(target, (height, width), interpolation=cv2.INTER_AREA)

掩码如何进入Point-2中初始化的target变量中的numpy数组?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-25 16:59:11

我已经想了很久了,所以我决定回答这个问题…也许这会对其他人有所帮助。

` `target:,:,1=1

目标:,:,0=1`

这个“掩码(np.where == 149)”可以简单地被移除并替换为作为索引任何整数值。作者从MxN掩模图像数组中选取索引并进行设置。它只是numpy中的一个变量声明,可以重写为

` target = np.zeros(966,1296,2)

目标:,:,1=1

目标:,:,0=1`

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66458457

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档