Datasets documentation
تصنيف الصور
تصنيف الصور
تُستخدم مجموعات بيانات تصنيف الصور لتدريب نموذج على تصنيف صورة كاملة. هناك مجموعة واسعة من التطبيقات التي تتيحها هذه المجموعات، مثل تحديد أنواع الحياة البرية المهددة بالانقراض أو فحص الصور الطبية للكشف عن الأمراض. ستوضح لك هذه الدليل كيفية تطبيق التحويلات على مجموعة بيانات لتصنيف الصور.
قبل أن تبدأ، تأكد من تثبيت أحدث إصدارات من albumentations وcv2:
pip install -U albumentations opencv-python
يستخدم هذا الدليل مجموعة بيانات Beans لتحديد نوع مرض نبات الفول بناءً على صورة لورقه.
حمّل مجموعة البيانات واطّلع على مثال:
>>> from datasets import load_dataset
>>> dataset = load_dataset("AI-Lab-Makerere/beans")
>>> dataset["train"][10]
{'image': <PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=500x500 at 0x7F8D2F4D7A10>,
'image_file_path': '/root/.cache/huggingface/datasets/downloads/extracted/b0a21163f78769a2cf11f58dfc767fb458fc7cea5c05dccc0144a2c0f0bc1292/train/angular_leaf_spot/angular_leaf_spot_train.204.jpg',
'labels': 0}تحتوي مجموعة البيانات على ثلاثة حقول:
image: كائن صورة من مكتبة PIL.image_file_path: مسار ملف الصورة.labels: التسمية أو الفئة الخاصة بالصورة.
التالي، اطّلع على صورة:

الآن طبّق بعض عمليات المعالجة باستخدام albumentations. ستقوم بقص الصورة عشوائياً، وقلبها أفقياً، وضبط سطوعها.
>>> import cv2
>>> import albumentations
>>> import numpy as np
>>> transform = albumentations.Compose([
... albumentations.RandomCrop(width=256, height=256),
... albumentations.HorizontalFlip(p=0.5),
... albumentations.RandomBrightnessContrast(p=0.2),
... ])أنشئ دالةً لتطبيق التحويل على الصور:
>>> def transforms(examples):
... examples["pixel_values"] = [
... transform(image=np.array(image))["image"] for image in examples["image"]
... ]
...
... return examplesاستخدم دالة set_transform() لتطبيق التحويل على دفعات مجموعة البيانات أثناء التشغيل لتقليل مساحة القرص المستهلكة:
>>> dataset.set_transform(transforms)يمكنك التحقق من نجاح التحويل عن طريق الوصول إلى pixel_values في المثال الأول:
>>> import numpy as np
>>> import matplotlib.pyplot as plt
>>> img = dataset["train"][0]["pixel_values"]
>>> plt.imshow(img)

Update on GitHubالآن بعد أن أصبحت تعرف كيفية معالجة مجموعة بيانات لتصنيف الصور، تعلّم كيفية تدريب نموذج تصنيف الصور واستخدامه للاستدلال.