计算机视觉基础(11)——语义分割和实例分割

前言

在这节课,我们将学习语义分割和实例分割。在语义分割中,我们需要重点掌握语义分割概念、常用数据集、评价指标(IoU)以及经典的语义分割方法(Deeplab系列);在实例分割中,需要知道实力分割可以近似看为“目标检测+语义分割”,需要知道Mask R-CNN方法的计算流程,以及评价指标mAP

一、语义分割

1.1  分割类任务的定义

分割类任务是一种密集标注任务,即将图像中每个像素赋予一个语义或者实例标签

1.2  语义分割的应用场景

  • 无人驾驶
  • 机器人
  • 医学图像
  • ……

1.3  常用数据集

1.3.1  Pascal VOC Dataset

VOC数据集是计算机视觉主流数据集之一,由牛津大学、比利时鲁汶大学等高校的视觉研究组联合发布,可以用作分类,分割,目标检测,动作检测和人物定位五类任务,包含21个类别标签,训练1464,验证1449,测试1456。

1.3.2  MS COCO Dataset

MS COCO(Microsoft Common Objects in Context Dataset)是微软发布的一个大规模物体检测,分割及文字定位数据集,支持目标检测、实例分割、全景分割、Stuff Segmentation、关键点检测、看图说话等任务类型,包含80个对象类别。

1.3.3  ADE20K Dataset

ADE20K数据集由 MIT CSAIL 研究组发布,涵盖广泛的场景和对象类别,可用于场景感知、解析、分割、多物体识别和语义理解。该数据集构建了一个场景解析基准,包含150个对象和素材类。

1.3.4  CityScapes Dataset

CityScapes是由奔驰自动驾驶实验室、马克思·普朗克研究所、达姆施塔特工业大学联合发布的图像数据集,专注于对城市街景的语义理解。 该数据集包含50个城市不同场景、不同背景、不同街景,以及30类涵盖地面、建筑、交通标志、自然、天空、人和车辆等的物体标注,共有5000张精细标注的图像和2万张粗略标注的图像。

1.4  评价指标(重点)

平均交并比 (mean Intersection over Union, mIoU) ——每个类别的所有像素去计算交并比

1.5  语义分割方法

1.5.1  基于滑动窗的提取图像块后分类

基于滑动窗提取图像块然后对图像块的中心进行分类

1.5.2  用CNN计算整幅图的特征

用CNN计算整幅图的特征,然后在其上进行标签预测

1.5.3  全卷积网络

【方案一】

设计只含有卷积层而没有降采样操作的神经网络,这样可以同时对所有像素进行标签预测

【方案二】

设计包含卷积层、下采样操作和上采样操作的神经网络。

下采样操作:可以通过池化和加大卷积步长来实现

上采样操作:可以通过插值、逆池化和转置卷积来实现

【插值】

【逆池化】

【转置卷积】

【上采样结构总结】

【U-Net】

1.5.4  DeepLab系列

【Deeplab V1】

【Deeplab V2】

【Deeplab V3】

【Deeplab V3+】

1.5.5  PSPNet

1.5.6  HRNet

二、实例分割

2.1  实例分割的概念

实例分割 可以近似看为 目标检测 + 语义分割

2.2  Mask R-CNN

2.3  评价指标(重点)

2.4  实例分割效果

总结

在本文中,我们学习了语义分割和实例分割,需要清楚二者的区别,并掌握二者的算法流程,需要重点关注语义分割和实例分割的方法举例和评价指标


http://www.niftyadmin.cn/n/5284929.html

相关文章

Python学习路线 - Python语言基础入门 - Python基础综合案例 - 数据可视化 - 动态柱状图

Python学习路线 - Python语言基础入门 - Python基础综合案例 - 数据可视化 - 动态柱状图 基础柱状图构建案例效果通过Bar构建基础柱状图反转x和y轴数值标签在右侧 基础时间线柱状图绘制创建时间线创建时间线自动播放时间线设置主题 动态GDP柱状图绘制需求分析列表的sort方法带名…

Apache Commons CLI:构建命令行应用的利器

引言 大家好!我是小黑,本文聊聊如何用Apache Commons CLI构建命令行应用。咱们都知道,命令行界面(CLI)虽然看起来不如图形界面那么花哨,但在许多场景下,它的效率和便利性是无与伦比的。特别是对…

ARM学习(24)Can的高阶认识和错误处理

笔者来聊一下CAN协议帧的认识和错误处理。 1、CAN协议帧认识 CAN 差分信号,是经过CAN收发器转成差分信号的,CAN RX和TX是逻辑电平。CAN的基础知识,可参考笔者这边文章:ARM学习(21)STM32 外设Can的认识与驱…

开发web应用,用前端技术还是.NET?

选择使用前端技术还是.NET(后端)取决于您的项目需求、团队技能和其他因素。下面是一些考虑因素: 使用前端技术的情况: 1、交互性强的应用: 如果您的网站需要大量客户端交互、动画效果或实时更新,前端技术…

阶段七-GitEE

Git:版本控制软件 Git的优点 1.1 协同修改 多人并行不悖的修改服务器端的同一个文件。 1.2 数据备份 不仅保存目录和文件的当前状态,还能够保存每一个提交过的历史状态。 1.3 版本管理 在保存每一个版本的文件信息的时候要做到不保存重复数据&…

小狐狸ChatGPT付费创作系统 前端对话提示undefined index:temperature解决方法

很多会员使用着ChatGPT付费创作系统,特别是新安装系统后前端输入对话时提示错误undefined index:temperature,检查了反代、检查了KEY均正常,这问题主要是因为后台设置里新用户免费送对话次数为空,没设置赠送次数原因,导…

ArkUI - 状态管理

目录 一、State装饰器 二、自定义组件 三、Prop和Link、Provide和Consume 四、Observed和ObjectLink 五、页面路由 跳转模式 实例模式 使用步骤 一、State装饰器 这里涉及到两个概念 状态 和 视图 状态(State):指驱动视图更新的数…

方舟开发框架(ArkUI)概述

目录 1、基本概念 2、两种开发范式 3、开发框架的特性 4、UI开发(ArkTS声明式开发范式)概述 4.1、特点 4.2、整体架构 4.3、开发流程 方舟开发框架(简称ArkUI)为HarmonyOS应用的UI开发提供了完整的基础设施,包…