PixelLib图像分割

发布于:2024-08-13 ⋅ 阅读:(160) ⋅ 点赞:(0)


前言

图像分割就是把图像分成若干个特定的、具有独特性质的区域并提出感兴趣目标的技术和过程。它是由图像处理到图像分析的关键步骤。

传统的图像分割方法主要分以下几类:基于阈值的分割方法、基于区域的分割方法、基于边缘的分割方法以及基于特定理论的分割方法等。

本文重点的介绍基于深度学习的图像分割,PixelLib是深度学习图像分割的方法之一,官方给出了多个训练好的模型,适合新手使用;

图像分割应用场景:虚拟背景、医学图像处理、自动驾驶、卫星遥感等等


一、PixelLib依赖安装

pip install tensorflow
pip install imgaug
pip install pixellib --upgrade

PixelLib支持两种主要的分割类型,
你可以通过使用Pixel Lib训练数据集来创建对象分割的自定义模型:

语义分割:图像中具有相同像素值的对象使用相同的颜色映射进行分割。
在这里插入图片描述
实例分割:使用不同的颜色贴图分割同一对象的实例。
在这里插入图片描述

二、实例

from pixellib.semantic import semantic_segmentation
segment_image = semantic_segmentation()
# 加载deeplabv3_xception65_ade20k.h5模型
# 模型在官网都有提供了下载链接
segment_image.load_ade20k_model("deeplabv3_xception65_ade20k.h5")
# 输入图片sample1.jpg,输出图片image_new.jpg,overlay = True时图像透明显示分割层
segment_image.segmentAsAde20k("sample1.jpg", output_image_name = "image_new.jpg", overlay = True)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
PixelLib模型主要两类:

1.Deeplabv3+ 预训练模型:用于语义分割,训练数据为 150类的Ade20k 和 20类的Pascalvoc

2.Mask RCNN 预训练模型:用于实例分割,训练数据为 80类的COCO


模型训练

模型训练部分,可以阅读官方文档:
https://pixellib.readthedocs.io/en/latest/custom_train.html
使用标注工具labelme,对数据集进行标准,按照pixellib的数据集格式要求进行训练。
在这里插入图片描述


网站公告

今日签到

点亮在社区的每一天
去签到