当前位置: 首页 > article >正文

计算图像分割mask的灰度级个数、以及删除空的分割数据

1、查询mask类别

图像分割的mask是图片格式的话,往往是阈值图像,这样有几个阈值就是分割几个类别的

这里提供代码检测mask的类别个数

摆放如上(只要有mask即可),然后copy下面代码,放在data的同级目录即可:

import os
import numpy as np
from PIL import Image
from tqdm import tqdm


def fun(pth):
    root = pth
    ro = [os.path.join(root,y) for y in os.listdir(root)]

    la = []

    for i in tqdm(ro):
        j = Image.open(i).convert('L')
        j = np.unique(np.array(j))
        for iii in j:
            if iii not in la:
                la.append(iii)
    print(la)


if __name__ == '__main__':
    root = './data/masks'
    fun(pth=root)

输出如下,可以看出这个数据分割是2类的(加上背景nc=3)

2、删去空的data

其实分割的mask中,如果有label是空,也是数据增广的一种,并不是什么坏事。

就像分类中,还有一个其他类别,里面存放的乱七八糟的图片。

目标检测也是,label里面bbox和class全部为空即可。

不过,要是删去这些空的话,也很简单,这里提供图像分割的代码

摆放如下:

复制下面代码,放在data的同级目录即可:

import os
from tqdm import tqdm
import cv2
import numpy as np


def main(pth,im,ms):
    img_path = [os.path.join(pth,i) for i in os.listdir(pth)]
    for i in tqdm(img_path):
        j = i.replace('images','masks').replace(im,ms)

        tmp = cv2.imread(j)
        if len(np.unique(tmp)) ==1 :
            os.remove(i)
            os.remove(j)


if __name__=='__main__':
    root = './data/images'          # data 路径
    img_fm = '.jpg'                 # data 的后缀偏移
    mask_fm = '_mask.png'           # mask 的后缀偏移

    main(pth=root,im=img_fm,ms=mask_fm)

这里的img_fm,mask_fm 是data到mask图片的偏移路径 

运行如下,就可以删除了


http://www.kler.cn/a/287417.html

相关文章:

  • RadSystems 自定义页面全攻略:个性化任务管理系统的实战设计
  • 使用Python编写一个简单的网页爬虫,从网站抓取标题和内容。
  • RabbitMQ教程:发布/订阅模式(Publish/Subscribe)(三)
  • 基于多模板配准的心腔分割算法
  • 【学习笔记】大模型调优(llms_tuning)
  • Vue模块化开发的理解
  • HTML静态网页成品作业(HTML+CSS)——动漫猫和老鼠网页(1个页面)
  • 快速安全部署 Tomcat
  • 全志Linux磁盘操作基础命令
  • 程序化交易在中国的规模
  • 云计算实训39——Harbor仓库的使用、Docker-compose的编排、YAML文件
  • 什么场景可以使用函数式接口
  • 【数据结构】线性表的链式表示(单链表)
  • 《C++20 特性综述》
  • Matlab实现人工神经网络
  • 基于Java+SpringBoot+Vue的汽车销售网站
  • 【Python123题库】#统计文章字符数 #查询高校信息 #查询高校名
  • linux系统中USB模块鼠标驱动实现
  • PostgreSQL主从同步介绍
  • 【Kubernetes知识点问答题】Docker CE 部署
  • 【网络安全】绕过输入验证
  • 【国铁采购平台-注册安全分析报告-无验证方式导致安全隐患】
  • 【Git】常用命令大全(带注释)
  • 快速申请公网、内网IP地址SSL证书
  • STL之my_list容器
  • 一文打通前端环境搭建