Sarah111-AHM / Semsmah

2 stars 0 forks source link

// #35

Closed Sarah111-AHM closed 1 year ago

Sarah111-AHM commented 1 year ago

الخطوة الثالثة هي تحويل الصورة الرقمية إلى تنسيق مناسب يمكن إدخاله إلى النموذج للتنبؤ بالرقم المكتوب يدويًا.

يحتاج النموذج إلى مدخلات بحجم محدد، والتنسيق الصحيح للصور المستخدمة في تدريب النموذج هو صور ثنائية الأبعاد بحجم 28x28 بكسلًا، ولذلك يجب تحويل الصور الرقمية إلى نفس التنسيق.

يتم ذلك باستخدام دالة np.reshape() التي تحول الصورة الرقمية إلى مصفوفة بأبعاد محددة، وبالتالي يمكن إدخالها إلى النموذج للتنبؤ بالرقم المكتوب يدويًا.

على سبيل المثال، يمكن استخدام الشفرة التالية لتحويل الصور الرقمية إلى التنسيق الصحيح:

import numpy as np
from tensorflow import keras

# تحميل الصورة الرقمية
img_array = np.load('image.npy')

# تحويل الصورة الرقمية إلى التنسيق الصحيح
img_array = img_array.reshape((1, 28, 28, 1))

# تحميل النموذج
model = keras.models.load_model('model.h5')

# التنبؤ بالرقم المكتوب يدويًا في الصورة الرقمية
prediction = model.predict(img_array)
predicted_number = np.argmax(prediction)

# عرض الرقم المكتوب يدويًا المتوقع
import matplotlib.pyplot as plt
plt.imshow(img_array.reshape(28, 28), cmap='gray')
plt.title(f'Predicted Number: {predicted_number}')
plt.show()

في هذا المثال، يمكن تحميل الصورة الرقمية باستخدام دالة np.load()، ثم تحويلها إلى التنسيق الصحيح باستخدام np.reshape()، ومن ثم التنبؤ بالرقم المكتوب يدويًا في الصورة الرقمية باستخدام النموذج، وعرض الرقم المكتوب يدويًا المتوقع باستخدام دالة plt.imshow().