Main Content

Die Übersetzung dieser Seite ist veraltet. Klicken Sie hier, um die neueste Version auf Englisch zu sehen.

Klassifizierung eines Bilds mithilfe eines vortrainierten Netzes

Dieses Beispiel veranschaulicht, wie ein Bild mithilfe von GoogLeNet, einem vortrainierten tiefen faltenden neuronalen Netz (Deep Convolutional Neural Network), klassifiziert wird.

GoogLeNet wurde mit über einer Million Bildern trainiert und kann Bilder in 1000 Objektkategorien klassifizieren (z. B. Tastatur, Kaffeebecher, Bleistift und viele Tierarten). Das Netz hat eine Vielzahl von Merkmalen für eine große Bandbreite von Bildern erlernt. Es verwendet ein Bild als Eingang und gibt dann eine Bezeichnung für das Objekt im Bild zusammen mit den Wahrscheinlichkeiten für die einzelnen Objektkategorien aus.

Laden des vortrainierten Netzes

Laden Sie das vortrainierte GoogLeNet-Netz. Sie können wahlweise auch ein anderes vortrainiertes Netz für die Bildklassifizierung laden. Für diesen Schritt ist das Supportpaket „Deep Learning Toolbox™ Model for GoogLeNet Network“ erforderlich. Wenn die erforderlichen Supportpakete nicht installiert sind, stellt die Software einen Download-Link zur Verfügung.

net = googlenet;

Lesen und Ändern der Größe des Bilds

Die Größe des zu klassifizierenden Bilds muss mit der Eingangsgröße des Netzes übereinstimmen. Bei GoogLeNet entspricht die Eingangsgröße des Netzes der Eigenschaft InputSize der Bildeingangsschicht.

Lesen Sie das zu klassifizierende Bild und legen Sie seine Größe auf die Eingangsgröße des Netzes fest. Durch diese Größenänderung wird das Seitenverhältnis des Bilds minimal verändert.

I = imread("peppers.png");
inputSize = net.Layers(1).InputSize;
I = imresize(I,inputSize(1:2));

Klassifizieren und Anzeigen des Bilds

Klassifizieren Sie das Bild mit der vorhergesagten Bezeichnung und zeigen Sie es an.

label = classify(net,I);
figure
imshow(I)
title(string(label))

Figure contains an axes object. The axes object with title bell pepper contains an object of type image.

Ein detaillierteres Beispiel, das zeigt, wie auch die besten Vorhersagen und deren jeweils zugeordneten Wahrscheinlichkeiten angezeigt werden können, finden Sie unter Classify Image Using GoogLeNet.

In den nächsten Schritten des Deep Learning können Sie das vortrainierte Netz für andere Aufgaben verwenden. Lösen Sie neue Klassifizierungsprobleme für Ihre Bilddaten mithilfe von Transfer Learning oder Merkmalsextraktion. Beispiele finden Sie unter Start Deep Learning Faster Using Transfer Learning und Train Classifiers Using Features Extracted from Pretrained Networks. Wenn Sie andere vortrainierte Netze ausprobieren möchten, finden Sie unter Pretrained Deep Neural Networks weitere Informationen.

Referenzen

  1. Szegedy, Christian, Wei Liu, Yangqing Jia, Pierre Sermanet, Scott Reed, Dragomir Anguelov, Dumitru Erhan, Vincent Vanhoucke und Andrew Rabinovich. „Going deeper with convolutions.“ Proceedings of the IEEE conference on computer vision and pattern recognition (2015): 1–9.

  2. BVLC GoogLeNet Model. https://github.com/BVLC/caffe/tree/master/models/bvlc_googlenet

Siehe auch

| |

Verwandte Themen