【深度之眼】【Pytorch打卡第20天】:图像分割

本文介绍了图像分割的概念,包括超像素分割、语义分割、实例分割和全景分割,并详细探讨了PyTorch-Hub的常用函数。接着,文章概述了FCN、UNet和DeepLab系列模型,强调了它们在图像分割任务中的应用和特点。通过实例演示,阐述了如何使用PyTorch进行图像分割。最后,提到了DeepLabV3+的改进,并给出了训练Unet进行人像抠图的相关资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


图像分割:将图像每一个像素分类

一、图像分割分类

  1. 超像素分割:少量超像素代替大量 像素,常用于图像预处理
  2. 语义分割:逐像素分类,无法区分 个体
  3. 实例分割:对个体目标进行分割, 像素级目标检测
  4. 全景分割:语义分割结合实例分割
  • 超像素分割:少量超像素代替大量像素,常用于图像预处理。下图中,每一个白色的区域都是一个超像素,是由很多像素构成的,通常来说,一个超像素中的像素性质都是非常接近的,例如下面这幅图中的每个超像素中的点颜色都非常接近。超像素分割的意义在于可以用少量的超像素代替大量的超像素,这样可以加快后面的训练速度
  • 语义分割:逐像素分类,无法区分个体,语义分割就是我们通常所说的图像分割, 本质上是一个分类任务,相同的类别具有相同的颜色,如下图所示
  • 实例分割:对个体目标进行分割, 像素级目标检测;实例分割只对我们感兴趣的对象进行分割,如下图所示,只对人物进行了分割,而对树木和草地都没有进行任何处理
  • 全景分割:语义分割结合实例分割,全景分割相当于是语义分割与实例分割结合,既拥有了对每个像素点分类的能力,又拥有了对每个个体进行区分的能力,如下图所示:

答:图像分割由模型与人类配合完成
模型:将数据映射到特征

二、PyTorch-Hub

常用函数

PyTorch-Hub—-PyTorch模型库,有大量模型供开发者调用,下面是Hub常用的三个函数。

  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) 列出当前github项目下有什么模型供我们调用。
  3. torch.hub.help(github,model,force_reload=False 列出模型的参数。

更多参见:https://pytorch.org/hub

实例演示

# -*- coding: utf-8 -*-
"""
# @brief      : torch.hub调用deeplab-V3进行图像分割
"""

import os
import time
import torch.nn as nn
import torch
import numpy as np
import torchvision.transforms as transforms
from PIL import Image
from matplotlib import pyplot as plt

BASE_DIR = os.path.dirname(os.path.abspath(__file__))
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")

if __name__ == "__main__":

    # path_img = os.path.join(BASE_DIR, "demo_img1.png")
    # path_img = os.path.join(BASE_DIR, "demo_img2.png")
    path_img = os.path.join(BASE_DIR, "demo_img3.png")

    # config
    preprocess = transforms.Compose([
        transforms
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值