توسيم الصور
توسيم الصور بمربعات الإحاطة والمضلعات والرسم الحر ونقاط المعالم.
توسيم الصور
يدعم نظام توسيم الصور في Potato طرق توسيم متعددة لمهام الرؤية الحاسوبية بما في ذلك كشف الكائنات، والتجزئة، وتوسيم النقاط المفتاحية.
الأدوات المدعومة
| الأداة | الوصف | حالة الاستخدام |
|---|---|---|
bbox | مربعات إحاطة مستطيلة | كشف الكائنات |
polygon | مضلعات متعددة النقاط | تجزئة النسخ |
freeform | رسم حر | أشكال غير منتظمة |
landmark | علامات نقطية | كشف النقاط المفتاحية |
fill | أداة ملء على مستوى البكسل | أقنعة التجزئة |
eraser | مسح المناطق المرسومة | تصحيح أقنعة التجزئة |
brush | أداة فرشاة الرسم | تجزئة دقيقة |
الإعداد الأساسي
yaml
annotation_schemes:
- name: "objects"
description: "Draw boxes around all objects"
annotation_type: "image_annotation"
tools:
- bbox
labels:
- person
- car
- bicycleخيارات الإعدادات
| الحقل | النوع | الافتراضي | الوصف |
|---|---|---|---|
name | string | مطلوب | معرّف فريد للتوسيم |
description | string | مطلوب | التعليمات المعروضة للموسِّمين |
annotation_type | string | مطلوب | يجب أن يكون "image_annotation" |
tools | list | مطلوب | أدوات التوسيم المفعلة (bbox، polygon، freeform، landmark، fill، eraser، brush) |
labels | list | مطلوب | تسميات الفئات للتوسيمات |
zoom_enabled | boolean | true | تفعيل عناصر التكبير |
pan_enabled | boolean | true | تفعيل التنقل بالسحب |
min_annotations | integer | 0 | الحد الأدنى للتوسيمات المطلوبة |
max_annotations | integer | null | الحد الأقصى للتوسيمات المسموحة (null = غير محدود) |
freeform_brush_size | integer | 5 | حجم الفرشاة للرسم الحر |
freeform_simplify | float | 2.0 | عامل تبسيط المسار |
إعداد التسميات
يمكن أن تكون التسميات نصوصًا بسيطة أو كائنات مفصلة:
yaml
# Simple labels (auto-colored)
labels:
- person
- car
- tree
# Detailed labels with custom colors and shortcuts
labels:
- name: "person"
color: "#FF6B6B"
key_value: "1"
- name: "car"
color: "#4ECDC4"
key_value: "2"
- name: "bicycle"
color: "#45B7D1"
key_value: "3"أمثلة
كشف الكائنات (مربعات الإحاطة)
yaml
annotation_schemes:
- name: "detection"
description: "Draw bounding boxes around all vehicles"
annotation_type: "image_annotation"
tools:
- bbox
labels:
- name: "car"
color: "#3B82F6"
key_value: "1"
- name: "truck"
color: "#10B981"
key_value: "2"
- name: "motorcycle"
color: "#F59E0B"
key_value: "3"
min_annotations: 1
zoom_enabled: trueتجزئة النسخ (المضلعات)
yaml
annotation_schemes:
- name: "segmentation"
description: "Draw polygons around each object"
annotation_type: "image_annotation"
tools:
- polygon
labels:
- name: "building"
color: "#8B5CF6"
- name: "road"
color: "#64748B"
- name: "vegetation"
color: "#22C55E"
zoom_enabled: true
pan_enabled: trueتوسيم النقاط المفتاحية (المعالم)
yaml
annotation_schemes:
- name: "facial_landmarks"
description: "Mark facial keypoints"
annotation_type: "image_annotation"
tools:
- landmark
labels:
- name: "left_eye"
color: "#3B82F6"
- name: "right_eye"
color: "#3B82F6"
- name: "nose"
color: "#10B981"
- name: "left_mouth"
color: "#F59E0B"
- name: "right_mouth"
color: "#F59E0B"أدوات متعددة
yaml
annotation_schemes:
- name: "mixed_annotation"
description: "Use boxes for objects and polygons for regions"
annotation_type: "image_annotation"
tools:
- bbox
- polygon
labels:
- name: "object"
color: "#3B82F6"
- name: "region"
color: "#10B981"اختصارات لوحة المفاتيح
| المفتاح | الإجراء |
|---|---|
b | تفعيل أداة مربع الإحاطة |
p | تفعيل أداة المضلع |
f | تفعيل أداة الرسم الحر |
l | تفعيل أداة المعلم |
1-9 | اختيار التسمية |
Delete | إزالة التوسيم المحدد |
Ctrl+Z | تراجع |
Ctrl+Y | إعادة |
+ / - | تكبير/تصغير |
صيغة البيانات
بيانات الإدخال
يجب أن يتضمن ملف البيانات مسارات صور أو عناوين URL:
json
[
{
"id": "img_001",
"image_url": "https://example.com/images/photo1.jpg"
},
{
"id": "img_002",
"image_url": "/data/images/photo2.png"
}
]إعداد حقل الصورة في الإعدادات:
yaml
item_properties:
id_key: id
text_key: image_urlصيغة المخرجات
تتضمن التوسيمات بيانات هندسية لكل توسيم:
json
{
"id": "img_001",
"annotations": {
"objects": [
{
"id": "ann_1",
"type": "bbox",
"label": "car",
"geometry": {
"x": 100,
"y": 150,
"width": 200,
"height": 100
}
},
{
"id": "ann_2",
"type": "polygon",
"label": "building",
"geometry": {
"points": [
[50, 50],
[150, 50],
[150, 200],
[50, 200]
]
}
}
]
}
}صيغ الصور المدعومة
- JPEG / JPG
- PNG
- GIF
- WebP
أقنعة التجزئة
جديد في الإصدار 2.2.0
تتيح أدوات fill وeraser وbrush توسيم أقنعة التجزئة على مستوى البكسل. هذه الأدوات مثالية لمهام التجزئة الدلالية حيث تكون حدود المناطق الدقيقة مطلوبة.
yaml
annotation_schemes:
- name: "segmentation"
description: "Paint segmentation masks"
annotation_type: "image_annotation"
tools:
- fill
- eraser
- brush
labels:
- name: "foreground"
color: "#3B82F6"
- name: "background"
color: "#6B7280"
freeform_brush_size: 10| المفتاح | الإجراء |
|---|---|
i | تفعيل أداة الملء |
e | تفعيل أداة المسح |
r | تفعيل أداة الفرشاة |
مربعات الإحاطة لمستندات PDF
جديد في الإصدار 2.2.0
ارسم مربعات إحاطة على صفحات PDF وصور المستندات. عند دمجها مع نوع العرض pdf في instance_display، يمكن للموسِّمين رسم مربعات على صفحات فردية من مستندات PDF.
yaml
instance_display:
fields:
- key: pdf_url
type: pdf
annotation_schemes:
- name: "document_regions"
description: "Draw boxes around figures and tables"
annotation_type: "image_annotation"
tools:
- bbox
labels:
- name: "figure"
color: "#3B82F6"
- name: "table"
color: "#10B981"
- name: "equation"
color: "#F59E0B"أفضل الممارسات
- استخدم الأدوات المناسبة - مربعات الإحاطة للكشف السريع، والمضلعات للحدود الدقيقة، والملء/الفرشاة للتجزئة
- حدد تسميات واضحة - استخدم فئات متميزة وغير متداخلة
- حدد حدود التوسيم - استخدم
min_annotationsلضمان الاكتمال - فعّل التكبير - ضروري للتوسيمات المفصلة على الصور عالية الدقة
- استخدم اختصارات لوحة المفاتيح - تسرّع التوسيم بشكل ملحوظ
- وفّر ألوان التسميات - يسهّل التمييز بين التوسيمات بصريًا