Ultralytics YOLO27: 加入候补名单。
获取 YOLO 许可
返回 Ultralytics 术语表

Panoptic Segmentation

全景分割为每个像素赋予一个类别,并为每个可计数对象分配独立 ID,将语义分割和实例分割统一起来。涵盖模型、PQ 和代码。

全景分割是一项计算机视觉任务,为图像中的每个像素分配两个值:类别标签,以及对于属于可计数目标的像素所分配的实例 ID。它结合了语义分割和实例分割:语义分割为每个像素标注类别,但会合并同类目标;实例分割会区分单个目标,却不标注背景。最终得到一张覆盖整个场景且不重叠的地图,其中道路、天空和草地被标为区域,而每辆车和每个人都各自成为一个分割区域。Facebook AI Research 和海德堡大学的 Alexander Kirillov 及其同事在发表于 CVPR 2019 的全景分割论文中定义了这项任务及其指标,并选择这个名称来体现其定义:包含单个视野中所有可见内容。

Stuff 与 Things#

全景分割将类别划分为两种:

  • Things:形状明确、可以计数的物体,例如人、汽车、动物和手提包。每个物体都会获得自己的实例 ID,因此并排站着的两个人会成为两个独立的分割区域。
  • Stuff:纹理或材质相似、形态不定的区域,例如道路、天空、草地、水面和墙壁。同一 stuff 类别的所有像素组成一个分割区域,因为将天空划分为多个实例没有意义。

COCO 全景基准使用 133 个类别,其中 80 个 things 类别和 53 个 stuff 类别;Cityscapes 驾驶场景基准评估 19 个类别,其中 8 个 things 类别和 11 个 stuff 类别。模糊不清或不属于任何类别的像素会标记为 void,并在评估时忽略。COCO 全景格式将每张图像存储为 PNG,其中每个分割区域都有唯一 ID;此外还会用 JSON 文件将每个 ID 映射到其类别。

全景分割模型的工作原理#

早期系统会在共享的主干网络上运行语义分支和实例分支,然后用固定规则合并它们的输出。例如,Panoptic FPN会根据置信度解决实例之间的重叠,优先保留实例而非 stuff 区域,然后移除面积低于阈值的 stuff 区域:

Panoptic-DeepLab 等自底向上模型会预测语义图,同时预测每个目标的中心点,以及从每个像素指向其中心的偏移量,然后根据 thing 像素所指向的中心点对其分组。通用模型则使用一种掩码分类架构来完成语义、实例和全景分割。Mask2Former会预测一组固定数量的查询,每个查询生成一个掩码和一个类别,可同时覆盖 things 和 stuff;它在发表于 CVPR 2022 的论文中报告了 COCO 全景数据集上 57.8 PQ 的成绩。下面的 Hugging Face Transformers 流水线会运行一个在 COCO 全景数据集上训练的 Mask2Former 检查点:

import numpy as np
from transformers import pipeline

# Load Mask2Former trained on COCO panoptic: 80 thing and 53 stuff classes
segmenter = pipeline("image-segmentation", model="facebook/mask2former-swin-tiny-coco-panoptic")

# Each returned segment is one non-overlapping region with a class label and a binary mask
segments = segmenter("https://ultralytics.com/images/bus.jpg", subtask="panoptic")

for segment in segments:
    share = np.array(segment["mask"]).mean() / 255
    print(f"{segment['label']}: {share:.1%} of pixels")

输出列出了 10 个分割区域。4 个人、2 个手提包和 1 辆公交车(占图像的 30.7%)各自作为独立的 thing 区域出现;另外还有 pavement-merged(30.9%)、building-other-merged(19.5%)和 tree-merged(4.8%)三个 stuff 区域各自形成一个区域;后缀 "-merged" 表示这些 COCO stuff 类别由更细的标签合并而成。每个像素只属于一个分割区域,没有被任何区域覆盖的 0.4% 像素则为 void。

全景质量(PQ)#

全景预测使用全景质量进行评分。如果预测分割区域与同类别的真实分割区域之间的交并比(IoU)超过 0.5,两者就算匹配;由于分割区域彼此不重叠,每个区域最多只能匹配一次。匹配项为真正例(TP),未匹配的预测为假正例(FP),未匹配的真实分割区域为假负例(FN)。PQ 等于所有匹配项 IoU 之和除以 TP + ½FP + ½FN,可分解为两部分:

  • 分割质量(SQ):匹配区域的平均 IoU,用于衡量掩码的贴合程度。
  • 识别质量(RQ):TP / (TP + ½FP + ½FN),即分割区域检测的 F1 分数。

PQ 按类别计算并取平均,基准测试还会分别报告 things 和 stuff 的 PQ。

全景分割与语义分割、实例分割的区别#

  • 语义分割:回答每个像素“这是什么类别?”。三个相邻的汽车会成为一个汽车区域。
  • 实例分割:仅对检测到的目标回答“这个像素属于哪个目标?”。背景像素没有标签,不同目标的掩码也可能重叠。
  • 全景分割:为每个像素同时回答这两个问题,并确保每个像素恰好属于一个分割区域。

Ultralytics YOLO26 通过独立任务提供这两部分功能:-seg 模型会为每个目标返回掩码和类别,而 -sem语义分割模型会为每个像素返回类别,并在 19 个 Cityscapes 类别或 150 个 ADE20K 类别上进行预训练。

实际应用#

  • 自动驾驶车辆:一次输出即可将可行驶道路和人行道作为 stuff,并将每名行人和每辆车作为独立的 thing,供跟踪器跟踪。
  • 机器人:移动机器人需要一张一致的地图,既标出可供行驶的地面,也标出每个可能要拾取或避开的物体。
  • 医学图像分析:数字病理分析会将组织区域分割为 stuff,并将单个细胞核和细胞作为 things 进行计数。
  • 3D 和视频:视频全景分割会在各帧之间保持实例 ID 一致;在 SemanticKITTI 和 nuScenes 上进行基准评估的激光雷达全景分割,则会为扫描中的每个 3D 点标注类别和实例 ID。

探索解决方案

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

使用 Ultralytics YOLO 将无人机和航空影像转化为农业、水产养殖、保护工作和地理空间分析的实时洞察。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 将计算机视觉应用于航空航天领域,包括飞机检查、跑道 FOD 检测、机场地面作业和复合材料缺陷检测。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来