Tensorflow Image Classification - Komplet guide til billedklassificering

Indholdsfortegnelse:

Anonim

Oversigt over Tensorflow Image Classification

Billedklassificering er en proces / opgave, der bruges til at udtrække informationsklasser fra et billede, eller med andre ord det er en proces med at klassificere et billede baseret på dets visuelle indhold. Tensorflow Image Classification kaldes processen med computervision.

For eksempel kan vi finde ud af, hvilken slags objekt der vises på billedet, hvor det er et menneske, et dyr eller en hvilken som helst slags objekt.

Hvad er Tensorflow Image Classification?

  • Tensorflow giver en speciel slags billedklassificering foruddannet og optimeret model, der indeholder mange forskellige slags objekter, det er magtfuldt, at det kan identificere hundreder af forskellige slags objekter, der inkluderer mennesker, aktiviteter, dyr, planter og steder og mange flere.
  • For det første bliver det foruddannet med forskellige klasser af billeder.
  • Derefter er dens vigtigste funktion at forudsige, hvad et billede repræsenterer.

Eks: Hvis jeg har en model, der trænes i de to forskellige slags klasser - Hund eller kat

Efter dette giver et billede som input det giver sandsynlighedsforholdet som output

Efter træning af denne model skal den forudsige den rigtige output fra det givne billede.

Produktion:

DyretypeSandsynlighed
Hund0.04
Kat0, 96

Fra ovenstående output kan vi klassificere, at der kun er 4% chancer for, at billedet indeholder en hund og 96% chancer for, at det givne inputbillede indeholder en kat.

Et billede kan indeholde 1 eller flere forskellige slags klasser, som vores model trænes på. Det kan også klassificere flere objekter.

Misforståelse om billedklassificering

  • Mange mennesker misforstår også begrebet billedklassificering og computersyn
  • Folk tror, ​​at billedklassificering kan fortælle dig positionen af ​​objektet eller identificere objekterne på billedet. Billedklassificering kan kun give sandsynligheden for, at billedet indeholder en eller flere klasser.
  • Hvis du vil identificere objektet eller ønsker at kende objektets placering i billedet, skal du bruge Objektdetektion.

Billedklassificeringstrin

Nedenfor er de forskellige trin, der skal følges for billedklassificering:

1. Definition af klasser

Definér dine klasser klart afhængigt af mål og egenskaber ved billeddataene, hvilket betyder, at klassificeringen af ​​klassen skal være klart defineret.

2. Valg af funktioner

Funktioner til at finde forhold mellem de klasser, der kan etableres ved hjælp af et billeds farve, billedets tekstur, multispektrale og multitemporale egenskaber ved billedet.

3. Træningsdataeksempel

Kontroller det lille sæt træningsdata for at bestemme for at tage passende beslutninger. Der er hovedsageligt to teknikker, der er overvåget og uovervåget læring, der vælges på basis af træningsdata.

4. Find afgørelsesregel

En passende beslutning træffes på grundlag af at sammenligne klassificering med træningsdataene.

5. Klassificering

Fra ovennævnte beslutningsregler skal du klassificere alle pixels i en enkelt klasse. Ved klassificering bruger den to metoder pixel efter pixel klassificering og per felt klassificering baseret på områdesegmentering.

6. Til sidst skal du kontrollere resultaterne

Kontroller nøjagtigheden og pålideligheden, og kontroller resultatet af, hvordan det klassificerede klasserne. Dette er de vigtigste ting, du skal følge for enhver type billedklassificering.

Trin til arkivering af Tensorflow Image Classification - ved hjælp af Neural Network

  • Tensorflow giver tf.keras et API på højt niveau til at bygge og træne modeller i Tensorflow.
  • Importer de nødvendige pakker
  • Hent dataene fra en ekstern kilde, eller få adgang til datasættet Keras leverer en bred vifte af datasæt.
  • Sørg for, at dine billeddata er korrekt mærket.
  • Opdel datasæt i Togbilleder med etiketter og testsæt indeholder også billeder og etiketter.
  • Udforsk dataene ved at se på formen, længden på dataene, før du træner modellen. Så du kan forstå, hvordan der ikke findes nogen eksempler i datasættet.
  • Forarbejd data, indstil billedstørrelse til 0 til 255 pixels i henhold til datasættet. Vis 20 til 25 billeder med dens etiket.
  • Byg en model - oprettelse af et neuralt netværk, konfiguration af lagene i modellen, kompilering af modellen
  • Opsæt netværkslagene - det bruges til at udtrække repræsentation fra de givne data. Mange enkle lag er bundet til at skabe hele netværket. For lag giver Tensorflow tf.keras.layers-pakken til oprettelse af forskellige typer lag.
  • Kompilér modellen - mens kompilering af modellen er der 3 nødvendige kompileringstrin
    • Optimizer - optimizer brugt til opdatering og beregning af en passende og optimal værdi for modelparametre. Tensorflow Keras leverer forskellige typer optimizers som Adam, SGD og Adagrad.
    • Tabsfunktion - tab bruges til at beregne modelnøjagtighed under træning af modellen. Hvis tabsfunktionen minimeres under træning betyder det, at modellen fungerer godt.
    • Metrics - bruges til at måle og observere træning og test af modeller. For eksempel at kontrollere nøjagtigheden af ​​modellen i hvert trin, som billedet klassificerer korrekt eller ej.
  • Togmodel - Fremfør træningsdataene med deres etiket til modellen. Tilpas funktioner og indstil epoker, der er iterationer til at træne modellen.
  • Evaluer nøjagtighed - nu er vores model trænet, men hvordan vi kan verificere, at forudsigelser er sandt. Til det må vi kontrollere, hvordan den træne model klarer sig i testsættet. Brug model. Evaluer funktionen, og send testbilledet, og markér den i funktionen.
  • Forudsigelse - nu er vores model klar til at lave en model til brug af forudsigelser. Forudsig funktion for at forudsige billedetiketter.

Eksempel

Prøv selv billedklassificeringseksemplet for at få en bedre forståelse af billedklassificering. Tensorflow giver mange indbyggede datasæt, såsom MNIST-data, den indeholder en anden type billede med dets etiketter. Prøv at forudsige klasser i dette billede ved hjælp af begrebet billedklassificering.

Dette er linket til eksemplet, der er givet af Tensorflow selv ved hjælp af Tensorflow Keras-pakken.

https://www.tensorflow.org/tutorials/keras/basic_classification

Bare følg de samme trin for at arkivere billedklassificering.

Konklusion

Tensorflow giver mange biblioteksunderstøttelser til arkivering af billedklassificering. Den billedklassificeringsmodel, som tensorflow tilvejebringer, er hovedsageligt nyttig til klassificering med én etiket. Deres model uddannet til at genkende 1000 forskellige slags klasser. Hvis du vil bruge en tilpasset model end også tensorflow giver den mulighed for tilpasning.

Anbefalede artikler

Dette er en guide til Tensorflow Image Classification. Her har vi diskuteret, hvad er tensorflow-billedklassificering? forskellige trin i billedklassificering og hvordan arkivere tensorflow ved hjælp af neurale netværk. Du kan også gennemgå vores andre foreslåede artikler for at lære mere -

  1. Hvad er TensorFlow?
  2. Introduktion til Tensorflow
  3. TensorFlow-alternativer
  4. Sådan installeres TensorFlow
  5. Implementering af neurale netværk