图像分割将label和得到的mask画入原图

最近参加天池的比赛,写了几行代码将mask和label画入原图,便于观察那些数据得到的效果不太好,详细的代码如下:

import os
import cv2
import numpy as np
import params

def show(img, mask, mode=‘B’):
“”"
:param img:图像矩阵,shape:(H,W,3)
:param mask: 标签矩阵,shape:(H,W)
:param mode: ‘R’,‘G’,‘B’
:return:
“”"
mask = mask.reshape(label.shape[0], label.shape[1], 1)
n = np.zeros(mask.shape)
if mode == ‘B’:
lar = np.concatenate((mask, n, n), axis = 2)
elif mode == ‘G’:
lar = np.concatenate((n, mask, n), axis = 2)
elif mode == ‘R’:
lar = np.concatenate((n, n, mask), axis = 2)
else:
return
lar = lar * 255
lar = lar + img
max = np.max(lar)
ret = lar/max
#下面两行移到函数外
# i += 1
# cv2.imwrite(params[‘mask_label’]+str(i)+’.png’, ret)

return ret*255
加入到训练过程中,可以得到如下的结果:
原图
红色是计算出的结果,蓝色是标签
可以看出来有个问题,画出来的图会变暗

### 图像分割数据集概述 对于计算机视觉任务中的图像分割,存在多个广泛使用的带有mask标签的数据集。这些数据集不仅提供了原始图像,还附带了像素级别的标注掩码(mask),用于训练评估语义分割模型。 #### 常见的图像分割数据集 1. **PASCAL VOC** PASCAL Visual Object Classes (VOC) 数据集是一个经典的多类物体识别与分割挑战赛所用的数据集合[^1]。该数据集中包含了20种类别的对象实例及其对应的二值化分割掩码。此数据集适合于测试通用场景下的目标检测及分割算法性能。 2. **COCO-Stuff** COCO-Stuff 是 Microsoft COCO 数据库的一个扩展版本,在原有基础上增加了更多细粒度类别标记[^2]。除了原有的80个主要物体分类外,新增加了91种背景材料/事物类型的密集型标注信息,使得整个数据集能够支持更加复杂的全图解析任务。 3. **Cityscapes Dataset** Cityscapes 集合专注于城市街景环境内的高质量成对图片与其精细标注的地图文件[^3]。它特别适用于自动驾驶汽车感知系统的开发研究工作;其中涵盖了50个城市的不同天气条件下的街道景象照片以及详尽的道路元素(如车辆、行人等)轮廓描绘。 4. **ADE20K** ADE20K 提供了一个大规模且多样化的室内室外场景理解平台[^4]。其特色在于拥有超过2万张高分辨率彩色影像连同多达150个不同属性区域的手工绘制蒙版资料,这有助于推动更广泛的跨领域应用探索技术进步。 ```python import matplotlib.pyplot as plt from PIL import Image import numpy as np def show_image_with_mask(image_path, mask_path): """显示原图对应mask""" img = Image.open(image_path).convert('RGB') mask = Image.open(mask_path) fig, ax = plt.subplots(1, 2, figsize=(12, 6)) ax[0].imshow(img) ax[0].set_title("Original Image") ax[0].axis('off') ax[1].imshow(np.array(mask), cmap='gray', vmin=0, vmax=255) ax[1].set_title("Mask Label") ax[1].axis('off') plt.show() # 示例调用函数展示一张来自某个公开数据集的样本图像及其mask show_image_with_mask('./example_data/image.png', './example_data/mask.png') ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值