مرجع ل ultralytics/data/utils.py
ملاحظه
هذا الملف متاح في https://github.com/ultralytics/ultralytics/ نقطة / الرئيسية /ultralytics/البيانات/utils.py. إذا اكتشفت مشكلة ، فيرجى المساعدة في إصلاحها من خلال المساهمة في طلب 🛠️ سحب. شكرا لك 🙏!
ultralytics.data.utils.HUBDatasetStats
فئة لإنشاء مجموعة بيانات HUB JSON و -hub
دليل مجموعة البيانات.
البارامترات:
اسم | نوع | وصف | افتراضي |
---|---|---|---|
path |
str
|
المسار إلى data.yaml أو data.zip (مع data.yaml داخل data.zip). الافتراضي هو "coco8.yaml". |
'coco8.yaml'
|
task |
str
|
مهمة مجموعة البيانات. الخيارات هي "كشف" ، "شريحة" ، "وضع" ، "تصنيف". الافتراضي هو "كشف". |
'detect'
|
autodownload |
bool
|
حاول تنزيل مجموعة البيانات إذا لم يتم العثور عليها محليا. الافتراضي هو خطأ. |
False
|
مثل
تنزيل ملفات *.zip من https://github.com/ultralytics/ المحور / الشجرة / الرئيسي / example_datasets أي https://github.com/ultralytics/ المحور / الخام / الرئيسي / example_datasets / coco8.zip coco8.zip.
from ultralytics.data.utils import HUBDatasetStats
stats = HUBDatasetStats('path/to/coco8.zip', task='detect') # detect dataset
stats = HUBDatasetStats('path/to/coco8-seg.zip', task='segment') # segment dataset
stats = HUBDatasetStats('path/to/coco8-pose.zip', task='pose') # pose dataset
stats = HUBDatasetStats('path/to/dota8.zip', task='obb') # OBB dataset
stats = HUBDatasetStats('path/to/imagenet10.zip', task='classify') # classification dataset
stats.get_json(save=True)
stats.process_images()
شفرة المصدر في ultralytics/data/utils.py
426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 |
|
__init__(path='coco8.yaml', task='detect', autodownload=False)
تهيئة الفصل.
شفرة المصدر في ultralytics/data/utils.py
get_json(save=False, verbose=False)
إرجاع مجموعة البيانات JSON ل Ultralytics محور.
شفرة المصدر في ultralytics/data/utils.py
process_images()
ضغط الصور ل Ultralytics محور.
شفرة المصدر في ultralytics/data/utils.py
ultralytics.data.utils.img2label_paths(img_paths)
تعريف مسارات التسمية كدالة لمسارات الصورة.
شفرة المصدر في ultralytics/data/utils.py
ultralytics.data.utils.get_hash(paths)
إرجاع قيمة تجزئة واحدة لقائمة مسارات (ملفات أو dirs).
شفرة المصدر في ultralytics/data/utils.py
ultralytics.data.utils.exif_size(img)
إرجاع حجم PIL المصحح exif.
شفرة المصدر في ultralytics/data/utils.py
ultralytics.data.utils.verify_image(args)
تحقق من صورة واحدة.
شفرة المصدر في ultralytics/data/utils.py
ultralytics.data.utils.verify_image_label(args)
تحقق من زوج واحد من تسمية الصورة.
شفرة المصدر في ultralytics/data/utils.py
ultralytics.data.utils.polygon2mask(imgsz, polygons, color=1, downsample_ratio=1)
تحويل قائمة المضلعات إلى قناع ثنائي بحجم الصورة المحدد.
البارامترات:
اسم | نوع | وصف | افتراضي |
---|---|---|---|
imgsz |
tuple
|
حجم الصورة ك (الارتفاع والعرض). |
مطلوب |
polygons |
list[ndarray]
|
قائمة المضلعات. كل مضلع عبارة عن مصفوفة ذات شكل [N ، M] ، حيث N هو عدد المضلعات ، و M هو عدد النقاط بحيث M ٪ 2 = 0. |
مطلوب |
color |
int
|
قيمة اللون لتعبئة المضلعات على القناع. الإعدادات الافتراضية إلى 1. |
1
|
downsample_ratio |
int
|
عامل يمكن من خلاله تقليل عينة القناع. الإعدادات الافتراضية إلى 1. |
1
|
ارجاع:
نوع | وصف |
---|---|
ndarray
|
قناع ثنائي بحجم الصورة المحدد مع ملء المضلعات. |
شفرة المصدر في ultralytics/data/utils.py
ultralytics.data.utils.polygons2masks(imgsz, polygons, color, downsample_ratio=1)
تحويل قائمة المضلعات إلى مجموعة من الأقنعة الثنائية بحجم الصورة المحدد.
البارامترات:
اسم | نوع | وصف | افتراضي |
---|---|---|---|
imgsz |
tuple
|
حجم الصورة ك (الارتفاع والعرض). |
مطلوب |
polygons |
list[ndarray]
|
قائمة المضلعات. كل مضلع عبارة عن مصفوفة ذات شكل [N ، M] ، حيث N هو عدد المضلعات ، و M هو عدد النقاط بحيث M ٪ 2 = 0. |
مطلوب |
color |
int
|
قيمة اللون لملء المضلعات على الأقنعة. |
مطلوب |
downsample_ratio |
int
|
عامل يتم من خلاله تقليل كل قناع. الإعدادات الافتراضية إلى 1. |
1
|
ارجاع:
نوع | وصف |
---|---|
ndarray
|
مجموعة من الأقنعة الثنائية بحجم الصورة المحدد مع ملء المضلعات. |
شفرة المصدر في ultralytics/data/utils.py
ultralytics.data.utils.polygons2masks_overlap(imgsz, segments, downsample_ratio=1)
إرجاع قناع تداخل (640 ، 640).
شفرة المصدر في ultralytics/data/utils.py
ultralytics.data.utils.find_dataset_yaml(path)
ابحث عن ملف YAML المرتبط بمجموعة بيانات Detect أو Segment أو Pose وقم بإرجاعه.
تبحث هذه الوظيفة عن ملف YAML على المستوى الجذر للدليل المقدم أولا ، وإذا لم يتم العثور عليه ، فإنه يقوم بإجراء بحث متكرر. يفضل ملفات YAML التي لها نفس جذع المسار المقدم. خطأ في التأكيد يتم رفعه إذا لم يتم العثور على ملف YAML أو إذا تم العثور على ملفات YAML متعددة.
البارامترات:
اسم | نوع | وصف | افتراضي |
---|---|---|---|
path |
Path
|
مسار الدليل للبحث عن ملف YAML. |
مطلوب |
ارجاع:
نوع | وصف |
---|---|
Path
|
مسار ملف YAML الذي تم العثور عليه. |
شفرة المصدر في ultralytics/data/utils.py
ultralytics.data.utils.check_det_dataset(dataset, autodownload=True)
قم بتنزيل مجموعة بيانات و/أو التحقق منها و/أو فك ضغطها إذا لم يتم العثور عليها محليا.
تتحقق هذه الوظيفة من توفر مجموعة بيانات محددة ، وإذا لم يتم العثور عليها ، فلديها خيار التنزيل و قم بفك ضغط مجموعة البيانات. ثم يقرأ ويوزع بيانات YAML المصاحبة ، مما يضمن تلبية المتطلبات الرئيسية وأيضا يحل المسارات المتعلقة بمجموعة البيانات.
البارامترات:
اسم | نوع | وصف | افتراضي |
---|---|---|---|
dataset |
str
|
المسار إلى مجموعة البيانات أو واصف مجموعة البيانات (مثل ملف YAML). |
مطلوب |
autodownload |
bool
|
ما إذا كنت تريد تنزيل مجموعة البيانات تلقائيا إذا لم يتم العثور عليها. الإعدادات الافتراضية إلى صواب. |
True
|
ارجاع:
نوع | وصف |
---|---|
dict
|
معلومات ومسارات مجموعة البيانات التي تم تحليلها. |
شفرة المصدر في ultralytics/data/utils.py
ultralytics.data.utils.check_cls_dataset(dataset, split='')
يتحقق من مجموعة بيانات تصنيف مثل Imagenet.
تقبل هذه الوظيفة dataset
اسم ومحاولات استرداد معلومات مجموعة البيانات المقابلة.
إذا لم يتم العثور على مجموعة البيانات محليا ، فإنها تحاول تنزيل مجموعة البيانات من الإنترنت وحفظها محليا.
البارامترات:
اسم | نوع | وصف | افتراضي |
---|---|---|---|
dataset |
str | Path
|
اسم مجموعة البيانات. |
مطلوب |
split |
str
|
تقسيم مجموعة البيانات. إما "val" أو "test" أو "". الإعدادات الافتراضية إلى ''. |
''
|
ارجاع:
نوع | وصف |
---|---|
dict
|
قاموس يحتوي على المفاتيح التالية: - "train" (Path): مسار الدليل الذي يحتوي على مجموعة التدريب لمجموعة البيانات. - 'val' (المسار): مسار الدليل الذي يحتوي على مجموعة التحقق من صحة مجموعة البيانات. - "اختبار" (مسار): مسار الدليل الذي يحتوي على مجموعة اختبار مجموعة البيانات. - 'nc' (int): عدد الفئات في مجموعة البيانات. - "الأسماء" (dict): قاموس لأسماء الفئات في مجموعة البيانات. |
شفرة المصدر في ultralytics/data/utils.py
ultralytics.data.utils.compress_one_image(f, f_new=None, max_dim=1920, quality=50)
يضغط ملف صورة واحدة إلى حجم أصغر مع الحفاظ على نسبة العرض إلى الارتفاع وجودته باستخدام أي من Python مكتبة التصوير (PIL) أو مكتبة OpenCV. إذا كانت صورة الإدخال أصغر من الحد الأقصى للبعد ، فلن تكون كذلك تغيير حجم.
البارامترات:
اسم | نوع | وصف | افتراضي |
---|---|---|---|
f |
str
|
المسار إلى ملف صورة الإدخال. |
مطلوب |
f_new |
str
|
المسار إلى ملف صورة الإخراج. إذا لم يتم تحديده ، الكتابة فوق ملف الإدخال. |
None
|
max_dim |
int
|
الحد الأقصى للبعد (العرض أو الارتفاع) للصورة الإخراج. الافتراضي هو 1920 بكسل. |
1920
|
quality |
int
|
جودة ضغط الصورة كنسبة مئوية. الافتراضي هو 50٪. |
50
|
مثل
شفرة المصدر في ultralytics/data/utils.py
ultralytics.data.utils.autosplit(path=DATASETS_DIR / 'coco8/images', weights=(0.9, 0.1, 0.0), annotated_only=False)
قم بتقسيم مجموعة البيانات تلقائيا إلى تقسيمات القطار / val / الاختبار واحفظ الانقسامات الناتجة في ملفات autosplit_ * .txt.
البارامترات:
اسم | نوع | وصف | افتراضي |
---|---|---|---|
path |
Path
|
المسار إلى دليل الصور. الإعدادات الافتراضية هي DATASETS_DIR / "coco8 / images". |
DATASETS_DIR / 'coco8/images'
|
weights |
list | tuple
|
تدريب الكسور المنقسمة والتحقق من صحتها واختبارها. الإعدادات الافتراضية هي (0.9 ، 0.1 ، 0.0). |
(0.9, 0.1, 0.0)
|
annotated_only |
bool
|
إذا كان هذا صحيحا، فلن يتم استخدام سوى الصور التي تحتوي على ملف txt مرتبط. الإعدادات الافتراضية إلى خطأ. |
False
|
شفرة المصدر في ultralytics/data/utils.py
ultralytics.data.utils.load_dataset_cache_file(path)
تحميل Ultralytics * قاموس .cache من المسار.
شفرة المصدر في ultralytics/data/utils.py
ultralytics.data.utils.save_dataset_cache_file(prefix, path, x, version)
حفظ Ultralytics مجموعة البيانات * .cache قاموس x إلى المسار.