基于PyTorch的神经网络图像分割模型库

最后编辑于 2019年04月23日 人工智能

要想进行图像处理和图像分析,首先得把图像的特征找出来,这就用到了图像分割(Image Segmentation)。图像分割的模型有很多,语义的、神经网络的、深度学习的等等。

俄罗斯的一位叫做Pavel Yakubovskiy(Павел Якубовский)的小伙,开发了一个基于PyTorch的图像分割模型库,叫做Segmentation models。

Segmentation models的特点是,它是提供了更高级的API,只需两行代码就可以创建神经网络,支持2类分割和多类分割,支持的分割模型架构有Unet、Linknet、FPN、PSPNet,每种架构更是有30种编码器可供选择,而且这些编码器都具有预先训练的权重,能让模型更快更好的收敛。

类型编码器名称
VGG vgg11, vgg13, vgg16, vgg19, vgg11bn, vgg13bn, vgg16bn, vgg19bn
DenseNet densenet121, densenet169, densenet201, densenet161
DPN dpn68, dpn68b, dpn92, dpn98, dpn107, dpn131
Inception inceptionresnetv2
ResNet resnet18, resnet34, resnet50, resnet101, resnet152
SE-ResNet se_resnet50, se_resnet101, se_resnet152
SE-ResNeXt se_resnext50_32x4d, se_resnext101_32x4d
SENet senet154

其实Pavel Yakubovskiy还开发了基于Keras的Segmentation models,使用起来也非常简单。Keras是一个以TensorFlow为基础上高级API,它比TensorFlow更简单更友好。

汽车图像分割:

Image from: Pavel Yakubovskiy

Pavel Yakubovskiy来自莫斯科国立鲍曼技术大学(BMSTU),现在在莫斯科的斯科尔科沃科技学院(SkolTech) 的AeronetLab,做遥感数据分析。

基于PyTorch的Segmentation models开源代码:
https://github.com/qubvel/segmentation_models.pytorch

基于Keras的Segmentation models开源代码:
https://github.com/qubvel/segmentation_models

登录注册后才能评论。