图像分割汇总

2023-11-16

 Image Segmentation(图像分割)所谓图像分割是指根据灰度、彩色、空间纹理、几何形状等特征把图像划分成若干个互不相交的区域,使得这些特征在同一区域内表现出一致性或相似性,而在不同区域间表现出明显的不同。简单的说就是在一副图像中,把目标从背景中分离出来。对于灰度图像来说,区域内部的像素一般具有灰度相似性,而在区域的边界上一般具有灰度不连续性。

Medical Image Segmentation(医学图像分割):医学图像分割的目的是使图像中解剖或病理结构的变化更加清晰;它在计算机辅助诊断和智能医疗中发挥着至关重要的作用,极大地提高了诊断的效率和准确性。目前流行的医学图像分割任务包括肝脏和肝脏肿瘤分割,脑和脑肿瘤分割,视盘分割,细胞分割,肺分割和肺结节等。一般的图像分割任务主要分为了语义分割和实例分割。但在医学图像分割中,由于每个器官或组织都有很大的不同,所以医学图像的实例分割并无太大意义,医学图像分割通常都指语义分割。

superpixels(超像素):超像素是一系列像素的集合,这些像素具有类似的颜色、纹理等特征,距离也比较近,需要注意的是,超像素很可能把同一个物体的不同部分分成多个超像素,如下图,其中每个白色线条区域内的像素集合就是一个超像素。

Semantic Segmentation(语义分割):就是把图像中每个像素赋予一个类别标签(比如汽车、建筑、地面、天空等),比如下图就把图像分为了草地(浅绿)、人(红色)、树木(深绿)、天空(蓝色)等标签,用不同的颜色来表示。存在的问题是:不同的人标上的颜色是一样的,因为类别相同,也就是说语义分割只能判断类别,无法区分个体。

Instance Segmentation(实例分割):有点类似于物体检测,不过物体检测一般输出的是 bounding box,实例分割输出的是一个mask。实例分割和上面的语义分割也不同,它不需要对每个像素进行标记,它只需要找到感兴趣物体的边缘轮廓就行。

Image Classification: 图像分类,用于识别图像中物体的类别(如:bottle、cup、cube)
Object Localization: 目标检测,用于检测图像中每个物体的类别,并准确标出它们的位置。

 Panoptic Segmentation(全景分割):它是语义分割和实例分割的结合,即同时实现对背景的语义分割和前景的实例分割。如下图所示,每个像素都被分为一类,如果一种类别里有多个实例,会用不同的颜色进行区分,我们可以知道哪个像素属于哪个类中的哪个实例。比如下图中黄色和红色都属于人这一个类别里,但是分别属于不同的实例(人),因此我们可以通过mask的颜色很容易分辨出不同的实例。

Interactive Segmentation(交互式分割):交互式分割是用户通过提供目标物体前景和背景信息实现交互式的监督分割。交互式分割往往是建立在自动分割的基础上,对已有的监督信息中增加人为(模拟人为)的标记,实现更加精细的分割。例如仅对感兴趣的目标进行分割,在自动分割结果不够好的情况下通过用户介入矫正,特定医疗图像的目标分割等。

Matting:Matting 是将图像分解为前景和背景的处理,以便于将前景合并到新的背景上. 这也是绿幕greenscreen 的关键技术,被广泛应用于视频生产、图形和APPs 中。简而言之,分割是对图像中每个像素分配一个二值标签0,1,以表示背景和前景,而Matting是求解公式中连续的 alpha 值。

 图中,边缘区域,尤其是头发,是由 0-1 之间的真实 alpha 值的. 因此,分割的二值性导致前景边界周围出现严格边界,留下可见的不好效果. 解决了部分透明度和前景问题,对第二帧的合成更有利.

比如paddlepaddle就提供以下四种四种分割功能: (精度到头发丝了)

参考链接:

超像素、语义分割、实例分割、全景分割 傻傻分不清? - 知乎 (zhihu.com)

飞桨PaddlePaddle-源于产业实践的开源深度学习平台

Matting - Background Matting 简单理解 - AI备忘录 (aiuai.cn)



2022-02-11 17:00更

 Video Object Segmentation(视频目标分割):对视频中感兴趣的目标进行分割,给定第一帧mask的VOS称为one-shot VOS (单样本VOS),无第一帧目标mask的称为zero-shot VOS(无样本VOS)。通常会给定目标mask,求特定目标的mask,下图为实例级视频目标分割的例子:

视频目标分割是集检测、跟踪、分割、ReID于一体的计算机视觉任务,提供了更加丰富的信息,标注成本很高,计算量也比较大,近年来随着高性能设备和相关数据集的出现,也越来越受到关注。 

视频实例分割(Video Instance Segmentation):根据目标检测的框,求目标的mask

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

图像分割汇总 的相关文章

  • OpenCV 仅围绕大轮廓绘制矩形?

    第一次发帖 希望我以正确的方式放置代码 我正在尝试检测和计算视频中的车辆 因此 如果您查看下面的代码 我会在阈值处理和膨胀后找到图像的轮廓 然后我使用 drawContours 和矩形在检测到的轮廓周围绘制一个框 我试图在 drawCont
  • opencv 2.3.* 读取不工作

    我无法让 imread 工作 与这个人有同样的问题 OpenCV imwrite 2 2 在 Windows 7 上导致异常 并显示消息 OpenCV 错误 未指定错误 无法找到指定扩展名的编写器 https stackoverflow c
  • 检查图像中是否有太薄的区域

    我正在尝试验证雕刻机的黑白图像 更多的是剪贴画图像 不是照片 我需要考虑的主要事情之一是区域的大小 或线条的宽度 因为机器无法处理太细的线条 所以我需要找到比给定阈值更细的区域 以此图为例 竖琴的琴弦可能太细而无法雕刻 我正在阅读有关 Ma
  • OpenCV C++ 如何知道每行的轮廓数进行排序?

    我有一个二值图像 https i stack imgur com NRLVv jpg在这张图片中 我可以使用重载的函数轻松地对从上到下 从左到右找到的轮廓进行排序std sort 我首先通过以下方式从上到下排序 sort contours
  • 创建 OpenCV 的 mouseCallback 函数的基于类的实现时遇到问题

    正如标题所示 我在基于类的 C 结构中实现 OpenCV 的 mouseCallback 函数时遇到了一些麻烦 请允许我解释一下 我定义了一个名为 BriskMatching 的类 在其中创建了一个名为 mouseCallback 的成员函
  • ffmpeg AVFrame 到 opencv Mat 转换

    我目前正在开发一个使用 ffmpeg 解码接收到的帧的项目 解码后 我想将 AVFrame 转换为 opencv Mat 帧 以便我可以在 imShow 函数上播放它 我拥有的是字节流 我将其读入缓冲区 解码为 AVFrame f fope
  • 为什么我无法在 Mac 12.0.1 (Monterey) 上使用 pip 安装 OpenCV? [复制]

    这个问题在这里已经有答案了 当我尝试使用 python pip 安装 OpenCV 时 它显示了以下内容 Remainder of file ignored Requirement already satisfied pip in Libr
  • 从图像坐标获取对象的世界坐标

    I have been following this http docs opencv org modules calib3d doc camera calibration and 3d reconstruction html docume
  • minAreaRect OpenCV 返回的裁剪矩形 [Python]

    minAreaRectOpenCV 中返回一个旋转的矩形 如何裁剪矩形内图像的这部分 boxPoints返回旋转矩形的角点的坐标 以便可以通过循环框内的点来访问像素 但是在 Python 中是否有更快的裁剪方法 EDIT See code在
  • 如何确定与视频中物体的距离?

    我有一个从行驶中的车辆前面录制的视频文件 我将使用 OpenCV 进行对象检测和识别 但我停留在一方面 如何确定距已识别物体的距离 我可以知道我当前的速度和现实世界的 GPS 位置 但仅此而已 我无法对我正在跟踪的对象做出任何假设 我计划用
  • 在 Python 中将 OpenCV 帧流式传输为 HTML

    我正在尝试从 opencv Pyt hon 中的 URL 读取视频 然后逐帧处理它 然后将其发送到 HTML 页面 But I am only getting the first frame after that the program g
  • 如何使用 colorchecker 在 opencv 中进行颜色校准?

    我有数码相机获取的色彩检查器图像 我如何使用它来使用 opencv 校准图像 按照以下颜色检查器图像操作 您是想问如何进行颜色校准或如何使用 OpenCV 进行校准 为了进行颜色校准 您可以使用校准板的最后一行 灰色调 以下是您应该逐步进行
  • 如何使用 opencv.omnidir 模块对鱼眼图像进行去扭曲

    我正在尝试使用全向模块 http docs opencv org trunk db dd2 namespacecv 1 1omnidir html用于对鱼眼图像进行扭曲处理Python 我正在尝试适应这一点C 教程 http docs op
  • 是否可以在 PyScript 中使用 OpenCV 模块?

    我想使用 opencv 模块 但无法导入 OpenCV 那么我该如何解决这个问题呢 顺便说一句 Pyodide 支持 OpenCV 示例代码 https i stack imgur com ahwex jpg 尚不支持 OpenCV 此时O
  • 在 Visual Studio C++ 2008 中包含 dll

    有没有办法将 dll 包含在项目中 这样我就不必在编译后将这些 dll 与可执行文件放在同一文件夹中 这样我就可以用它们编译我的项目 这是否有可能 如果是 有人可以指导我 我的项目是一个 opencv 项目 有很多 dll 我必须包含在文件
  • VideoCapture.read() 返回过去的图像

    我在跑python3 6 with openCV on the Raspberry pi OS is Raspbian 代码的大致结构如下 The image以时间间隔 3 5 分钟 捕获 被捕获image在函数中处理并返回度量 精度的种类
  • Python:Urllib2 和 OpenCV

    我有一个程序 可以将图像保存在本地目录中 然后从该目录中读取图像 但我不想保存图像 我想直接从url读取它 这是我的代码 import cv2 cv as cv import urllib2 url http cache2 allposte
  • opencv_contrib编译错误:类没有成员

    我必须实现 SURF 算法来进行图像拼接 我在使用列出的库时遇到了问题here https stackoverflow com questions 33560251 opencv 3 0 0 ubuntu 14 04 nonfree non
  • 在骨架图像中查找线 OpenCV python

    我有以下图片 我想找到一些线来进行一些计算 平均长度等 我尝试使用HoughLinesP 但它找不到线 我能怎么做 这是我的代码 sk skeleton mask rows cols sk shape imgOut np zeros row
  • 选择合适的IDE

    您会推荐使用以下哪种 IDE 语言来在 Windows 下开发涉及识别手势并与操作系统交互的项目 我将使用 OpenCV 库来执行图像处理任务 之后 我将使用 win32 API 或 NET 框架与操作系统交互 具体取决于您建议的工具 性能

随机推荐

  • 源码 QT

    如何查找QT源码 相信很多人跟我一样 对QT源码很着迷 一次偶然间 我尽然发现了QT查找源码的网站 下面给大家贴一个链接qt查源码网址 然后给大家分享一下差源码的方法 查到的源码如图所示 下面展示QRandomGenerator源码 Cop
  • Android 把枪/PDA 扫描头自回车没用 处理方法

    XML 控件加上属性 android imeOptions actionNone 转载于 https www cnblogs com LuoEast p 11597878 html
  • 大数据面试题Spark篇(1)

    目录 1 spark数据倾斜 2 Spark为什么比mapreduce快 3 hadoop和spark使用场景 4 spark宕机怎么迅速恢复 5 RDD持久化原理 6 checkpoint检查点机制 7 checkpoint和持久化的区别
  • NOIP题目解析之取石子问题

    题目 现有5堆石子 石子数依次为3 5 7 19 50 甲乙两人轮流从任一堆中取石子 取最后一颗石子的一方获胜 甲先取 请问甲有没有获胜策略 如果有 甲第一步应在哪一堆里取多少 解析 在解这一道题之前 我们可以先来把问题简化 把五堆石子转化
  • Linux系统之使用cmatrix实现数字雨效果

    Linux系统之使用cmatrix实现数字雨效果 一 cmatrix介绍 二 本地环境介绍 2 1 本地环境规划 2 2 本次实践介绍 三 环境准备工作 3 1 安装开发环境 3 2 安装基本软件 3 3 安装 ImageMagick等工具
  • Unity shader系列:好用的IDE--JetBrain Rider

    官方描述 Rider 还添加了对 shader 文件的支持 提供语法高亮显示 代码折叠 括号匹配等功能 高亮显示 ShaderLab 部分的语法错误 todo 注释加入 To Do Explorer 并高亮显示颜色属性 且提供选色笔用于编辑
  • 学习HTML:iframe用法总结收藏

    原文地址 http blog csdn net andycode article details 6899775 分类 html js css 8 Html代码 p 是框架的一种形式 也比较常用到 p
  • Open3d之计算源点云与目标云的距离

    核心函数介绍 compute point cloud distance 提供了计算从源点云到目标点云的距离的方法 即 它计算源点云中的每个点到目标点云中最近点的距离 在下面的例子中 展示了使用该函数来计算两点云之间的差值 请注意 此方法也可
  • Shiro反序列化漏洞利用——2、Shiro_exploit漏洞检测

    使用Shiro exploit工具 检查是否存在默认的key 1 Github项目地址 下载利用工具 https github com insightglacier Shiro exploit 2 1使用示例 python shiro ex
  • C语言学习之assert

    C语言学习之assert C语言学习之assert assert 编程术语 编写代码时 我们总是会做出一些假设 断言就是用于在代码中捕捉这些假设 可以将断言看作是异常处理的一种高级形式 断言表示为一些布尔表达式 程序员相信在程序中的某个特定
  • 【C】变量

    目录 变量的命名 局部变量 全局变量 作用域 生命周期 变量的命名 变量名必须是由字母 数字 下划线组成 不能以数字开头 变量名不能是关键字 局部变量 全局变量
  • 斗地主2.0

    案例介绍 按照斗地主的规则 完成洗牌发牌的动作 具体规则 组装54张扑克牌将 54张牌顺序打乱 三个玩家参与游戏 三人交替摸牌 每人17张牌 最后三张留作底牌 查看三人各自手中的牌 按照牌的大小排序 底牌 规则 手中扑克牌从大到小的摆放顺序
  • git 主干master分支回滚到历史版本

    先切换到主分支 然后执行以下两点 1 回滚到指定版本 本地分支回滚到指定版本 git reset hard
  • 【漏洞复现】CVE-2022-44268 ImageMagick任意文件读取漏洞

    启动环境 sudo docker compose up d 查看端口号 服务启动后 访问http your ip 8080可以看到图片上传框 利用这个漏洞 需要先准备一个恶意PNG文件 文件内容中包含我们准备读取的文件路径 可以使用poc
  • 计算机网络--第三章思维导图

  • document.referrer的用法

    在JavaScript中 document对象有很多属性 其中有3个与对网页的请求有关的属性 它们分别是URL domain和referrer URL属性包含页面完整的URL domain属性中只包含页面的域名 而referrer属性中则保
  • 【模型评估与选择】sklearn.model_selection.train_test_split

    1 描述 Split arrays or matrices into random train and test subsets 2 语法 train test split arrays options 3 参数 1 arrays sequ
  • 多版本php安装swoole失败问题

    问题描述 使用命令 pecl安装报错 查看报错提示使用的是低版本的php 问题原因 pecl设置的环境变量指向的路径是低版本的所以如果想使用高版本的php 需要使用全路径命令 解决方法 usr local php7 26 bin pecl
  • Ubuntu 安装elasticsearch集群

    环境准备 准备三台服务器搭建集群环境 node1 192 168 177 171 node2 192 168 177 172 node3 192 168 177 173 其中node1为master节点 node2 node3为slave节
  • 图像分割汇总

    Image Segmentation 图像分割 所谓图像分割是指根据灰度 彩色 空间纹理 几何形状等特征把图像划分成若干个互不相交的区域 使得这些特征在同一区域内表现出一致性或相似性 而在不同区域间表现出明显的不同 简单的说就是在一副图像中