EISeg——应用于语义分割的自动标注软件

article/2025/8/18 4:02:48

1、基本介绍

EISeg(Efficient Interactive Segmentation)是以RITM及EdgeFlow算法为基础,基于飞桨开发的一个高效智能的交互式分割标注软件。涵盖了通用、人像、遥感、医疗等不同方向的高质量交互式分割模型,方便开发者快速实现语义及实例标签的标注,降低标注成本。 另外,将EISeg获取到的标注应用到PaddleSeg提供的其他分割模型进行训练,便可得到定制化场景的高精度模型,打通分割任务从数据标注到模型训练及预测的全流程。

1.1 模型准备

在使用EIseg前,请先下载模型参数。EISeg 0.5.0版本开放了在COCO+LVIS、大规模人像数据、mapping_challenge,Chest X-Ray,MRSpineSeg,LiTS及百度自建质检数据集上训练的7个垂类方向模型,满足通用场景、人像场景、建筑物标注,医疗影像肝脏,胸腔,椎骨及铝板质检的标注需求。其中模型结构对应EISeg交互工具中的网络选择模块,用户需要根据自己的场景需求选择不同的网络结构和加载参数。

模型类型适用场景模型结构模型下载地址
高精度模型通用场景的图像标注HRNet18_OCR64static_hrnet18_ocr64_cocolvis
轻量化模型通用场景的图像标注HRNet18s_OCR48static_hrnet18s_ocr48_cocolvis
高精度模型通用图像标注场景EdgeFlowstatic_edgeflow_cocolvis
高精度模型人像标注场景HRNet18_OCR64static_hrnet18_ocr64_human
轻量化模型人像标注场景HRNet18s_OCR48static_hrnet18s_ocr48_human
轻量化模型遥感建筑物标注场景HRNet18s_OCR48static_hrnet18_ocr48_rsbuilding_instance
高精度模型*x光胸腔标注场景Resnet50_Deeplabv3+static_resnet50_deeplab_chest_xray
轻量化模型医疗肝脏标注场景HRNet18s_OCR48static_hrnet18s_ocr48_lits
轻量化模型*MRI椎骨图像标注场景HRNet18s_OCR48static_hrnet18s_ocr48_MRSpineSeg
轻量化模型*质检铝板瑕疵标注场景HRNet18s_OCR48static_hrnet18s_ocr48_aluminium

NOTE: 将下载的模型结构*.pdmodel及相应的模型参数*.pdiparams需要放到同一个目录下,加载模型时只需选择*.pdiparams结尾的模型参数位置即可, *.pdmodel会自动加载。在使用EdgeFlow模型时,请将使用掩膜关闭,其他模型使用时请勾选使用掩膜。其中,高精度模型推荐使用带有显卡的电脑,以便获得更流畅的标注体验。

1.2 安装

EISeg提供多种安装方式,其中使用pip和运行代码方式可兼容Windows,Mac OS和Linux。为了避免环境冲突,推荐在conda创建的虚拟环境中安装。

版本要求:

  • PaddlePaddle >= 2.2.0

PaddlePaddle安装请参考官网。

通过git将PaddleSeg克隆到本地:

git clone https://github.com/PaddlePaddle/PaddleSeg.git

安装所需环境(若需要使用到GDAL和SimpleITK请参考垂类分割进行安装):

pip install -r requirements.txt

安装好所需环境后,进入EISeg,可通过直接运行eiseg打开EISeg:

cd PaddleSeg\EISeg
python -m eiseg

或进入eiseg,运行exe.py打开EISeg:

cd PaddleSeg\EISeg\eiseg
python exe.py

PIP

pip安装方式如下:

pip install eiseg

pip会自动安装依赖。安装完成后命令行输入:

python -m eiseg

即可运行软件。

1.2 使用

打开软件后,在对项目进行标注前,需要进行如下设置:

  1. 模型参数加载

    根据标注场景,选择合适的网络模型及参数进行加载。目前在EISeg0.4.0中,已经将动态图预测转为静态图预测,全面提升单次点击的预测速度。选择合适的模型及参数下载解压后,模型结构*.pdmodel及相应的模型参数*.pdiparams需要放到同一个目录下,加载模型时只需选择*.pdiparams结尾的模型参数位置即可。静态图模型初始化时间稍长,请耐心等待模型加载完成后进行下一步操作。正确加载的模型参数会记录在近期模型参数中,可以方便切换,并且下次打开软件时自动加载退出时的模型参数。

  2. 图像加载

    打开图像/图像文件夹。当看到主界面图像正确加载,数据列表正确出现图像路径即可。

  3. 标签添加/加载

    添加/加载标签。可以通过添加标签新建标签,标签分为4列,分别对应像素值、说明、颜色和删除。新建好的标签可以通过保存标签列表保存为txt文件,其他合作者可以通过加载标签列表将标签导入。通过加载方式导入的标签,重启软件后会自动加载。

  4. 自动保存设置

    在使用中可以将自动保存设置上,设定好文件夹即可,这样在使用时切换图像会自动将完成标注的图像进行保存。

当设置完成后即可开始进行标注,默认情况下常用的按键/快捷键如下,如需修改可按E弹出快捷键修改。

部分按键/快捷键功能
鼠标左键增加正样本点
鼠标右键增加负样本点
鼠标中键平移图像
Ctrl+鼠标中键(滚轮)缩放图像
S切换上一张图
F切换下一张图
Space(空格)完成标注/切换状态
Ctrl+Z撤销
Ctrl+Shift+Z清除
Ctrl+Y重做
Ctrl+A打开图像
Shift+A打开文件夹
E打开快捷键表
Backspace(退格)删除多边形
鼠标双击(点)删除点
鼠标双击(边)添加点

1.3 特色功能使用说明

  • 多边形

    • 交互完成后使用Space(空格)完成交互标注,此时出现多边形边界;
    • 当需要在多边形内部继续进行交互,则使用空格切换为交互模式,此时多边形无法选中和更改。
    • 多边形可以删除,使用鼠标左边可以对锚点进行拖动,鼠标左键双击锚点可以删除锚点,双击两点之间的边则可在此边添加一个锚点。
    • 打开保留最大连通块后,所有的点击只会在图像中保留面积最大的区域,其余小区域将不会显示和保存。
  • 保存格式

    • 打开保存JSON保存COCO保存后,多边形会被记录,加载时会自动加载。
    • 若不设置保存路径,默认保存至当前图像文件夹下的label文件夹中。
    • 如果有图像之间名称相同但后缀名不同,可以打开标签和图像使用相同扩展名
    • 还可设置灰度保存、伪彩色保存和抠图保存,见工具栏中7-9号工具。
  • 生成mask

    • 标签按住第二列可以进行拖动,最后生成mask时会根据标签列表从上往下进行覆盖。
  • 界面模块

    • 可在显示中选择需要显示的界面模块,正常退出时将会记录界面模块的状态和位置,下次打开自动加载。
  • 垂类分割

    EISeg目前已添加对遥感图像和医学影像分割的支持,使用相关功能需要安装额外依赖。

    • 分割遥感图像请安装GDAL,相关安装及介绍具体详见遥感标注垂类建设。
    • 分割医学影像请安装SimpleITK,相关安装及介绍具体详见医疗标注垂类建设。
  • 脚本工具使用

    EISeg目前提供包括标注转PaddleX数据集、划分COCO格式以及语义标签转实例标签等脚本工具,相关使用方式详见脚本工具使用。

2、遥感相关

以下内容为EISeg中遥感垂类相关的文档,主要包括环境配置和功能介绍两大方面。

2.1 环境配置

EISeg中对遥感数据的支持来自GDAL/OGR,GDAL是一个在X/MIT许可协议下的开源栅格空间数据转换库,OGR与其功能类似但主要提供对矢量数据的支持。

2.2 依赖安装

关于GDAL的安装,可参考如下安装方式:

2.2.1 Windows

Windows用户可以通过这里下载对应Python和系统版本的二进制文件(*.whl)到本地,以GDAL‑3.3.3‑cp39‑cp39‑win_amd64.whl为例,进入下载目录:

cd download

安装依赖:

pip install GDAL‑3.3.3‑cp39‑cp39‑win_amd64.whl

2.2.2 Linux/Mac安装

Mac用户建议利用conda安装,如下:

conda install gdal

2.3 功能介绍

目前EISeg中的遥感垂类功能建设还比较简单,基本完成了GTiff类数据加载、大幅遥感影像切片与合并、地理栅格/矢量数据(GTiff/ESRI Shapefile)导出。并基于各类建筑提取数据集40余万张数据训练了一个建筑分割的交互式模型。

2.3.1 数据加载

目前EISeg仅支持了*.tif/tiff图像后缀的的遥感影像读取,由于训练数据都是来自于RGB三通道的遥感图像切片,因此交互分割也仅在RGB三通道上完成,也就表示EISeg支持多波段数据的波段选择。

当使用EISeg打开GTiff图像时,会获取当前波段数,可通过波段设置的下拉列表进行设置。默认为[b1, b1, b1]。下例展示的是天宫一号多光谱数据设置真彩色:

2.3.2 大幅数据切片

目前EISeg对于大幅遥感图像(目前最大尝试为900M,17000*10000大小三通道图像),支持切片预测后合并,其中切片的重叠区域overlap为24。

下面是一副来自谷歌地球的重庆部分地区的切片演示:

2.3.3 地理数据保存

当打开标注的GTiff图像带有地理参考,可设置EISeg保存时保存为带有地理参考的GTiff和ESRI Shapefile。

  • GTiff:已成为GIS和卫星遥感应用的行业图像标准文件。
  • ESRI Shapefile:是最常见的的矢量数据格式,Shapefile文件是美国环境系统研究所(ESRI)所研制的GIS文件系统格式文件,是工业标准的矢量数据文件。 所有的商业和开源GIS软件都支持。无处不在的它已成为行业标准。

2.4 遥感标注模型选择

建筑物标注建议使用static_hrnet18_ocr48_rsbuilding_instance

3、EISeg打包

打包步骤

  1. 克隆当前repo(可有可无的步骤):

    git clone https://github.com/geoyee/eiseg2exe.git
  2. 在当前能够正常使用EISeg的环境中安装QPT:

    python -m pip install qpt -i https://mirrors.bfsu.edu.cn/pypi/web/simple
  3. 将EISeg最新的代码(去掉.git文件)替换文件夹下的EISeg文件夹:

    • PaddlePaddle/PaddleSeg(内部的EISeg文件夹)
    • PaddleCV-SIG/EISeg
  4. 进入EISeg文件夹,删除.github.idea文件夹。

  5. 再运行qpt_pack.py脚本:

    python qpt_pack.py
  6. 进入EISeg/requirements_with_opt.txt,注释掉GDAL,添加QPT,并将paddlepaddle-gpu改为paddlepaddle,回车确认,等待打包完成。

    # -------------Mainly depends on package analysis results--------------pycocotools==2.0.2
    paddlepaddle==2.2.0  # 替换 paddlepaddle-gpu==2.2.0
    beautifulsoup4==4.9.3
    # gdal==3.2.3  # 注释
    qtpy==1.9.0
    albumentations==0.5.2
    simpleitk==2.0.2
    easydict==1.9
    visualdl==2.2.0
    pyqt5==5.15.4
    paddleseg==2.3.0
    imgaug==0.4.0
    qpt==1.0b1.dev11  # 增加
    
  7. 复制目录下的GDAL-3.2.3-cp38-cp38-win_amd64.whlout/Debug(Release)/opt/packages下,完成GDAL的打包。

使用

  1. Debug下的exe用于测试。
  2. 发布只需把Release打包为zip即可。

http://chatgpt.dhexx.cn/article/lhiCC8CD.shtml

相关文章

基于paddleSeg的自定义遥感数据语义分割——以DLRSD为例

转自AI Studio,原文链接:基于paddleSeg的自定义遥感数据语义分割——以DLRSD为例 - 飞桨AI Studio 基于paddleseg 2.1使用自定义数据集DLRSD,其他遥感数据集实现训练、测试、推理脚本版任务 数据格式准备 DLRSD数据集 基于UCMerced_LandUse数据集进行…

【计算机视觉】最全语义分割模型总结(从FCN到deeplabv3+)

文章目录 一、前言1.1 语义分割 二、FCN:CNN语义分割的开山之作2.1 结构2.2 特点 三、Deeplab_v13.1 前言3.2 特点 四、U-Net4.1 结构4.2 特点 五、Seg-Net5.1 结构5.2 特点 六、Deeplab_v26.1 结构6.2 特点6.3 Fcis6.3.1 特点 七、RefineNet7.1 结构7.2 特点 八、L…

语义分割网络系列2——Unet

目录 1 Unet网络介绍1.1 Unet论文1.2 简介1.3 6大特点 2 Unet网络3种不同的实现方式2.1 Unet网络的class实现(mIou)2.2 Unet网络的layer的实现(mIou)2.3 第3种实现方法(存在问题,验证集准确率一直不变&…

毕业设计 U-Net遥感图像语义分割(源码+论文)

文章目录 0 项目说明1 研究目的2 研究方法3 研究结论4 论文目录5 项目源码6 最后 0 项目说明 **基于 U-Net 网络的遥感图像语义分割 ** 提示:适合用于课程设计或毕业设计,工作量达标,源码开放 实验训练使用 Anaconda 版 Python 3.7 下的 T…

基于深度学习的遥感影像语义分割数据预处理

基于深度学习的遥感影像语义分割数据预处理 第一次处理数据,不熟练,仅供参考 数据预处理工具:Arcgis 第一步:下载遥感影像tif数据 根据实际需求选择感兴趣的遥感影像区域 数据来源:Google卫星影像 第二步&#xff1…

语义分割—遥感影像数据标签制作(ARCGIS)

目录 制作标签 转为tif格式 制作标签 1.新建文件夹链接 2.右键新建的文件夹,新建一个shp文件 3.要素类型选择面要素,并为shp文件命名 此处可以配置与依赖图层相同的坐标系,也可以在转为.tif的时候修改环境里的两个选项统一坐标系 4.右键文…

语义分割:遥感影像标签制作

1、打开一张遥感影像,或者航片 2.新建shp:在对应文件夹下,右键新建shpfile 选择面,添加坐标系与影像坐标系相同 3.开始编辑新建的shp 选择面,沿图像四周紧贴图像画矩形 4. 保存编辑内容后停止编辑否则无法添加字段&…

LaTeX的斜体,粗体

参考 LaTeX的斜体,粗体 - 云社区 - 腾讯云 写文章的小伙伴应该知道,在文章中,变量是需要斜体的,那么怎么才是斜体呢 首先,在LATEX中,强调可以以斜体形式展现出来。那么强调命令是如何体现的呢&#xff1a…

LaTeX 加粗

本系列文章由 yhl_leo 出品,转载请注明出处。 文章链接: http://blog.csdn.net/yhl_leo/article/details/50997822 LaTeX中文本加粗的方法,给出代码示例,一看就懂: \documentclass{article} \usepackage{amsmath}\beg…

【LaTex 中英文样式加粗】自由选择中英文字体样式,中英文字体粗黑程度设置

🌼 在本文中,选择楷体样式,以及加粗的楷体。 ▚ 01 设置全文字体 1.1 中文 以设置中文为楷体为例: 在\documentclass{article}与\begin{document}之间,添加语句\setCJKmainfont[AutoFakeBold2.5,ItalicFont{楷体}]{…

LaTeX表格字体加粗(解决文本变宽问题)

latex中对文本加粗常用的方法是 \textbf{*} 在表格中,这个命令也同样生效。但它会使文本变宽,如 尝试的方法 网上找了很多办法,想改变表格加粗的宽度,常见是是调整LaTeX字体,如下 Command Nominal Point Size …

Latex排版小技巧0001:中文字体加粗

论文排版时中文字体加粗 在设置CJK字体过程中添加[AutoFakeBold {3.17}]设置,参数 “3.17” 用于指定加粗程度。加粗时使用 latex 默认加粗指令 \textbf 即可。 \setallmainfonts{Times New Roman}\setCJKmainfont[AutoFakeBoldtrue]{SimSun}\newCJKfontfamily{\h…

latex中如何加粗字体?

加粗代码: \textbf{文字} 效果图:

LaTeX中\textbf无法将汉字进行加粗

场景 利用\textbf对汉字进行加粗: \textbf{模型复杂度}显示如下: 可以发现,确实没有被加粗。 解决 一开始设置了全局字体为宋体: \setCJKmainfont{SimSun}注释掉即可。

解决LaTeX英文字体加粗失效、无法加粗问题

文章目录 一、前言二、具体问题三、解决办法四、使用效果 一、前言 最近使用 LaTeX 作为模板写实验报告、论文时,在自己写的 cls 文件里定义好了各种字体及格式,但是在使用过程中却出现了部分问题。 二、具体问题 标题、摘要里的英文字体并不能像中文字…

LaTex常用技巧3:加粗字体

截图来自[1] 普通加粗 \mathbf 斜体加粗 \usepackage{bm} \bm 矩阵、向量的加粗需要使用。 相关参考 [1]latex矩阵加粗

【latex】Latex如何加粗文字;表格中如何加粗文字而不让文本变宽

问题 latex中对文本加粗常用的方法是 \textbf{*}在表格中,这个命令也同样生效。但它会使文本变宽,如 尝试 网上找了很多办法,想改变表格加粗的宽度,常见是是调整LaTeX字体,如下 Command Nominal Point Size …

vmware 安装报错:failed to install hcmon drivers 完美解决(含VMware15激活码)

首先绝大部分使用网上的方法,删除各种驱动和注册表都是结果都是失败的:再次安装的结果仍然是: 在网上搜寻几天找到一位大神博客,完美解决,试了之后的结果是完美安装,搬运如下: 解决方法&…

安装VMware WorkStation

安装VMware准备: 软件准备: VMware-workstation-full-12.1.1-3770994.exe 秘钥准备: 1、双击VMware-workstation-full-12.1.1-3770994.exe,进行安装如下图所示: 2、弹出的界面中选择“我接受许可协议中的条款”&…

虚拟机安装以及镜像激活码下载

虚拟机的概念和作用,这里不再阐述,不明白的可以自行百度。 需要注意的是,穿越火线无需虚拟机即可多开,安装虚拟机 后台 挂机刷经验,英雄联盟使用虚拟机可以后台挂机刷金币。 〓-------------------------- -------- --…