كيف قمت بتكرار مشروع بقيمة 86 مليون دولار في 57 سطرًا من التعليمات البرمجية

عندما تقوم تجربة باستخدام تقنية مفتوحة المصدر بعمل "جيد بما فيه الكفاية"

شرطة فيكتوريا هي وكالة إنفاذ القانون الرئيسية في فيكتوريا ، أستراليا. مع سرقة أكثر من 16000 سيارة في فيكتوريا في العام الماضي - بتكلفة حوالي 170 مليون دولار - تقوم إدارة الشرطة بتجربة مجموعة متنوعة من الحلول التي تعتمد على التكنولوجيا لمكافحة سرقة السيارات. يسمون هذا النظام BlueNet.

للمساعدة في منع المبيعات الاحتيالية للمركبات المسروقة ، توجد بالفعل خدمة على شبكة الإنترنت من VicRoads للتحقق من حالة تسجيلات المركبات. استثمر القسم أيضًا في ماسح ضوئي ثابت للوحة الترخيص - وهو عبارة عن كاميرا ثلاثية القوائم ثابتة تقوم بمسح حركة المرور المارة لتحديد المركبات المسروقة تلقائيًا.

لا تسألني عن السبب ، ولكن في ظهيرة أحد الأيام ، كنت أرغب في تصميم نموذج أولي لماسح ضوئي للوحة ترخيص السيارة يُعلمك تلقائيًا إذا كانت السيارة مسروقة أو غير مسجلة. بعد أن أدركت وجود هذه المكونات الفردية ، تساءلت عن مدى صعوبة ربطها معًا.

ولكن بعد قليل من البحث على Google اكتشفت أن شرطة فيكتوريا خضعت مؤخرًا لتجربة جهاز مماثل ، وكانت التكلفة التقديرية لإطلاقه في مكان ما بالقرب من 86 مليون دولار. أشار أحد المعلقين المخضرمين إلى أن تكلفة 86 مليون دولار لتجهيز 220 سيارة تأتي بسعر 390،909 دولارًا لكل مركبة .

بالتأكيد يمكننا أن نفعل أفضل قليلاً من ذلك.

معايير النجاح

قبل البدء ، أوجزت بعض المتطلبات الأساسية لتصميم المنتج.

المتطلب رقم 1: يجب أن تتم معالجة الصور محليًا

بدا بث الفيديو المباشر إلى مستودع معالجة مركزي الطريقة الأقل كفاءة لحل هذه المشكلة. إلى جانب الفاتورة الضخمة لحركة مرور البيانات ، فأنت تقوم أيضًا بإدخال زمن انتقال الشبكة في عملية قد تكون بطيئة بالفعل.

على الرغم من أن خوارزمية التعلم الآلي المركزية ستصبح أكثر دقة بمرور الوقت ، إلا أنني أردت معرفة ما إذا كان التنفيذ المحلي على الجهاز سيكون "جيدًا بدرجة كافية".

المتطلب رقم 2: يجب أن تعمل مع صور منخفضة الجودة

نظرًا لأنني لا أمتلك كاميرا Raspberry Pi أو كاميرا ويب USB ، لذلك سأستخدم لقطات dashcam - إنها متاحة بسهولة ومصدر مثالي لبيانات العينة. كمكافأة إضافية ، يمثل فيديو dashcam الجودة الإجمالية للقطات التي تتوقعها من الكاميرات المثبتة على السيارة.

المتطلب رقم 3: يجب أن يتم بناؤه باستخدام تقنية مفتوحة المصدر

الاعتماد على برنامج احتكاري يعني أنك ستتعرض للدغة في كل مرة تطلب فيها تغييرًا أو تحسينًا - وسيستمر اللدغ لكل طلب يتم تقديمه بعد ذلك. استخدام التكنولوجيا مفتوحة المصدر أمر لا يحتاج إلى تفكير.

بلدي الحل

على مستوى عالٍ ، يأخذ الحل الخاص بي صورة من فيديو dashcam ، ويضخها من خلال نظام التعرف على لوحة ترخيص مفتوح المصدر المثبت محليًا على الجهاز ، ويستعلم عن خدمة التحقق من التسجيل ، ثم يعرض النتائج للعرض.

تتضمن البيانات التي يتم إرجاعها إلى الجهاز المثبت في مركبة إنفاذ القانون طراز السيارة وطرازها (الذي يستخدم فقط للتحقق مما إذا كانت اللوحات قد سُرقت) وحالة التسجيل وأي إخطارات عن السيارة التي تم الإبلاغ عن سرقتها.

إذا كان هذا يبدو بسيطًا إلى حد ما ، فهذا لأنه كذلك حقًا. على سبيل المثال ، يمكن معالجة جميع معالجة الصور بواسطة مكتبة openalpr .

هذا حقًا كل ما يتطلبه الأمر للتعرف على الشخصيات الموجودة على لوحة الترخيص:

تحذير بسيط

لا يتوفر الوصول العام إلى واجهات برمجة تطبيقات VicRoads ، لذلك تتم عمليات فحص لوحة الترخيص عبر تجريف الويب لهذا النموذج الأولي. في حين أن هذا أمر مستاء بشكل عام - هذا دليل على المفهوم وأنا لا أغلق خوادم أي شخص.

هذا ما تبدو عليه قذارة إثبات المفهوم الخاص بي:

النتائج

يجب أن أقول أنني فوجئت بسرور.

كنت أتوقع أن يكون التعرف على لوحة ترخيص المصدر المفتوح هراء للغاية. بالإضافة إلى ذلك ، ربما لم يتم تحسين خوارزميات التعرف على الصور للوحات الترخيص الأسترالية.

كان الحل قادرًا على التعرف على لوحات الترخيص في مجال رؤية واسع.

على الرغم من أن الحل قد يواجه أحيانًا مشكلات في رسائل معينة.

لكن ... الحل في النهاية سيصلحها.

كما ترى في الصورتين السابقتين ، فإن معالجة الصورة بضع إطارات قفزت لاحقًا من معدل ثقة يبلغ 87٪ إلى شعر يزيد عن 91٪.

أنا واثق ، عفواً من التورية ، أنه يمكن تحسين الدقة عن طريق زيادة معدل العينة ، ثم الفرز حسب أعلى تقييم للثقة. بدلاً من ذلك ، يمكن تعيين حد لا يقبل سوى ثقة أكبر من 90٪ قبل المضي قدمًا للتحقق من صحة رقم التسجيل.

هذه إصلاحات أولية مباشرة للغاية ، ولا تمنع تدريب برنامج التعرف على لوحة الترخيص باستخدام مجموعة بيانات محلية.

السؤال 86،000،000 دولار

لكي نكون منصفين ، ليس لدي أدنى فكرة عما يتضمنه رقم 86 مليون دولار - ولا يمكنني التحدث عن دقة أداة المصدر المفتوح الخاصة بي بدون تدريب محلي مقابل نظام BlueNet التجريبي.

أتوقع أن يشتمل جزء من هذه الميزانية على استبدال العديد من قواعد البيانات القديمة وتطبيقات البرامج لدعم الاستعلام عن لوحات الترخيص ذات التردد العالي والكمون المنخفض عدة مرات في الثانية لكل مركبة.

من ناحية أخرى ، تبدو تكلفة 391 ألف دولار لكل مركبة غنية جدًا - خاصةً إذا لم تكن BlueNet دقيقة بشكل خاص ولا توجد مشاريع تكنولوجيا معلومات كبيرة الحجم لإيقاف تشغيل الأنظمة التابعة أو تحديثها.

التطبيقات المستقبلية

في حين أنه من السهل الوقوع في فخ الطبيعة الأورويلية لشبكة "تعمل دائمًا" من سنيكرز لوحة الترخيص ، إلا أن هناك العديد من التطبيقات الإيجابية لهذه التكنولوجيا. تخيل نظامًا سلبيًا يقوم بفحص زملائك من سائقي السيارات بحثًا عن سيارة مختطفين يقوم تلقائيًا بتنبيه السلطات وأفراد الأسرة إلى موقعهم الحالي واتجاههم.

تمتلئ سيارات Teslas بالفعل بالكاميرات وأجهزة الاستشعار مع القدرة على تلقي تحديثات OTA - تخيل تحويلها إلى أسطول من السامريين الجيدين الافتراضي. يمكن أيضًا تجهيز برامج تشغيل Ubers و Lyft بهذه الأجهزة لزيادة منطقة التغطية بشكل كبير.

باستخدام تقنية مفتوحة المصدر ومكونات موجودة ، يبدو من الممكن تقديم حل يوفر معدل عائد أعلى بكثير - لاستثمار أقل بكثير من 86 مليون دولار.

الجزء 2 - لقد نشرت تحديثًا ، حيث أختبر اللقطات الخاصة بي وألتقط مركبة غير مسجلة ، هنا:

تذكر أن 86 مليون دولار ماسح ضوئي للوحة الترخيص قمت بنسخه؟ هذا ما حدث بعد ذلك.

النجاحات ، والفشل ، والقبض على سائق واحد شقي جدا medium.freecodecamp.org