نقدم مجموعة بيانات صور كبيرة HaGRIDv2 (التعرف على إيماءات HA و I mage D ataset) لأنظمة التعرف على إيماءات اليد (HGR). يمكنك استخدامه لتصنيف الصور أو مهام الكشف عن الصور. تسمح مجموعة البيانات المقترحة ببناء أنظمة HGR، والتي يمكن استخدامها في خدمات مؤتمرات الفيديو (Zoom وSkype وDiscord وJazz وما إلى ذلك)، وأنظمة التشغيل الآلي للمنزل، وقطاع السيارات، وما إلى ذلك.
حجم HaGRIDv2 هو 1.5T وتحتوي مجموعة البيانات على 1,086,158 صورة FullHD RGB مقسمة إلى 33 فئة من الإيماءات وفئة جديدة منفصلة "no_gesture"، تحتوي على أوضاع يد طبيعية خاصة بالمجال. أيضًا، تحتوي بعض الصور على فئة no_gesture
إذا كانت هناك يد ثانية خالية من الإيماءات في الإطار. تحتوي هذه الفئة الإضافية على 2164 عينة. تم تقسيم البيانات إلى تدريب 76%، و9% التحقق من صحة واختبار 15% مجموعات حسب الموضوع user_id
، مع 821,458 صورة للتدريب، و99,200 صورة للتحقق من الصحة و165,500 للاختبار.
تحتوي مجموعة البيانات على 65,977 شخصًا فريدًا وعلى الأقل هذا العدد من المشاهد الفريدة. المواضيع هم الأشخاص الذين تزيد أعمارهم عن 18 عامًا. تم جمع مجموعة البيانات بشكل رئيسي في الداخل مع وجود تباين كبير في الإضاءة، بما في ذلك الضوء الاصطناعي والطبيعي. بالإضافة إلى ذلك، تتضمن مجموعة البيانات صورًا تم التقاطها في ظروف قاسية مثل مواجهة النافذة وظهرها. أيضًا، كان على الأشخاص إظهار الإيماءات على مسافة 0.5 إلى 4 أمتار من الكاميرا.
مثال على العينة وشرحها:
لمزيد من المعلومات، راجع ورقة arxiv الخاصة بنا TBA.
2024/09/24
: أطلقنا HaGRIDv2. ؟
تم توسيع مجموعة بيانات HaGRID لتشمل 15 فئة إيماءات جديدة، بما في ذلك إيماءات اليدين
تمت إضافة فئة جديدة "no_gesture" مع أوضاع اليد الطبيعية الخاصة بالمجال ( 2164 عينة، مقسومة على قطار/فال/اختبار يحتوي على 1464، 200، 500 صورة، على التوالي)
تحتوي الفئة الإضافية no_gesture
على 200,390 مربعًا محيطًا
تمت إضافة نماذج جديدة لاكتشاف الإيماءات واكتشاف اليد وتصنيف الإطار الكامل
حجم مجموعة البيانات هو 1.5T
1,086,158 صورة كاملة الوضوح RGB
تقسيم التدريب/التقييم/الاختبار: (821,458) 76% / (99,200) 9% / (165,500) 15% حسب الموضوع user_id
65,977 شخصًا فريدًا
2023/09/21
: أطلقنا HaGRID 2.0. ✌️
يتم دمج جميع ملفات التدريب والاختبار في دليل واحد
وتم مسح البيانات بشكل أكبر وإضافة بيانات جديدة
التدريب والاختبار على وحدات معالجة الرسومات المتعددة
تمت إضافة نماذج جديدة للكشف وتصنيف الإطار الكامل
حجم مجموعة البيانات هو 723 جيجابايت
554,800 صورة FullHD RGB (فئات نظيفة ومحدثة، وأضاف التنوع حسب العرق)
تحتوي الفئة الإضافية no_gesture
على 120,105 عينة
تقسيم التدريب/التقييم/الاختبار: (410,800) 74% / (54,000) 10% / (90,000) 16% حسب الموضوع user_id
37,583 شخصًا فريدًا
2022/06/16
: HaGRID (مجموعة البيانات الأولية)؟
حجم مجموعة البيانات هو 716 جيجابايت
552,992 صورة FullHD RGB مقسمة إلى 18 فئة
تحتوي الفئة الإضافية no_gesture
على 123.589 عينة
تقسيم التدريب/الاختبار: (509,323) 92% / (43,669) 8% حسب الموضوع user_id
34,730 شخصًا فريدًا تتراوح أعمارهم بين 18 و65 عامًا
المسافة من الكاميرا 0.5 إلى 4 أمتار
استنساخ وتثبيت حزم بايثون المطلوبة:
git clone https://github.com/hukenovs/hagrid.git# أو رابط المرآة:cd hagrid# إنشاء بيئة افتراضية بواسطة conda أو venvconda create -n Gestures python=3.11 -y conda تفعيل الإيماءات # تثبيت المتطلباتpip install -r require.txt
قمنا بتقسيم مجموعة بيانات القطار إلى 34 أرشيفًا عن طريق الإيماءات بسبب الحجم الكبير للبيانات. قم بتحميلها وفك الضغط عنها من الروابط التالية:
إيماءة | مقاس | إيماءة | مقاس | إيماءة | مقاس |
---|---|---|---|---|---|
call | 37.2 جيجابايت | peace | 41.4 جيجابايت | grabbing | 48.7 جيجابايت |
dislike | 40.9 جيجابايت | peace_inverted | 40.5 جيجابايت | grip | 48.6 جيجابايت |
fist | 42.3 جيجابايت | rock | 41.7 جيجابايت | hand_heart | 39.6 جيجابايت |
four | 43.1 جيجابايت | stop | 41.8 جيجابايت | hand_heart2 | 42.6 جيجابايت |
like | 42.2 جيجابايت | stop_inverted | 41.4 جيجابايت | holy | 52.7 جيجابايت |
mute | 43.2 جيجابايت | three | 42.2 جيجابايت | little_finger | 48.6 جيجابايت |
ok | 42.5 جيجابايت | three2 | 40.2 جيجابايت | middle_finger | 50.5 جيجابايت |
one | 42.7 جيجابايت | two_up | 41.8 جيجابايت | point | 50.4 جيجابايت |
palm | 43.0 جيجابايت | two_up_inverted | 40.9 جيجابايت | take_picture | 37.3 جيجابايت |
three3 | 54 جيجابايت | three_gun | 50.1 جيجابايت | thumb_index | 62.8 جيجابايت |
thumb_index2 | 24.8 جيجابايت | timeout | 39.5 جيجابايت | xsign | 51.3 جيجابايت |
no_gesture | 493.9 ميجابايت |
التعليقات التوضيحية dataset
: annotations
HaGRIDv2 512px - نسخة خفيفة من مجموعة البيانات الكاملة مع min_side = 512p
119.4 GB
أو باستخدام البرنامج النصي بايثون
بايثون download.py --save_path--التعليقات التوضيحية --dataset
قم بتشغيل الأمر التالي باستخدام المفتاح --dataset
لتنزيل مجموعة البيانات بالصور. قم بتنزيل التعليقات التوضيحية للمرحلة المحددة بواسطة مفتاح --annotations
.
الاستخدام: download.py [-h] [-a] [-d] [-t TARGETS [TARGETS ...]] [-p SAVE_PATH] تحميل مجموعة البيانات... الوسيطات الاختيارية: -h، --help عرض رسالة المساعدة هذه والخروج -a، --annotations تنزيل التعليقات التوضيحية -d، --dataset تنزيل dataset -t TARGETS [TARGETS ...]، --targets TARGETS [TARGETS ... ] الهدف (الأهداف) لتنزيل مجموعة القطار -p SAVE_PATH، --save_path SAVE_PATH حفظ المسار
بعد التنزيل، يمكنك فك ضغط الأرشيف عن طريق تشغيل الأمر التالي:
قم بفك ضغط-d
هيكل مجموعة البيانات هو كما يلي:
├── hagrid_dataset│ ├── call │ │ ├── 00000000.jpg │ │ ├── 00000001.jpg │ │ ├── ... ├── hagrid_annotations │ ├── train │ │ ├── call.json │ │ ├── ... │ ├── val │ │ ├── call.json │ │ ├── ... │ ├── test │ │ ├── call.json │ │ ├── ...
نحن نقدم بعض النماذج التي تم تدريبها مسبقًا على HaGRIDv2 كخط أساسي مع البنى الأساسية الكلاسيكية لتصنيف الإيماءات واكتشاف الإيماءات واكتشاف اليد.
كاشفات الإيماءات | رسم خريطة |
---|---|
يولوv10x | 89.4 |
YOLOv10n | 88.2 |
SSDLiteMobileNetV3Large | 72.7 |
بالإضافة إلى ذلك، إذا كنت بحاجة إلى اكتشاف الأيدي، فيمكنك استخدام نماذج الكشف YOLO، المدربة مسبقًا على HaGRIDv2
كاشفات اليد | رسم خريطة |
---|---|
يولوv10x | 88.8 |
YOLOv10n | 87.9 |
ومع ذلك، إذا كنت بحاجة إلى إيماءة واحدة، فيمكنك استخدام مصنفات الإطار الكامل المدربة مسبقًا بدلاً من أجهزة الكشف. لاستخدام نماذج الإطار الكامل، قم بإزالة فئة no_gesture
مصنفات الإطار الكامل | إيماءات F1 |
---|---|
MobileNetV3_small | 86.7 |
MobileNetV3_large | 93.4 |
فيتامين ب16 | 91.7 |
ريسنيت18 | 98.3 |
ريسنيت152 | 98.6 |
قاعدة كونفنيكست | 96.4 |
يمكنك استخدام النماذج المدربة التي تم تنزيلها، وإلا حدد معلمات للتدريب في مجلد configs
. لتدريب النموذج، قم بتنفيذ الأمر التالي:
وحدة معالجة الرسومات المفردة:
python run.py -c Train -p configs/
وحدة معالجة الرسومات المتعددة:
bash ddp_run.sh -g 0,1,2,3 -c Train -p configs/
والتي -g هي قائمة بمعرفات GPU.
يتم تسجيل الخسارة الحالية ومعدل التعلم والقيم الأخرى في Tensorboard في كل خطوة. اطلع على جميع المقاييس والمعلمات المحفوظة عن طريق فتح سطر الأوامر (سيؤدي هذا إلى فتح صفحة ويب على localhost:6006
):
Tensorboard --logdir=
اختبر النموذج الخاص بك عن طريق تشغيل الأمر التالي:
وحدة معالجة الرسومات المفردة:
python run.py -c test -p configs/
وحدة معالجة الرسومات المتعددة:
باش ddp_run.sh -g 0,1,2,3 -c اختبار -p التكوينات/
والتي -g هي قائمة بمعرفات GPU.
python demo.py -p--المعالم
بايثون demo_ff.py -p
تتكون التعليقات التوضيحية من مربعات محيطة بالأيدي والإيماءات بتنسيق COCO [top left X position, top left Y position, width, height]
مع تسميات الإيماءات. نحن نقدم حقل user_id
الذي سيسمح لك بتقسيم مجموعة بيانات القطار / val / test بنفسك، بالإضافة إلى المعلومات الوصفية التي تحتوي على العمر والجنس والعرق المشروح تلقائيًا.
"04c49801-1101-4b4e-82d0-d4607cd01df0": { "bboxes": [ [0.0694444444، 0.3104166667، 0.2666666667، 0.2640625]، [0.5993055556، 0.2875، 0.2569444444، 0.2760416667] ]، "التسميات": [ "thumb_index2"، "thumb_index2" ]، "united_bbox": [ [0.0694444444، 0.2875، 0.7868055556، 0.2869791667] ], "united_label": [ "thumb_index2" ], "user_id": "2fe6a9156ff8ca27fbce8ada318c592b", "hand_landmarks": [ [ [0.37233507701702123، 0.5935673528948108]، [0.3997604810145188، 0.5925499847441514]، ... ]، [ [0.37388438145820907، 0.47547576284667353]، [0.39460467775730607، 0.4698847093520443]، ... ] ] "meta": { "age": [24.41]، "الجنس": ["أنثى"]، "العرق": ["أبيض"] }
المفتاح - اسم الصورة بدون امتداد
Bboxes - قائمة بصناديق b التي تمت تسويتها لكل توزيع ورق [top left X pos, top left Y pos, width, height]
التسميات - قائمة تسميات الفصل لكل يد، على سبيل المثال، like
، stop
، no_gesture
United_bbox - مجموعة موحدة من صندوقي اليد في حالة إيماءات اليدين ("hand_heart"، "hand_heart2"، "thumb_index2"، "timeout"، "holy"، "take_picture"، "xsign") و 'null' في حالة الإيماءات بيد واحدة
United_label - تسمية فئة لـUnited_bbox في حالة الإيماءات باليدين و"فارغة" في حالة الإيماءات بيد واحدة
معرف المستخدم - معرف الموضوع (مفيد للبيانات المقسمة لتدريب/مجموعات فرعية).
Hand_landmarks - تم التعليق عليها تلقائيًا باستخدام معالم MediaPipe لكل يد.
التعريف - تم شرحه تلقائيًا باستخدام المعلومات الوصفية للشبكات العصبية FairFace وMiVOLO التي تحتوي على العمر والجنس والعرق
هدف | يدرب | فال | امتحان | المجموع |
---|---|---|---|---|
إيماءة | 980924 | 120003 | 200006 | 1300933 |
لا لفتة | 154403 | 19411 | 29386 | 203200 |
مجموع الصناديق | 1135327 | 139414 | 229392 | 1 504 133 |
هدف | يدرب | فال | امتحان | المجموع |
---|---|---|---|---|
مجموع الأيدي مع المعالم | 983991 | 123230 | 201131 | 1 308 352 |
نحن نقدم برنامجًا نصيًا لتحويل التعليقات التوضيحية إلى تنسيق YOLO. لتحويل التعليقات التوضيحية، قم بتشغيل الأمر التالي:
python -m converters.hagrid_to_yolo --cfg--mode <'hands' or 'gestures'>
بعد التحويل، تحتاج إلى تغيير التعريف الأصلي img2labels إلى:
def img2label_paths(img_paths): img_paths = list(img_paths) # تحديد مسارات التسمية كدالة لمسارات الصورة إذا كان "القطار" في img_paths[0]: return [x.replace("train", "train_labels").replace(" .jpg"، ".txt") لـ x في img_paths] elif "اختبار" في img_paths[0]: إرجاع [x.replace("test"، "test_labels").replace(".jpg"، ".txt" ) لـ x في img_paths] elif "val" في img_paths[0]: إرجاع [x.replace("val"، "val_labels").replace(".jpg"، ".txt") لـ x في img_paths]
كما نقدم أيضًا برنامجًا نصيًا لتحويل التعليقات التوضيحية إلى تنسيق Coco. لتحويل التعليقات التوضيحية، قم بتشغيل الأمر التالي:
python -m converters.hagrid_to_coco --cfg--mode <'hands' or 'gestures'>
تم ترخيص هذا العمل بموجب أحد أشكال الترخيص الدولي Creative Commons Attribution-ShareAlike 4.0.
يرجى الاطلاع على الترخيص المحدد.
الكسندر كابيتانوف
أندري ماخليارتشوك
كارينا كفانشياني
الكسندر ناجاييف
رومان كراينوف
انطون نجددين
جيثب
arXiv
يمكنك الاستشهاد بالورقة باستخدام إدخال BibTeX التالي:
@InProceedings{Kapitanov_2024_WACV, author = {Kapitanov, Alexander and Kvanchiani, Karina and Nagaev, Alexander and Kraynov, Roman and Makhliarchuk, Andrei}, title = {HaGRID -- HAnd Gesture Recognition Image Dataset}, booktitle = {Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision (WACV)}, month = {January}, year = {2024}, pages = {4572-4581} }