Mulai sekarangMulai gratis

Menyiapkan gambar masukan Anda

Model ResNet50 asli dilatih dengan gambar berukuran 224 x 224 piksel dan sejumlah operasi pra-pemrosesan; seperti pengurangan nilai piksel rata-rata pada himpunan data pelatihan untuk semua gambar pelatihan. Anda perlu melakukan pra-pemrosesan yang sama pada gambar yang akan diprediksi.

Saat melakukan prediksi pada satu gambar, Anda perlu menyesuaikannya dengan bentuk masukan model, yang dalam kasus ini seperti berikut: (batch-size, width, height, channels). np.expand_dims dengan parameter axis = 0 menambahkan dimensi batch-size, yang merepresentasikan bahwa satu gambar akan diteruskan ke predict. Nilai dimensi batch-size ini adalah 1, karena kita hanya melakukan prediksi pada satu gambar.

Anda akan melalui langkah-langkah pra-pemrosesan ini saat menyiapkan gambar anjing (bernama Ivy) menjadi gambar yang dapat diklasifikasi oleh ResNet50.

Latihan ini merupakan bagian dari kursus

Pengantar Deep Learning dengan Keras

Lihat Kursus

Instruksi latihan

  • Impor image dari tensorflow.keras.preprocessing dan preprocess_input dari tensorflow.keras.applications.resnet50.
  • Muat gambar dengan target_size yang sesuai untuk model Anda.
  • Ubah menjadi array dengan image.img_to_array().
  • Pra-proses img_expanded dengan cara yang sama seperti gambar pelatihan ResNet50 asli diproses menggunakan preprocess_input().

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

# Import image and preprocess_input
from tensorflow.keras.____ import ____
from tensorflow.keras.____.____ import ____

# Load the image with the right target size for your model
img = image.load_img(img_path, target_size=(____, ____))

# Turn it into an array
img_array = image.____(____)

# Expand the dimensions of the image, this is so that it fits the expected model input format
img_expanded = np.expand_dims(img_array, axis = 0)

# Pre-process the img in the same way original images were
img_ready = ____(____)
Edit dan Jalankan Kode