Motion هي أداة مفيدة يمكنها تحويل كاميرا الويب العادية إلى كاميرا مراقبة. وهي تفعل ذلك من خلال مراقبة الإشارة الصادرة عن كاميرا الويب والتقاط لقطات شاشة ومقاطع فيديو عندما تكتشف الحركة. هنا، نعرض لك كيفية تثبيت Motion وإعداد كاميرا ويب لكشف الحركة في Ubuntu Linux.
تثبيت Motion Server
حركة يتم تضمينه افتراضيًا في مستودع Ubuntu الرسمي. وهذا يعني أنه يمكنك تثبيت هذا البرنامج من خلال مدير الحزم apt الخاص بك:
sudo apt install motion v4l-utils
ملحوظة: رغم أننا نتعامل مع Ubuntu في هذه المقالة، فإن Motion سيعمل مع معظم توزيعات Linux أيضًا.
تأكد من أن خادم Motion الخاص بك يعمل بشكل صحيح عن طريق فتح موجه المساعدة الخاص بالبرنامج:
تكوين الحركة لنظامك
قبل أن نبدأ في تكوين Motion، نحتاج إلى نسخ ملف التكوين إلى المجلد الرئيسي حتى يكون لدينا نسخة احتياطية نظيفة من الملف الأصلي. افتح محطة طرفية وانسخ ملف التكوين إلى المجلد الرئيسي:
cp /etc/motion/motion.conf ~/motion.conf.backup
افتح التكوين الأصلي باستخدام محرر النصوص المفضل لديك:
sudo nano /etc/motion/motion.conf
أحد أسهل التعديلات التي يمكنك إجراؤها على خادم Motion الخاص بك هو تغيير جودة الصورة ومخرجات الفيديو. بشكل افتراضي، يضبط الخادم دقته على 640×480 والتي قد تكون صغيرة جدًا بالنسبة لكاميرات الويب الحديثة.
لتغيير ذلك، قم بتشغيل الأمر التالي على جلسة محطة طرفية جديدة للتحقق من الدقة المتوفرة للكاميرا الخاصة بك:
sudo v4l2-ctl -d /dev/video0 --list-formats-ext
ارجع إلى تكوين الحركة الخاص بك، وانتقل لأسفل إلى فئة “معالجة الصور”، ثم ابحث عن كل من width
و height
المتغيرات.
قم بتوفير القيم المناسبة للدقة التي تريدها. في حالتي، أريد تشغيل Motion بدقة 1280×720، لذا أكتب “1280” كعرض و”720″ كارتفاع.
تعيين framerate
قم بضبط قيمة معدل الإطارات الذي تريد التقاط مقاطع الفيديو به. بشكل افتراضي، يتم ضبط هذا على “15” ولكن يمكنك خفضه لتوفير مساحة القرص.
انتقل لأسفل إلى فئة “إخراج الصورة”، ثم اضبط قيمة picture_output
قم بضبط المتغير على “تشغيل”. سيسمح هذا لتطبيق Motion بالتقاط كل من الصورة والفيديو من كاميرا الويب الخاصة بك.
تغيير موقع الحفظ الافتراضي
هناك تعديل آخر يمكنك إجراؤه على خادم Motion وهو تغيير المكان الذي يحفظ فيه بياناته. قد يكون هذا مفيدًا إذا كنت تريد تصدير مقاطع الفيديو والصور الملتقطة إلى دليل بعيد مثبت أو خدمة تخزين سحابي مثل Dropbox.
للبدء، انتقل إلى الدليل الذي تريد حفظ بياناتك فيه أو قم بإنشاء الدليل:
قم بتعيين ملكية الدليل الخاص بك إلى “motion:adm”:
sudo chown -R motion:adm /motion/data
تأكد من أن المسار الكامل إلى الدليل الخاص بك يمكن قراءته من قبل جميع المستخدمين:
sudo chmod -R 755 /motion/data
ارجع إلى تكوين الحركة الخاص بك، وابحث عن target_dir
المتغير، ثم قم بتعيين قيمته إلى المسار الكامل لمجلدك.
ضبط إعدادات الكشف أثناء الحركة
تعمل الحركة من خلال النظر إلى الاختلاف بين بث الفيديو الحالي والبث الذي يسبقه بلحظات. وإذا وجد البرنامج اختلافًا كافيًا بين الاثنين، فإنه يصنف ذلك باعتباره “حركة” ويسجل مقطع فيديو للحدث.
في الوقت الحالي، تفترض Motion أن اختلاف 1500 بكسل كافٍ لتصنيفها على أنها “حركة”. وفي حين أن هذا يجعل اكتشاف الحركة أمرًا سهلاً بالنسبة لمعظم كاميرات الويب، إلا أنه قد يكون حساسًا للغاية بالنسبة للكاميرات ذات الدقة الأعلى.
لتخفيف ذلك، انتقل إلى فئة “اكتشاف الحركة”، ثم ارفع قيمة threshold
متغير. أجد أن 5500 بكسل كافية لمنع Motion من تسجيل الحركات الصغيرة غير الضرورية من موجز كاميرا الويب.
يمكنك أيضًا إضافة threshold_maximum
متغير لتعيين حد أقصى للفرق الذي تعتبره الحركة “حركة”. وهذا مفيد إذا كانت كاميرا الويب الخاصة بك تنظر إلى منطقة مزدحمة وتريد تشغيلها فقط عندما يكون هناك نشاط أقل.
إذا كنت غير متأكد في threshold
و threshold_maximum
القيم الخاصة بكاميرا الويب الخاصة بك، يمكنك السماح لـ Motion بتعديلها لك. للقيام بذلك، أضف المتغير threshold_tune
وضبطه على “تشغيل”.
أخيرًا، يمكنك تكوين Motion لتسجيل اللحظات قبل وبعد اكتشاف الحركة أيضًا. للقيام بذلك، انتقل إلى pre_capture
و post_capture
المتغيرات وتعيين قيمها إلى عدد الإطارات الإضافية التي تريد حفظها.
تمكين واجهة الويب المتحركة
يأتي خادم Motion مزودًا بواجهة ويب تتيح لك مراقبة كاميرا الويب الخاصة بك عن بُعد. لتمكين ذلك، انتقل إلى قسم “Webcontrol” في التكوين، ثم اضبط قيمة webcontrol_localhost
متغير إلى “إيقاف”.
انتقل لأسفل إلى قسم “البث المباشر”، ثم اضبط القيمة stream_localhost
إلى من.”
ملحوظة: لا يوجد لدى Motion أي عمليات تحقق من المصادقة لواجهة الويب الخاصة به. وبالتالي، يمكن لأي شخص يعرف عنوان خادم Motion الخاص بك إلقاء نظرة على كاميرا الويب الخاصة بك والتحكم في الخدمة.
إدارة اللقطات المحفوظة عن بعد
كما ذكرت سابقًا، فإن أفضل طريقة هي حفظ الصور في مجلد Dropbox الخاص بك حتى تتمكن من الوصول إليه من أي مكان تريده. ومع ذلك، إذا كنت تفضل تحميل الصور إلى خادم الملفات الخاص بك (عبر FTP)، فيمكنك استخدام الأمر wput
لتحميل الصور:
افتح ملف تكوين خادم Motion الخاص بك، ثم أدخل أسطر التعليمات البرمجية التالية في نهاية الملف:
on_picture_save wput ftp://YOUR-USERNAME:YOUR-PASSWORD@YOUR-SERVER-ADDRESS %f on_movie_end wput ftp://YOUR-USERNAME:YOUR-PASSWORD@YOUR-SERVER-ADDRESS %f
بدء تشغيل Motion Server واختباره
تأكد من حفظ ملف تكوين الحركة الخاص بك، ثم قم بتشغيل الأمر التالي لبدء تشغيل الخادم:
sudo systemctl enable --now motion.service
تأكد من أن الخادم يعمل بشكل صحيح عن طريق فتح متصفح الويب والانتقال إلى عنوان IP الخاص بجهازك متبوعًا بـ “:8080”.
سيؤدي هذا إلى فتح صفحة ويب تعرض بث الفيديو الحالي من كاميرا الويب الخاصة بك بالإضافة إلى قائمة تحتوي على إجراءات إضافية لخادمك. على سبيل المثال، يمكنك النقر فوق الإجراء -> لقطة لالتقاط صورة ثابتة من كاميرا الويب الخاصة بك.
اختبار ما إذا كان Motion يكتشف ويسجل الحركة من كاميرا الويب الخاصة بك عن طريق تمرير كائن أمام الكاميرا والتحقق من محتوياتها target_dir
الدليل.
هناك أيضًا بث مباشر يمكنك فتحه من مشغل الوسائط أو متصفح الويب. للوصول إلى هذا البث، انتقل إلى عنوان IP الخاص بجهازك متبوعًا بـ “:8081”.
إن تحويل كاميرا الويب العادية لديك إلى نظام اكتشاف الحركة هو أحد الأشياء التي يمكنك القيام بها باستخدام الكاميرات في Linux. تعرف على المزيد حول بعض أفضل تطبيقات كاميرا الويب لنظام Linux والتي يمكنك تثبيتها وتجربتها اليوم.