عن المشروع

InsightFace هو مشروع مفتوح المصدر شامل لتحليل الوجه ثنائي وثلاثي الأبعاد، يتم صيانته بواسطة Jia Guo وJiankang Deng. يوفر مجموعة غنية من الخوارزميات الحديثة للتعرف على الوجه واكتشاف الوجه ومحاذاة الوجه واستبدال الوجه وإعادة بناء الوجه ثلاثي الأبعاد، وكلها محسّنة للتدريب والنشر. المشروع مبني بشكل أساسي على PyTorch وMXNet، ويدعم Python 3.x مع PyTorch 1.6+ و/أو MXNet 1.6-1.8. الوحدات الرئيسية تشمل: 1. التعرف على الوجه: ينفذ ArcFace (CVPR 2019)، وSubCenter ArcFace (ECCV 2020)، وPartialFC (CVPR 2022)، وVPL (CVPR 2021)، والمزيد. يدعم العديد من الشبكات الأساسية بما في ذلك IResNet وMobileFaceNet وMobileNet وInceptionResNet_v2 وDenseNet. يتضمن بيانات التدريب (MS1M المنظف، VGG2، CASIA-Webface)، وخطوط تقييم (IJB، MegaFace)، والنماذج المدربة مسبقًا. 2. اكتشاف الوجه: ينفذ RetinaFace (CVPR 2020) وSCRFD (Arxiv 2021)، ويوفر كود التدريب ومجموعات البيانات والنماذج المدربة مسبقًا ونصوص التقييم. 3. محاذاة الوجه: ينفذ SDUNets (BMVC 2018) للمحاذاة القائمة على خرائط الحرارة وSimpleRegression للانحدار الخفيف للإحداثيات. 4. إعادة بناء الوجه ثلاثي الأبعاد: يتضمن طرقًا لإعادة بناء الوجه ثلاثي الأبعاد أحادي العين، وإعادة بناء الانعكاسية الوجهية (CVPR 2024)، وتقدير النظرة. 5. استبدال الوجه: يوفر نماذج inswapper لاستبدال الهوية الوجهية. 6. اكتشاف الحيوية: إضافة اختيارية لاكتشاف الحيوية بتقنية RGB مع أوضاع عادية/مراقبة، ودرجات لكل وجه، وأسباب رفض الإدخال. يقدم InsightFace 2.0 إطار PrivateFrame لتشويش وفسيفساء الوجه بالفيديو المحلي، واختيار الصور المرجعية، وتحليل JSON قابل للتحرير من خلال سطح المكتب وCLI وسير عمل Python، مع وضع سريع افتراضي يستهدف 15 إطارًا في الثانية للتحليل. يوفر المشروع أيضًا: - حزمة Python لسهولة الاكتشاف والتعرف والمحاذاة على الصور المدخلة، مع اختيار تلقائي لموفر CoreML/CUDA/CPU وذاكرة تخزين مؤقت قابلة لإعادة الاستخدام لترجمة CoreML. - خادم InsightFace: واجهة ويب مستضاف ذاتيًا مع REST API بنمط snake_case وعميل Python للاكتشاف، وفحوصات الحيوية الاختيارية، والمقارنة، والتسجيل، والبحث عن الأشخاص. يعمل على وحدة معالجة مركزية واحدة بنظام Linux x86_64 أو حاوية NVIDIA GPU مع استدلال ONNX Runtime محلي وSQLite، باستخدام نماذج تم التحقق منها من قبل المشغل. يوفر تكميم تضمين INT8 للحفاظ على الدقة وبحث صور لأكثر من 50 مليون صورة على وحدة RTX 5090 GPU واحدة. - InspireFace: SDK للتعرف على الوجه بلغة C/C++ عبر المنصات. - واجهة سطح مكتب رسومية عبر المنصات للتعرف على الوجه وتقييم المؤسسات والتقارير وتجارب استبدال الوجه. تم إصدار الكود تحت ترخيص MIT دون قيود للاستخدام الأكاديمي والتجاري. بيانات التدريب والنماذج متاحة لأغراض البحث غير التجاري فقط. حقق المشروع نتائج ملحوظة بما في ذلك المرتبة الأولى في مسار VISA 1:1 من NIST-FRVT والمركز الأول في تحدي إعادة بناء الوجه ثلاثي الأبعاد أحادي العين القائم على الإسقاط المنظوري في ورشة عمل WCPA من ECCV-2022.