语义分割:mmsegmentation
课程链接:语义分割与MMSegmentation_哔哩哔哩_bilibili
OpenMMLab开源图像分割算法库MMSegmentation
算法库主页:https://github.com/open-mmlab/mmsegmentation
代码教程:https://github.com/TommyZihao/MMSegmentation_Tutorials
1.什么是语义分割
1.1 任务:
将图像按照物体的类别分割成不同的区域,相当于对每个像素进行分类。
1.2 应用:
- 无人驾驶:感知汽车周围的环境:车辆、行人等等
- 人像分割:换背景、扣人像等等
- 智能遥感:分析地表农作物、水域、道路、农田分布、船舶等等
- 医疗影像分析:X光、CT等等肿瘤分析\
1.3图像分割的不同层次
语义分割 vs 实例分割 vs 全景分割
- mmdet是实例分割,先做检测
-
语义分割 : 仅考虑像素的类别 不分割同一类的不同实体
-
实例分割 : 分割不同的实体 仅考虑前景物体
-
全景分割 : 背景仅考虑类别 前景需要区分实体
三者的难度越来越高。
2. 深度学习时代演进历程
2.1 语义分割的基本思路
2.1.1 按颜色分割
先验知识:物体内部的颜色相近,边界的颜色变化
通过上面的先验知识就可以按颜色相近的色块进行聚类。
2.1.2 逐像素分类
由于卷积神经网络的兴起给图像分类注入了新的血液,但之前都没有应用在图像分割领域。因此,最初的应用方式就是这种逐像素的分类,具体步骤如下:
提取一个卷积窗口图像
把这个图像输入卷积神经网络中预测一个类别,该类别作为提取的图像的中心点坐标的类别
返回 1 ,继续滑动窗口进行预测下个像素
语义分割模型的评价方法
基于交并集的评估指标
Accuracy = 交集面积 / 真实面积
IoU = 交集 / 并集
Dice = 2 x 交集 / GT + Pred
所有的平均值 mAcc mIoU mDice
并集的计算: GT + Pred - 交集
在机器学习分类项目中,我们一般:
用precision来评估某类别分类的准确性; 用accuracy来评估总体分类的准确性。
recall与precision区别:
(1)recall,召回率又名查全率,与漏报率有关,(漏报率,FN,即错误的预测为负样本,换句话说,将实际为正的样本预测为负),详情参照混淆矩阵,如下。
其中,T指预测正确(预测为正样本,实际也为正样本的情况),F指预测错误。
recall=TP/(TP+FN),可理解为,实际为正的样本中,预测正确的样本的比例。
应用于,医生预测病人癌症的情况,病人更关注的是是否漏报,漏报会导致病被忽略,延误治疗。 通过记忆漏报率,可清晰理解recall的概念。
(2)precision,精准率又名查准率,与误报率有关,(误报率,FP,即错误的预测为正样本,换句话说,将实际为负的样本预测为正)。
precision=TP/(TP+FP),可理解为,在预测为正的样本集合中,预测正确的样本的比例。