تثبيت الفيديو من كاميرا متحركة ، أو كيفية ترجمة كل شيء إلى نظام إحداثيات ثابت

تعمل قدرات رؤية الكمبيوتر (CV) الآن على إعادة تشكيل مشهد سوق حلول السلامة العامة بالكامل. في حين أنه لم يعد من السهل مفاجأة أي شخص بأنظمة المراقبة بالفيديو التقليدية ، ومن الغريب عدم العثور عليها في أي مكان عام ، إلا أن استخدام الذكاء الاصطناعي في هذا المجال لا يزال جديدًا.



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



المشروع بأكمله موجود على جيثب .






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



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



  • ليس من الواضح سبب التغيير في إحداثيات الكائن: الكاميرا أو الكائن نفسه يتحرك ؛
  • عند تغيير المشهد بسبب دوران الكاميرا ، يمكن أن تحصل الكائنات المختلفة على نفس الإحداثيات ، حتى لو كانت الكائنات ثابتة.


صورة

الشكل 1 - الكائنات المتطابقة لها إحداثيات مختلفة بسبب حركة الكاميرا



من أجل بناء نظام إحداثيات ثابت ، يجب عليك:



  1. تحديد أصل الإحداثيات ؛
  2. قارن إطارين متتاليين مع بعضهما البعض ؛
  3. , , (, , ..).


صورة

2 —



:



  1. .
  2. : , . . . SIFT, SURF ORB. , . , , , .




3 — matching visualization



  1. , .




:



صورة



  • a, e x y ;
  • b, d — ( a e );
  • c, f — ;
  • g, h — .


, , . (x,y) (x',y') :



صورة

:



ر(xوذو1)=ح(xوذو1)(1)



:



k- .

N(f1,..., fN). . matching points , fk fk-1.



:



— ;

(Xk, Yk)=((x1k, y1k),…, (xnk, ynk)) – n matching points;

(X'k, Y'k) =((x'1k, y'1k),…, (x'nk, y'nk)) – n matching points ;

(X''k, Y''k) =((x''1k, y''1k),…, (x''nk, y''nk)) – k — n matching points , fk-1.

Hk – , fk-1 fk.

, .



(Xk, Yk) (X'k, Y'k). f1 fk , .. . Hk.



, (H1,…, Hk-1). Hk (Xk-1, Yk-1) (Xk, Yk), , .



3:



صورة



3 — ,



, . a :

x1k= x1k-1a, , a : x'1k = x1ka, 3. , , .



?

(H1,…, Hk-1). , 1 k-1 mathcing points fk-1 . (1), , — .



حسشص=ح1(ح2(ح3.........))(2)



, , , fk-1 fk, : (Xk-1, Yk-1) (Xk, Yk) ( (2)), (X'k-1, Y'k-1) (X''k, Y''k) Hk. , , (x1k, y1k) (x'1k, y'1k).



ر(xوذو1)=حسشص(xوذو1)(3)



: , ( , , .. ), - , . .

:



  • "" matching points ((x1k, y1k),… ,(x'nk, y'nk)),
  • H, k- k-1 .
  • ((x'1k, y'1k),… ,(x'nk, y'nk))
  • :

    • , ;
    • . , ;
    • - ( LENGTH_ACCOUNTED_POINTS len(matching points)), , , , .


, . .



"" , . , , , , . T , . , motion video segmentation.





.

GitHub , .



  • evenvizion_component.py
  • evenvizion_visualization.py
  • compare_evenvizion_with_original_video.py


evenvizion_component.py

, evenvizion_component.py. , json , fk-1 fk. , json , . , , .



- , json --path_to_original_coordinate recalculated_coordinates.json , .

json :



{"frame_no": [{"x1": x coordinate, "y1": y coordinate}, ...], ...}

evenvizion_component.py , 3 ( matching and heatmap --show_matches --visualize_fixed_coordinate_system ).



evenvizion_visualization.py compare_evenvizion_with_original_video.py .



README.



, .



:



matching points — matching visualization:



صورة

5 — matching visualization



.

, , (heatmap visualization):



صورة

6 — heatmap visualization



20 , , . , . : r=sqrt(x2+y2), heatmap_constant , : 0 — , 1 — .





7 — fixed_coordinate_system_visualization



json , , fixed_coordinate_system_visualization ( 7).



evenvizion_visualization.py compare_evenvizion_with_original_video.py , ( ). 8 9 .



صورة

8 — visualize_camera_stabilization



صورة

9 — original_video_with_EvenVizion



Known issues



N/a . matching points , , 90 , . video motion segmentation, , , static points motion points. — .



. 4 matching points, , 4 , =None. : none_H_processing True, : Hk=Hk-1. False, H — , . .



. . . :



  • . , , (, ).
  • findHomography() opencv. .




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




All Articles