图像分割是什么
Image Segmentation
将图像每一个像素分类
图像分割分类
- 超像素分割:少量超像素代替大量像素,常用于图像预处理
- 语义分割:逐像素分类,无法区分个体
- 实例分割:对个体目标进行分割
- 全景分割:语义分割结合实例分割
本文讨论的是语义分割
模型如何完成图像分割
计算机:3-d张量 → 计算机:3-d张量
图像分割由模型与人类配合完成
模型:将数据映射 到特征
人类:定义特征的物理意义,解决实际问题
PyTorch-Hub
PyTorch模型库,有大量模型供开发者调用 Link
1.torch.hub.load('pytorch/vision', 'deeplabv3_resnet101',pretrained=True)
model=torch.hub.load(github, model, *args, **kwargs)
功能:加载模型
主要参数:
- github:str, 项目名,eg:pytorch/vision,<repo_owner/repo_name[:tag_name]>
- model: str, 模型名
2.torch.hub.list(github, force_reload=False)
3.torch.hub.help(github, model, force_reload=False)
深度学习中的图像分割模型
FCN
Fully Convolutional Networks for Semantic Segmentation
最主要贡献:
利用全卷积完成pixelwise prediction
U-Net
U-Net: Convolutional Networks for Biomedical Image Segmentation
DeepLab系列
V1
Semantic Image Segmentation with Deep Convolutional Nets and Fully Connected CRFs
主要特点:
- 孔洞卷积:借助孔洞卷积,增大感受野
- CRF:采用CRF进行mask后处理
V2
主要特点:
- ASPP(Atrous Spatial Pyramid Pooling):解决多尺度问题
V3
Rethinking Atrous Convolution for Semantic Image Segmentation
主要特点:
- 孔洞卷积的串行
- ASPP的并行
V3+
Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation
主要特点:
deeplabv3基础上机上Encoder-Decoder思想
综述
Deep Semantic Segmentation of Natural and Medical Images: A Review
图像分割资源:
https://github.com/shawnbit/unet-family
https://github.com/yassouali/pytorch-segmentation
Unet实现人像抠图 (Portrait Matting)
数据来源:https://github.com/PetroWu/AutoPortraitMatting
未完待续......