تم فحصه في 13.09.2024 ✅ (تم تطوير هذا المشروع على منصة Lightning AI ، تعمل على وحدة معالجة الرسومات L40)
Surveillance Video Summarizer هو نظام يحركه AI يعالج مقاطع الفيديو للمراقبة ، ويستخلص الإطارات الرئيسية ، ويولد تعليقات مفصلة. مدعومًا بنموذج Language Flor-2 الذي تم ضبطه (VLM) الذي تم ضبطه على وجه التحديد على مجموعة بيانات Sphar ، يسلط الضوء على الأحداث البارزة والإجراءات والكائنات داخل لقطات الفيديو وتسجيلها لمراجعة سهلة ومزيد من التحليل.
يمكن العثور على النموذج المضبوط على: Kndrvitja/Florence-Sphar-Finetune-2.
انظر الأداة في العمل أدناه!
تلخيص الفيديو الذي يعمل بنيو ذكاء الذكاء الاصطناعى
استخراج الإطارات تلقائيًا من مقاطع فيديو للمراقبة وإنشاء تعليقات توضيحية تلتقط الإجراءات والتفاعلات والكائنات والأحداث غير العادية. يتم تخزين التعليقات التوضيحية في قاعدة بيانات SQLite لسهولة الاسترجاع.
معالجة الإطار في الوقت الحقيقي
من خلال استخدام الخيوط غير المتزامنة ، يقوم النظام بمعالجة إطارات الفيديو بكفاءة ، مما يسمح بتحليل الوقت الفعلي مع تقليل اختناقات الأداء. يسجل كل ثانية ، مما يضمن سهولة التصحيح والتحقق.
Flor-2 VLM المضبوطة لمجموعة بيانات Sphar
يتم تشغيل عملية التلخيص بواسطة Flor-2 VLM المضبوطة ، والتي تم تدريبها على وجه التحديد على مجموعة بيانات Sphar. تم تحسين هذا النموذج للكشف عن الأحداث الخاصة بالمراقبة ووصفها بدقة أعلى.
واجهة التفاعلية التي تعمل بالجريدة
التفاعل مع سجلات المراقبة من خلال واجهة ويب تعتمد على خريجيو. يمكنك تحديد نطاقات الوقت ، وسيقوم النظام باسترداد وتلخيص وتحليل السجلات المشروحة ، وتوفير رؤى مفصلة في لقطات الفيديو خلال الفترة المحددة باستخدام API Openai. يمكن توسيع هذه الوظيفة لاستفادة النماذج المتقدمة مثل الجوزاء ، مما يتيح التعامل أكثر كفاءة لمقاطع فيديو السياق الأطول وتقديم المزيد من تلخيص الفيديو الشامل عبر الأطر الزمنية الممتدة.
استخراج الإطار :
يتم استخراج الإطارات على فترات منتظمة من ملفات الفيديو المراقبة باستخدام OpenCV.
التعليقات التوضيحية التي تعمل بالنيابة :
يتم تحليل كل إطار من خلال نموذج Language Flor-2 الذي تم ضبطه ، مما يولد شرحًا رائعًا حول المشهد.
تخزين البيانات :
يتم تخزين التعليقات التوضيحية وبيانات الإطار المرتبطة بها في قاعدة بيانات SQLite ، جاهزة للتحليل المستقبلي.
واجهة Gradio : يسمح النظام للمستخدمين بالاستعلام عن سجلات المراقبة دون عناء من خلال توفير نطاق زمني محدد ومطالبات مصممة. يسترجع وتلخيص وتحليل لقطات الفيديو ذات الصلة ، وتقدم رؤى موجزة
git clone https://github.com/Ravi-Teja-konda/Surveillance_Video_Summarizer.git cd Surveillance_Video_Summarizerpip install -r requirements.txtالنموذج والمعالج
يستخدم النظام نموذج Flor-2 Language Model الذي تم ضبطه بشكل جيد لمجموعة بيانات Sphar. يمكن العثور على النموذج الذي تم ضبطه في Kndrvitja/Florence-Sphar-Finetune-2.
تأكد من تخزين مفتاح Openai API الخاص بك في ملف .env كما هو مطلوب.
مسار قاعدة البيانات
أولاً ، قم بتشغيل استخراج الإطار:
python surveillance_video_summarizer.pyبعد ذلك ، تتفاعل مع واجهة Gradio لتحليل السجل:
python surveillance_log_analyzer_with_gradio.pyمن هنا ، يمكنك استخدام واجهة Gradio للاستعلام عن فترات محددة من لقطات الفيديو واسترداد الملخصات المشروحة بناءً على مدخلاتك. يمكنك الاستعلام عن النظام للحصول على إجراءات محددة ، أو أحداث ملحوظة ، أو ملخصات النشاط العام. توفير النطاق الزمني ومطالبة الاستعلام الخاصة بك ، وسيقوم النظام بإرجاع السجلات ذات الصلة
نحن نخطط لتعزيز قدرة النموذج على اكتشاف الأحداث الأكثر تعقيدًا مثل انتهاكات المرور والسلوك المشبوه وسيناريوهات المراقبة الدقيقة الأخرى من خلال تدريب Florence-2 بمزيد من البيانات
في المستقبل سوف يخطط لدعم تدفقات الفيديو في الوقت الفعلي لاستخراج وتحليل الإطار الفوري حيث يتم التقاط الفيديو.
المساهمات مرحب بها! لا تتردد في تقديم طلب سحب.
إذا وجدت هذا المشروع مفيدًا ، ففكر في بطولة GitHub لمساعدة الآخرين على اكتشافه!
مستوحاة من التقدم في نماذج لغة الرؤية مثل فلورنسا 2.
هذا المشروع مرخص بموجب ترخيص Apache 2.0.