Heim > Artikel > Backend-Entwicklung > Beispiel für die Bildklassifizierung in Python
Python ist eine weit verbreitete Programmiersprache, die in der Bildverarbeitung und Bildverarbeitung sehr beliebt ist. In diesem Artikel werden wir Beispiele für die Bildklassifizierung in Python untersuchen. Die Bildklassifizierung ist eine grundlegende Aufgabe in der Computer Vision, bei der es um die Identifizierung von Objekten oder Szenen in Bildern geht. In diesem Artikel wird erläutert, wie Sie das Deep-Learning-Framework Keras in Python verwenden, um das Training und die Vorhersage von Bildklassifizierungsmodellen zu implementieren.
Bevor wir die Bildklassifizierung durchführen, müssen wir die erforderlichen Softwarepakete installieren. Nachfolgend finden Sie die Liste der erforderlichen Pakete:
pip install keras pip install tensorflow pip install numpy pip install Pillow
from keras.datasets import mnist (train_images, train_labels), (test_images, test_labels) = mnist.load_data()Modell erstellenBevor wir das Bildklassifizierungsmodell erstellen, müssen wir die Architektur des Modells definieren. In diesem Beispiel verwenden wir ein Convolutional Neural Network (CNN)-Modell. Das CNN-Modell ist ein Deep-Learning-Modell, das bei der Bildklassifizierung gute Leistungen erbringt. Keras bietet eine einfache Möglichkeit, CNN-Modelle zu erstellen. Das Folgende ist der Code für ein CNN-Beispielmodell:
from keras import layers from keras import models model = models.Sequential() model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1))) model.add(layers.MaxPooling2D((2, 2))) model.add(layers.Conv2D(64, (3, 3), activation='relu')) model.add(layers.MaxPooling2D((2, 2))) model.add(layers.Flatten()) model.add(layers.Dense(64, activation='relu')) model.add(layers.Dense(10, activation='softmax')) model.summary()Im obigen Code definieren wir ein CNN-Modell, das zwei Faltungsschichten und zwei Max-Pooling-Schichten enthält. Das Modell umfasst außerdem zwei dichte Schichten, die jeweils die ReLU-Aktivierungsfunktion verwenden. Trainieren Sie das ModellNachdem wir das Modell definiert haben, müssen wir das Modell trainieren. Während des Trainings lernt das Modell, Eingabebilder den richtigen numerischen Kategorien zuzuordnen. In Keras kann der folgende Code zum Kompilieren und Trainieren des Modells verwendet werden:
model.compile(optimizer='rmsprop', loss='categorical_crossentropy', metrics=['accuracy']) train_images = train_images.reshape((60000, 28, 28, 1)) train_images = train_images.astype('float32') / 255 test_images = test_images.reshape((10000, 28, 28, 1)) test_images = test_images.astype('float32') / 255 from keras.utils import to_categorical train_labels = to_categorical(train_labels) test_labels = to_categorical(test_labels) model.fit(train_images, train_labels, epochs=5, batch_size=64)Im obigen Code verarbeiten wir zunächst das Bild vor und kompilieren dann das Modell mit dem Optimierer als „rmsprop“ und der Verlustfunktion als Cross- Entropiemodell. Anschließend verwenden wir die Trainingsbilder und Beschriftungen, um das Modell zu trainieren. Am Ende jeder Epoche testen wir das Modell anhand von Testbildern und Beschriftungen. Testen Sie das ModellNach Abschluss des Modelltrainings können wir den Testdatensatz verwenden, um die Genauigkeit des Modells zu testen. Das Modell kann mit dem folgenden Code getestet werden:
test_loss, test_acc = model.evaluate(test_images, test_labels) print('test_acc:', test_acc)
predictions = model.predict(test_images) import numpy as np print(np.argmax(predictions[0]))Im obigen Code sagen wir das erste Bild des Testbildsatzes voraus und verwenden dann Numpy, um das Maximum zu finden Indexwert und drucken Sie die Vorhersageergebnisse aus. FazitIn diesem Artikel haben wir vorgestellt, wie man das Deep-Learning-Framework Keras in Python verwendet, um das Training und die Vorhersage von Bildklassifizierungsmodellen zu implementieren. Wir verwenden den MNIST-Datensatz zum Testen und das CNN-Modell zum Training. Abschließend testen wir die Genauigkeit des Modells, indem wir anhand eines Testbildsatzes Vorhersagen treffen. Dieses Beispiel kann als Einführungsbeispiel für Deep Learning und Computer Vision verwendet werden, damit Anfänger verstehen, wie Python zum Implementieren von Bildklassifizierungsaufgaben verwendet wird.
Das obige ist der detaillierte Inhalt vonBeispiel für die Bildklassifizierung in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!