Pythonbibliotek med neurala nätverk för bildsegmentering baserat på Keras och TensorFlow.

De viktigaste funktionerna i detta bibliotek är:

  • Hög nivå API (bara två rader kod för att skapa en modell för segmentering)
  • 4 modellarkitekturer för binär och flerklassig bildsegmentering (inklusive legendarisk Unet)
  • 25 tillgängliga backbones för varje arkitektur
  • Alla backbones har förtränade vikter för snabbare och bättrekonvergens
  • Hjälpliga segmenteringsförluster (Jaccard, Dice, Focal) och mått (IoU, F-score)

Viktig anmärkning

Vissa modeller i version 1.* är inte kompatibla med tidigare tränade modeller.Om du har sådana modeller och vill ladda dem – backa tillbaka med:

$ pip install -U segmentation-models==0.2.1

Innehållsförteckning

  • Snabbstart
  • Simpel tränings-pipeline
  • Exempel
  • Modeller och backbones
  • Installation
  • Dokumentation
  • Ändra log
  • Citat
  • Licens

Snabbstart

Biblioteket är byggt för att fungera tillsammans med Keras och TensorFlow Keras-ramverk

import segmentation_models as sm# Segmentation Models: using `keras` framework.

Som standard försöker det importera keras, Om den inte är installerad försöker den starta med ramverket tensorflow.keras.Det finns flera sätt att välja ramverk:

Du kan också ange vilken typ av image_data_format som ska användas, segmentationsmodeller fungerar med båda:

Skapad segmenteringsmodell är bara en instans av Keras Model, som kan byggas så enkelt som:

model = sm.Unet()

Avhängigt av uppgiften kan du ändra nätverksarkitekturen genom att välja backbones med färre eller fler parametrar och använda pretrainded vikter för att initialisera den:

model = sm.Unet('resnet34', encoder_weights='imagenet')

Förändra antalet utgångsklasser i modellen (välj ditt fall):

Förändra modellens ingångsform:

Enkel utbildningspipeline

Samma manipulationer kan göras med Linknet, PSPNet och FPN. Mer detaljerad information om modellernas API och användningsområden finns i dokumentationen.

Exempel

Exempel på utbildning av modeller:

  • Binär segmentering (bilar) på CamVid-dataset här.
  • Flerklassig segmentering (bilar, fotgängare) på CamVid-dataset här.

Modeller och ryggraden

Modeller

  • Unet
  • FPN
  • Linknet
  • PSPNet
Unet Linknet
PSPNet FPN

Backbones

Alla backbones har vikter som tränats på 2012 ILSVRC ImageNet dataset (encoder_weights='imagenet').

Installation

Krav

  1. python 3
  2. keras >= 2.2.0 eller tensorflow >= 1.13
  3. keras-applications >= 1.0.7, <=1.0.8
  4. image-classifiers == 1.0.*
  5. efficientnet == 1.0.*

PyPI stable package

$ pip install -U segmentation-models

PyPI latest package

$ pip install -U --pre segmentation-models

Source latest version

$ pip install git+https://github.com/qubvel/segmentation_models

Dokumentation

Den senaste dokumentationen finns på Read theDocs

Change Log

För att se viktiga ändringar mellan versionerna se CHANGELOG.md

Citing

License

Project is distributed under MIT Licence.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *