ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ slam Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ
Π‘ΠΈΡΡΠ΅ΠΌΠ° Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ ΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡ vSLAM
Π ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠΎΠ±ΠΎΡΠ°Ρ -ΠΏΡΠ»Π΅ΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π½ΠΎΠ²Π΅ΠΉΡΠΈΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΡΡΡΠΎΠΈΡΡ ΠΈ ΠΏΡΠΎΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ±ΠΎΡΠΊΠΈ. Π‘ ΡΡΠΎΠΉ ΡΠ΅Π»ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ ΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ, ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΉ ΠΊΠ°ΠΊ SLAM (Simultaneous Localization And Mapping). Π§Π°ΡΡΠΎ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΠ΅ VSLAM, Π³Π΄Π΅ ΡΠΈΠΌΠ²ΠΎΠ» V ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Β«Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠΉΒ». ΠΠ°Π½Π½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ Π²ΡΡΡΡΠΎΠΈΡΡ ΠΊΠ°ΡΡΡ Π² ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΠΌΠ°ΡΡΡΡΡ. ΠΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΡΡΡ ΡΠ΅ΠΊΡΡΠ΅Π΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠ»Π΅ΡΠΎΡΠ° ΠΈ Π΅Π³ΠΎ ΠΏΡΠΎΠΉΠ΄Π΅Π½Π½ΡΠΉ ΠΏΡΡΡ.
ΠΡΡΠΎΡΠΈΡ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΠΈΠ½ΡΠ΅Π»Π»Π΅ΠΊΡΠ° ΡΠΎΠ±ΠΎΡΠΎΠ²
Π£ ΡΠ°ΠΌΡΡ ΠΏΠ΅ΡΠ²ΡΡ ΡΠΎΠ±ΠΎΡΠΎΠ²-ΠΏΡΠ»Π΅ΡΠΎΡΠΎΠ² ΠΎΡΡΡΡΡΡΠ²ΠΎΠ²Π°Π»Π° ΠΊΠ°ΡΡΠΎΠ³ΡΠ°ΡΠΈΡ, ΡΠ΅ΠΆΠΈΠΌΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ vslam, ΠΏΠΎΡΡΠΎΠΌΡ ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΊΠ²Π°ΡΡΠΈΡΠ΅ Π±ΡΠ»ΠΎ Π±Π΅ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ½ΡΠΌ ΠΈ Ρ Π°ΠΎΡΠΈΡΠ½ΡΠΌ. Π Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΡ ΠΌΠΎΠ΄Π΅Π»ΡΡ ΠΊ ΡΡΠΎΠΌΡ ΡΠ΅ΠΆΠΈΠΌΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ»ΠΎΡΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΏΠΈΡΠ°Π»ΠΈ ΠΈ Π²Π΄ΠΎΠ»Ρ ΡΡΠ΅Π½. Π Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ, Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ»ΡΡΡΠΈΠ»Π°ΡΡ ΠΈ ΡΡΠ°Π»Π° ΡΠΏΠΎΡΠΎΠ±Π½Π° ΠΎΡΠ΅Π½ΠΈΠ²Π°ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΡΡ ΠΊΠ²Π°Π΄ΡΠ°ΡΡΡΡ ΠΏΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌ ΡΠ²Π½ΡΠΌ ΠΏΡΠΈΠ·Π½Π°ΠΊΠ°ΠΌ. Π ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΎΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΄Π°ΡΠΎΠ² ΠΏΡΠΈ ΡΡΠΎΠ»ΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΡΠΎΠ±ΠΎΡΠ° Ρ ΠΏΡΠ΅ΠΏΡΡΡΡΠ²ΠΈΡΠΌΠΈ. ΠΡΠ»ΠΈ ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΠ»ΠΎ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΡΠ°ΡΡΠΎ, Π·Π½Π°ΡΠΈΡ Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ.
ΠΠΎΠ·Π΄Π½Π΅Π΅ ΡΠΌΠ½ΡΠ΅ ΠΏΡΠ»Π΅ΡΠΎΡΡ Π±ΡΠ»ΠΈ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΏΡΠΈΡΠΏΠΎΡΠΎΠ±Π»Π΅Π½ΠΈΠ΅ΠΌ β ΠΌΠ°ΡΡΠΊΠΎΠΌ-ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠΎΡΠΎΠΌ, Π·Π°ΠΊΡΡΠ²Π°ΡΡΠΈΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π² ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ. ΠΡΠΈ ΠΌΠ°ΡΠΊΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π»ΠΈΡΡ Π² Π΄Π²Π΅ΡΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΌΠ°Ρ ΠΈ Π·Π°ΠΏΠΈΡΠ°Π»ΠΈ Π°Π³ΡΠ΅Π³Π°Ρ Π² ΡΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ½Π°ΡΠ΅ Π½Π° Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π·ΠΎΠ½Ρ ΠΈ ΡΠ΅ΠΆΠΈΠΌ ΡΠ±ΠΎΡΠΊΠΈ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ»ΠΈΡΡ ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΠΎ, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΠΎΡΡΠ°Π²Π°Π»Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΡΠΎΠΏΡΡΠΊΠΎΠ² ΠΌΠ΅ΡΡ, ΠΎΡΡΠ°ΡΡΠΈΡ ΡΡ Π½Π΅ΡΠ±ΡΠ°Π½Π½ΡΠΌΠΈ.
Π§Π΅ΡΠ΅Π· Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ ΡΡΡΡΠΎΠΉΡΡΠ² Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΠ»Π°ΡΡ ΠΊΠ°ΠΌΠ΅ΡΠΎΠΉ. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅, ΠΏΡΠ»Π΅ΡΠΎΡ ΠΎΡ Π²Π°ΡΡΠ²Π°Π» Π²ΡΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ ΠΏΠ»ΠΎΡΠ°Π΄ΠΈ ΠΈ Π½Π΅ ΠΎΡΡΠ°Π²Π»ΡΠ» Π·Π°Π³ΡΡΠ·Π½Π΅Π½Π½ΡΡ ΠΌΠ΅ΡΡ. ΠΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ, ΠΎΠ½ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π» ΠΌΠ΅ΡΡΠΎ, Π³Π΄Π΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π±Π°Π·Π° Π΄Π»Ρ Π·Π°ΡΡΠ΄ΠΊΠΈ. ΠΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΠΎΠ±ΠΎΡΠΎΠ² Π΅ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΠΎΠ²Π°Π»ΠΈΡΡ ΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Β«ΠΏΠΎΡΠΌΠ½Π΅Π»ΠΈΒ» Ρ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΠ»ΡΠΌΠ° β ΠΌΠ΅ΡΠΎΠ΄Π° SLAM.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SLAM
ΠΠ΅ΡΠΎΠ΄ SLAM ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π΄Π²ΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΡ Π² ΡΠ΅Π±Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ ΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΡΡΡ ΠΌΠ°ΡΡΡΡΡΠ°. ΠΠΎ Π²ΡΠ΅ΠΌΡ Π΅Π³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ, ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΠΌΡΠ΅ Π² Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠΌ ΡΠΈΠΊΠ»Π΅. ΠΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ Π²Π·Π°ΠΈΠΌΠΎΡΠ²ΡΠ·Π°Π½Ρ, ΡΡΠΎΡΠ½ΡΡ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΡΡ Π΄ΡΡΠ³ Π΄ΡΡΠ³Π°.
ΠΡΠ²Π΅ΡΠ°Ρ Π½Π° Π²ΠΎΠΏΡΠΎΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ slam ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ±ΠΎΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΠΏΠΎΡΡΡΠΏΠ°ΡΡΠ΅ΠΉ ΠΎΡ Π΄Π°ΡΡΠΈΠΊΠΎΠ², Π΅Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ°Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°. ΠΠΎ ΠΈΡΠΎΠ³Π°ΠΌ Π°Π½Π°Π»ΠΈΠ·Π° ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ , ΡΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΠΊΡΡΠΆΠ°ΡΡΠ΅ΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅.
Π ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠ°Ρ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠ»Π΅ΡΠΎΡΠ° Π½Π° ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠΉ ΠΊΠ°ΡΡΠ΅. Π£ΡΠ»ΠΎΠ²Π½ΠΎ ΠΎΠ½Π° ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΡΡΡ Π½Π° Π΄Π²Π° ΡΠΈΠΏΠ° β Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΈ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΡ. Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΠ±ΠΎΡΠ° ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ Π·Π°ΡΠ°Π½Π΅Π΅, Π° Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ β Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Π΄Π»Ρ Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ°. ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π²Π°ΡΠΈΠ°Π½Ρ, ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ, Π΄Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π½Π°ΠΉΡΠΈ ΠΏΠΎΡ ΠΈΡΠ΅Π½Π½ΡΠΉ ΠΏΡΠ»Π΅ΡΠΎΡ.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΠ΅ΡΠΎΠ΄ SLAM Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΌ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠΈ ΠΊΠ°ΡΡΡ ΠΈ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π½Π° ΡΡΠΎΠΉ ΠΊΠ°ΡΡΠ΅. ΠΡΠΈ Π·Π°Π΄Π°ΡΠΈ ΡΠ΅ΡΠ°ΡΡΡΡ Π² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ΅ Π½Π΅ ΠΌΠΎΠ³ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π²Π½Π΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ. Π’ΠΎ Π΅ΡΡΡ, ΠΊΠ°ΡΡΠ° Π½ΡΠΆΠ½Π° Π΄Π»Ρ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ, Π° Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠ°ΡΡΡ. ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΡΡΠ΄Π½ΠΎΡΡΠΈ Π² ΡΡΠΎΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½ΠΈΠ·ΠΊΠ°Ρ ΡΠΎΡΠ½ΠΎΡΡΡ ΠΏΡΠΈΠ±ΠΎΡΠΎΠ², ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠΈΡ ΡΡΠ°ΡΡΠΈΠ΅ Π² Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡΡ .
ΠΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΡΡ SLAM
ΠΠ°ΡΡΡ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ΡΡΡΠΎΡΡΡΡ Π΄Π²ΡΠΌΡ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ β ΠΊΠ°ΠΌΠ΅ΡΠ°ΠΌΠΈ (ΡΠΈΡ. 1) ΠΈ Π»Π°Π·Π΅ΡΠ½ΡΠΌ Π΄Π°Π»ΡΠ½ΠΎΠΌΠ΅ΡΠΎΠΌ (ΡΠΈΡ. 2). Π ΠΏΠ΅ΡΠ²ΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ vslam β Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ²Π΅ΡΡ Π½ΠΎΡΡΠ΅ΠΉ ΠΈ Π΄Π²Π΅ΡΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΌΠΎΠ². ΠΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ Π² ΠΏΠ°ΠΌΡΡΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΠ΅.
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠ΅ΠΉ NST, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄Π΅Π»Π°Π΅Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΉ, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ Ρ ΠΊΠ°ΠΌΠ΅ΡΡ. ΠΡΠΈ Π΄Π°Π½Π½ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡ Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ Π΄Π»Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΌΠ°ΡΡΡΡΡΠ°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΊΠ°ΠΌΠ΅ΡΠ½Π°Ρ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΡΡ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ, ΡΠΎΠΊΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ Π·Π°Ρ Π²Π°ΡΡΠ²Π°Π΅Ρ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΏΠ»ΠΎΡΠ°Π΄ΠΈ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ.
ΠΡΠΎΡΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄ β Π»Π°Π·Π΅ΡΠ½ΡΠΉ Π±ΡΠ» Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ Π°ΠΌΠ΅ΡΠΈΠΊΠ°Π½ΡΠΊΠΎΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Neato. Π ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±ΡΠ» ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Π»Π°Π·Π΅ΡΠ½ΡΠΉ Π΄Π°Π»ΡΠ½ΠΎΠΌΠ΅Ρ, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΠΉ Π² ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π±Π°ΡΠ΅Π½ΠΊΠ΅ ΡΠ²Π΅ΡΡ Ρ ΠΊΠΎΡΠΏΡΡΠ°. ΠΡΠ½ΠΎΠ²Π½Π°Ρ Π·Π°Π΄Π°ΡΠ° Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡΡ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠΉ ΠΎΡ ΠΏΡΠ»Π΅ΡΠΎΡΠ° Π΄ΠΎ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠΎΠ², Π²ΡΡΡΠ΅ΡΠ°ΡΡΠΈΡ ΡΡ Π½Π° Π΅Π³ΠΎ ΠΏΡΡΠΈ.
ΠΠ°ΡΡΡ SLAM Π² ΡΠΎΠ±ΠΎΡΠ°Ρ -ΠΏΡΠ»Π΅ΡΠΎΡΠ°Ρ
Π‘ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΏΡΠ»Π΅ΡΠΎΡΡ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½Ρ ΠΎΠ±Π΅ΠΈΠΌΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠΌΠΈ β ΠΊΠ°ΠΌΠ΅ΡΠ½ΠΎΠΉ ΠΈ Π»Π°Π·Π΅ΡΠ½ΠΎΠΉ. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΌΠΈ ΠΌΠΎΠ΄Π΅Π»ΡΠΌΠΈ ΡΡΠΈΡΠ°ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅:
SLAM (ΠΌΠ΅ΡΠΎΠ΄)
ΠΠ· ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ β ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠΉ ΡΠ½ΡΠΈΠΊΠ»ΠΎΠΏΠ΅Π΄ΠΈΠΈ
SLAM (Π°Π½Π³Π». simultaneous localization and mapping β ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΡΡΡ) β ΠΌΠ΅ΡΠΎΠ΄, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π² ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π°Ρ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ Π² Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΈΠ»ΠΈ Π΄Π»Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ Π² Π·Π°ΡΠ°Π½Π΅Π΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ Ρ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΠΌ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΏΡΠΎΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ. ΠΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΏΡΠΈΠ±Π»ΠΈΠΆΡΠ½Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ β ΡΠΈΠ»ΡΡΡ ΡΠ°ΡΡΠΈΡ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠΉ ΡΠΈΠ»ΡΡΡ ΠΠ°Π»ΠΌΠ°Π½Π°. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² Π±Π΅ΡΠΏΠΈΠ»ΠΎΡΠ½ΡΡ Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»ΡΡ , Π»Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ°Ρ , Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΡΡ ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½ΡΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ°Ρ , ΠΏΠ»Π°Π½Π΅ΡΠΎΡ ΠΎΠ΄Π°Ρ , ΠΈ Π΄Π°ΠΆΠ΅ Π²Π½ΡΡΡΠΈ ΡΠ΅Π»ΠΎΠ²Π΅ΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ΅Π»Π°.
ΠΠ°ΡΡΡΠ½ΠΎΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠ²ΡΠ·Π°Π½Π° Ρ ΡΠ΅ΠΌ, ΡΡΠΎ ΠΊΠ°ΡΡΡ, ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π΄Π»Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ Π°Π³Π΅Π½ΡΠΎΠ², Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΎΡΡΠ°ΠΆΠ°ΡΡ Π²ΠΈΠ΄ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°, Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΠΈΡ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ, ΠΈ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠΎ Π²ΠΈΠ΄ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° Π±ΡΠ΄Π΅Ρ ΡΠ΅ΠΌ ΠΆΠ΅ Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ°ΡΡ. ΠΡΠΈ ΡΡΠΎΠΌ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΡΠ½ΠΎΠΉ ΠΊΠ°ΡΡΡ ΠΎΠ±ΡΡΠ»ΠΎΠ²Π»Π΅Π½Π° Π½ΠΈΠ·ΠΊΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΡΡ ΠΏΡΠΈΠ±ΠΎΡΠΎΠ², ΡΡΠ°ΡΡΠ²ΡΡΡΠΈΡ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ΅ΡΠΎΠ΄ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ ΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ ΡΠ²ΡΠ·ΡΠ²Π°Π΅Ρ Π΄Π²Π° Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π² Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΡΠΉ ΡΠΈΠΊΠ» ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ, ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΡΠ°ΡΡΠ²ΡΡΡ Π² Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡΡ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π·Π°Π΄Π°ΡΠΈ β EKF-SLAM, FastSLAM, DP-SLAM. ΠΡΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠΈΡ ΠΈΡΡΠ»Π΅Π΄ΡΠ΅ΠΌΡΡ ΠΏΠ»ΠΎΡΠ°Π΄ΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠ°Π³Π΅Π½ΡΠ½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ (ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π±ΡΠ» ΠΏΡΠΈΠΌΠ΅Π½ΡΠ½ ΠΏΡΠΈ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ ΠΊΠ°ΡΡΠΎΠ³ΡΠ°ΡΠΈΠΈ ΠΠ°ΡΡΠ° Π³ΡΡΠΏΠΏΠΎΠΉ ΡΠΎΠ±ΠΎΡΠΎΠ²-ΠΌΠ°ΡΡΠΎΡ ΠΎΠ΄ΠΎΠ² ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΈ ΠΈΡΡΠ»Π΅Π΄ΡΠ΅ΠΌΡΡ ΠΊΠ°ΡΡ Π² ΠΎΠ΄Π½Ρ).
SLAM, VSLAM, LDS: ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΠΌΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΡΠΈΠΏ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ Π΄Π»Ρ ΡΠΎΠ±ΠΎΡΠ°-ΠΏΡΠ»Π΅ΡΠΎΡΠ° Π»ΡΡΡΠ΅?
SLAM, VSLAM, LDS: ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΠΌΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΡΠΈΠΏ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ Π΄Π»Ρ ΡΠΎΠ±ΠΎΡΠ°-ΠΏΡΠ»Π΅ΡΠΎΡΠ° Π»ΡΡΡΠ΅?
PROJECT OVERVIEW
ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΡΠ΅ΡΡΡΡΡ, Π±Π΅ΡΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΎΠ±Π·ΠΎΡΠΎΠ² ΠΈ ΡΡΠ°ΡΠ΅ΠΉ ΡΠΎΠΎΠ±ΡΠ°Ρ Π²Π°ΠΌ, ΡΡΠΎ ΡΠΈΠΏ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ β Π²Π°ΠΆΠ½Π΅ΠΉΡΠΈΠΉ ΡΠ°ΠΊΡΠΎΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠ΅ΡΠ²ΠΎΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎ ΡΡΠΎΠΈΡ ΠΎΠ±ΡΠ°ΡΠΈΡΡ ΡΠ²ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΠΏΡΠΈΠΎΠ±ΡΠ΅ΡΠ°Ρ ΡΠΎΠ±ΠΎΡ-ΠΏΡΠ»Π΅ΡΠΎΡ. ΠΠ°ΠΏΡΡΠ°ΡΡΡΡ Π² ΡΡΠΎΠΉ ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ΅ ΠΏΡΠΎΡΡΠΎ, Π²Π΅Π΄Ρ ΡΡΠ½ΠΎΠΊ Π΅ΠΆΠ΅Π³ΠΎΠ΄Π½ΠΎ ΡΠ°ΡΡΠΈΡΡΠ΅ΡΡΡ, ΠΏΠΎΠΏΠΎΠ»Π½ΡΡΡΡ ΡΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΠΎΠ²Π°Π½Π½ΡΠΌΠΈ Π΄Π΅Π²Π°ΠΉΡΠ°ΠΌΠΈ. Π‘ΠΏΠ΅ΡΠΈΠΌ Π½Π° ΠΏΠΎΠΌΠΎΡΡ ΠΈ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΠΌ ΡΡΠΈ ΡΠ°ΠΌΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠΈΠΏΠ° Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ, ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ Π½Π° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΉ Π΄Π΅Π½Ρ.
SLAM-Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ
ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π»Π΅Ρ Π½Π°Π·Π°Π΄ ΡΠ°ΠΊΠΎΠΉ ΡΠΈΠΏ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ ΡΡΠΈΡΠ°Π»ΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Β«ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΠΌΒ», ΡΠ΅ΠΉΡΠ°Ρ ΠΆΠ΅ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅ ΠΏΡΠ΅ΠΌΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΡΡΡΡΡ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ°ΠΌΠ΅ΡΡ ΠΈΠ»ΠΈ Π»ΠΈΠ΄Π°ΡΠ°. ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΡΠΎ, ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΎΡΠ½Π°ΡΠ΅Π½Π½ΡΠ΅ SLAM-Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠ΅ΠΉ, Π²ΡΠ΅ Π΅ΡΠ΅ Π²ΡΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΡΠΎΠ΄Π°ΡΡΡΡ.
ΠΠΎΡΠ΅ΠΌΡ SLAM-Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ ΠΎΡΡΠ°Π΅ΡΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠΉ ΠΏΡΠΈ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠΈ Π΄Π²ΡΡ Π΄ΡΡΠ³ΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ²?
ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ SLAM-Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ?
SLAM-Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄Π΅Π²Π°ΠΉΡΡ ΡΡΡΠΎΠΈΡΡ ΠΊΠ°ΡΡΡ Π² Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΠΎΠΌ ΠΌΠ΅ΡΡΠ΅ ΠΈ ΠΏΡΠΎΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π΅ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ Π½Π° ΡΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠΉ ΡΠ΅ΡΡΠΈΡΠΎΡΠΈΠΈ. Π Π½Π°ΡΠ°Π»Π΅ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ±ΠΎΡ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ ΡΠΎΡΠΊΡ ΡΡΠ°ΡΡΠ° ΠΈ ΠΎΠ±ΡΠΈΡΠΎΠ²ΡΠ²Π°Π΅Ρ Π² ΡΠ²ΠΎΠ΅ΠΉ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΡΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΠΉ ΠΏΡΡΡ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΅ΠΌΡ Π½Π΅ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΡΡ ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ Ρ ΠΏΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ. Π‘Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΎΠ± ΠΎΠΊΡΡΠΆΠ°ΡΡΠ΅ΠΉ ΡΡΠ΅Π΄Π΅ ΡΠΎΠ±ΠΎΡ-ΠΏΡΠ»Π΅ΡΠΎΡ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΈΠ½ΡΡΠ°ΠΊΡΠ°ΡΠ½ΡΠΌ ΡΠ΅Π½ΡΠΎΡΠ°ΠΌ, ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌ Π½Π° Π±Π°ΠΌΠΏΠ΅ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π°. Π‘ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠΎΠ±ΠΎΡΡ-ΠΏΡΠ»Π΅ΡΠΎΡΡ Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΊΠ°ΡΡΡ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ Π³Π°Π΄ΠΆΠ΅ΡΠ°Ρ .
Π―ΡΠΊΠΈΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΠ΅Π»Ρ: Panda Evo
VSLAM + ΠΊΠ°ΠΌΠ΅ΡΠ°
ΠΠΎΡΠ°Π±ΠΎΡΠ°Π½Π½Π°Ρ Π²Π΅ΡΡΠΈΡ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠΉ ΠΏΡΠ½ΠΊΡΠΎΠΌ ΡΠ°Π½Π΅Π΅. ΠΡΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π΅Π²Π°ΠΉΡΠΎΠ² ΠΊΠ°ΠΌΠ΅ΡΠΎΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π° ΡΡΠΈΡΠ°Π½Π½ΡΠ΅ ΡΠ΅ΠΊΡΠ½Π΄Ρ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ, Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Ρ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠΎΠ² ΠΏΠΎ ΡΠ΅ΡΡΠΈΡΠΎΡΠΈΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΠΎΡΠΎΠ»ΠΎΠΊ Π΄Π»Ρ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π’Π°ΠΊΠΎΠΉ ΡΠΎΡΠΌΠ°Ρ Π²ΡΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠΎΡΠ½ΡΠΉ ΠΏΠ»Π°Π½ ΠΎΡΠΈΡΡΠΊΠΈ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π² ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ. ΠΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°: ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ ΠΊΠ°ΡΡΠΎΠΉ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ Π²ΡΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΡΡΠ΅Π½ ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΠΌΠ΅ΡΡ Π΄Π»Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΎΡΠΈΡΡΠΊΠΈ.
Π―ΡΠΊΠΈΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΠ΅Π»Ρ: Okami U90
ΠΠ°Π·Π΅ΡΠ½Π°Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ Π½Π° Π±Π°Π·Π΅ Π»ΠΈΠ΄Π°ΡΠ°
ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ ΠΊ ΡΠ°ΠΌΠΎΠΌΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎΠΌΡ ΡΠΈΠΏΡ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ, ΡΠΈΠ³ΡΡΠΈΡΡΡΡΠ΅ΠΌΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΠΎ Π²ΡΠ΅Ρ ΠΏΡΠ΅ΠΌΠΈΠ°Π»ΡΠ½ΡΡ ΠΌΠΎΠ΄Π΅Π»ΡΡ ΡΠΎΠ±ΠΎΡΠΎΠ²-ΠΏΡΠ»Π΅ΡΠΎΡΠΎΠ². ΠΠΈΠ΄Π°Ρ β ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ Π² Π²ΠΈΠ΄Π΅ Π±Π°ΡΠ΅Π½ΠΊΠΈ, ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½Π°Ρ Π½Π° ΠΊΠΎΡΠΏΡΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ ΠΎΡΠ½Π°ΡΠ΅Π½Π½Π°Ρ Π²ΡΡΠΎΠΊΠΎΡΠΎΡΠ½ΡΠΌ Π»Π°Π·Π΅ΡΠΎΠΌ. ΠΠΌΠ΅Π½Π½ΠΎ ΠΎΠ½ ΡΠΎΠ±ΠΈΡΠ°Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΠ· Π²Π½Π΅ΡΠ½Π΅ΠΉ ΡΡΠ΅Π΄Ρ ΠΎ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ°Ρ ΠΈ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΡΡ Π΄ΠΎ Π½ΠΈΡ .
ΠΠΈΠ΄Π°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠΎΡΠ½ΡΠΌ ΠΈ Π±ΡΡΡΡΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ. ΠΠ΄ΠΎΠ±Π°Π²ΠΎΠΊ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΏΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Π΄Π°ΠΆΠ΅ ΠΏΡΠΈ ΡΠ΅ΠΌΠ½ΠΎΠΌ ΠΎΡΠ²Π΅ΡΠ΅Π½ΠΈΠΈ, ΡΡΠΎ Π½Π΅ΡΠ²ΠΎΠΉΡΡΠ²Π΅Π½Π½ΠΎ Π΄Π»Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ Π½Π° Π±Π°Π·Π΅ ΠΊΠ°ΠΌΠ΅ΡΡ.
Π―ΡΠΊΠΈΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΠ΅Π»Ρ: Okami U100
Π§ΡΠΎ ΠΆΠ΅ Π»ΡΡΡΠ΅?
ΠΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ Π½Π° Π΄Π°Π½Π½ΡΠΉ Π²ΠΎΠΏΡΠΎΡ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ. ΠΡΠ΅ ΡΡΠΈ ΡΠΈΠΏΠ° Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ ΠΎΠ±Π»Π°Π΄Π°ΡΡ ΡΠ²ΠΎΠΈΠΌΠΈ Π΄ΠΎΡΡΠΎΠΈΠ½ΡΡΠ²Π°ΠΌΠΈ ΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠΎΠΎΡΠ½ΠΎΡΡΡΡΡ ΡΠΎ ΡΡΠΎΠΈΠΌΠΎΡΡΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΠ°ΠΌΡΠΌΠΈ ΠΏΡΠΎΡΡΠ²Π½ΡΠΌΠΈ ΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ½ΡΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΎΡΠ½Π°ΡΠ΅Π½Π½ΡΠ΅ Π»ΠΈΠ΄Π°ΡΠΎΠΌ. ΠΠ½ΠΈ ΡΠΏΠΎΡΠΎΠ±Π½Ρ ΡΠ±ΠΈΡΠ°ΡΡ Π³Π°Π±Π°ΡΠΈΡΠ½ΡΠ΅ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΡ, ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ Π½ΠΎΡΡΡ ΠΈ Π±ΡΡΡΡΠ΅Π΅ Π²ΡΠ΅Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ Ρ ΠΎΠ±ΡΠ·Π°Π½Π½ΠΎΡΡΡΠΌΠΈ.
ΠΠ΄Π½Π°ΠΊΠΎ ΠΈ Π±ΠΎΠ»Π΅Π΅ Π±ΡΠ΄ΠΆΠ΅ΡΠ½ΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΡΠΈΠ±Π΅ΡΡΡ Π²Π°ΡΡ ΠΆΠΈΠ»ΠΏΠ»ΠΎΡΠ°Π΄Ρ. ΠΡΠΈ Π²ΡΠ±ΠΎΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΎΠΏΠΈΡΠ°ΠΉΡΠ΅ΡΡ Π½Π° ΠΌΠ΅ΡΡΠ°ΠΆ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΡ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΠΊΠΈ ΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ Π²Π°ΠΌ Π±ΡΠ΄ΠΆΠ΅Ρ. Π‘ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΡΡΠ½ΠΎΠΊ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΡΠΎΡΠ½Ρ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ², ΡΡΠ΅Π΄ΠΈ Π½ΠΈΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π½Π°ΠΉΠ΄Π΅ΡΡΡ Π½ΡΠΆΠ½ΡΠΉ ΡΠΎΠ±ΠΎΡ-ΠΏΡΠ»Π΅ΡΠΎΡ.
SLAM β Simultaneous Localization And Mapping β ΠΠ΅ΡΠΎΠ΄ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ ΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ β ΠΌΠ΅ΡΠΎΠ΄, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΡΠΎΠ±ΠΎΡΠ°ΠΌΠΈ ΠΈ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΡΠΌΠΈ ΡΡΠ°Π½ΡΠΏΠΎΡΡΠ½ΡΠΌΠΈ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ Π² Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΈΠ»ΠΈ Π΄Π»Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ Π² Π·Π°ΡΠ°Π½Π΅Π΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ Ρ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΠΌ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΏΡΠΎΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ.
ΠΠ΅ΡΠΎΠ΄ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ ΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ (SLAM) β ΡΡΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ²ΡΠ·ΡΠ²Π°Π΅Ρ Π΄Π²Π° Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π² Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΡΠΉ ΡΠΈΠΊΠ» ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΡΠ°ΡΡΠ²ΡΡΡ Π² Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡΡ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°.
ΠΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΡΡΡ β ΡΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΡΠΎΠ±ΡΠ°Π½Π½ΠΎΠΉ Ρ Π΄Π°ΡΡΠΈΠΊΠΎΠ² ΡΠΎΠ±ΠΎΡΠ°. ΠΡΠΈ ΡΡΠΎΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠ΅, ΡΠΎΠ±ΠΎΡ ΠΊΠ°ΠΊ Π±Ρ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π½Π° Π²ΠΎΠΏΡΠΎΡ: Β«ΠΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΌΠΈΡ?Β»
ΠΠ»Π°Π²Π½ΡΠΌΠΈ Π°ΡΠΏΠ΅ΠΊΡΠ°ΠΌΠΈ Π² ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠΈ ΠΊΠ°ΡΡΡ ΡΠ²Π»ΡΡΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
ΠΎΠ± ΠΎΠΊΡΡΠΆΠ°ΡΡΠ΅ΠΉ ΡΡΠ΅Π΄Π΅ ΠΈ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ
Π΄Π°ΡΡΠΈΠΊΠΎΠ².
ΠΠ°ΠΏΡΠΎΡΠΈΠ², Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΡ β ΡΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ±ΠΎΡΠ° Π½Π° ΠΊΠ°ΡΡΠ΅. ΠΡΠΈ ΡΡΠΎΠΌ, ΡΠΎΠ±ΠΎΡ ΠΊΠ°ΠΊ Π±Ρ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π½Π° Π²ΠΎΠΏΡΠΎΡ Β«ΠΠ΄Π΅ Ρ?Β»
ΠΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ Π½Π° Π΄Π²Π° Π²ΠΈΠ΄Π° β Π»ΠΎΠΊΠ°Π»ΡΠ½Π°Ρ ΠΈ Π³Π»ΠΎΠ±Π°Π»ΡΠ½Π°Ρ.
ΠΠΎΠΊΠ°Π»ΡΠ½Π°Ρ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΡΠ»Π΅Π΄ΠΈΡΡ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΠ±ΠΎΡΠ° Π½Π° ΠΊΠ°ΡΡΠ΅, ΠΊΠΎΠ³Π΄Π° Π΅Π³ΠΎ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, Π° Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠΉ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΡ β ΡΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ±ΠΎΡΠ° Π½Π° Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΠΎΠΌ ΠΌΠ΅ΡΡΠ΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΠΏΠΎΡ
ΠΈΡΠ΅Π½ΠΈΠΈ ΡΠΎΠ±ΠΎΡΠ°).
Π’.ΠΎ. ΠΌΠ΅ΡΠΎΠ΄ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ ΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ (SLAM) β ΡΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ ΠΈ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΠ±ΠΎΡΠ° Π½Π° ΡΡΠΎΠΉ ΠΊΠ°ΡΡΠ΅. ΠΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅, ΡΡΠΈ Π΄Π²Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π½Π΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ΅ΡΠ΅Π½Ρ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ Π΄ΡΡΠ³ ΠΎΡ Π΄ΡΡΠ³Π°. ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΡΠΎΠ±ΠΎΡ ΡΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ²Π΅ΡΠΈΡΡ Π½Π° Π²ΠΎΠΏΡΠΎΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΎΠΊΡΡΠΆΠ°ΡΡΠ°Ρ ΡΡΠ΅Π΄Π° (ΠΈΡΡ
ΠΎΠ΄Ρ ΠΈΠ· ΡΠ΅ΡΠΈΠΈ Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠΉ), ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π½Π°ΡΡ, Π³Π΄Π΅ ΡΡΠΈ Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΡ Π±ΡΠ»ΠΈ ΡΠ΄Π΅Π»Π°Π½Ρ. Π ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ, ΡΡΡΠ΄Π½ΠΎ ΠΎΡΠ΅Π½ΠΈΡΡ ΡΠ΅ΠΊΡΡΠ΅Π΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΠ±ΠΎΡΠ° Π±Π΅Π· ΠΊΠ°ΡΡΡ.
ΠΠΎΡ ΠΈ Π²ΡΡ
ΠΎΠ΄ΠΈΡ, ΡΡΠΎ SLAM ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΈΠΏΠΈΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ ΠΊΡΡΠΈΡΡ ΠΈ ΡΠΉΡΠ°: ΠΊΠ°ΡΡΠ° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠ° Π΄Π»Ρ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ, Π° Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠ° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠ°ΡΡΡ.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ, ΠΎΠ±ΡΡΠ»ΠΎΠ²Π»Π΅Π½Π° Π½ΠΈΠ·ΠΊΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΡΡ ΠΏΡΠΈΠ±ΠΎΡΠΎΠ², ΡΡΠ°ΡΡΠ²ΡΡΡΠΈΡ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
GMapping β ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΌΠ΅ΡΠΎΠ΄Π° SLAM Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π΄Π°Π½Π½ΡΡ ΠΎΡ Π»Π°Π·Π΅ΡΠ½ΠΎΠ³ΠΎ Π΄Π°Π»ΡΠ½ΠΎΠΌΠ΅ΡΠ° ΠΈ ΠΎΠ΄ΠΎΠΌΠ΅ΡΡΠΈΠΈ ΡΠΎΠ±ΠΎΡΠ° (ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ Π½Π° OpenSLAM.org).
ΠΠΎ Π²ΠΌΠ΅ΡΡΠΎ Π»Π°Π·Π΅ΡΠ½ΠΎΠ³ΠΎ Π΄Π°Π»ΡΠ½ΠΎΠΌΠ΅ΡΠ° Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈ Kinect.
ΠΡΠΎ ΡΠΆΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π° ΡΠΎΠ±ΠΎΡΠ΅ TurtleBot β SLAM Map Building with TurtleBot:
Testing ROS with the gmapping package
VSLAM β Visual SLAM β Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠΉ SLAM β ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΌΠ΅ΡΠΎΠ΄Π° SLAM Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΊΠΎΠΌΠΏΡΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π·ΡΠ΅Π½ΠΈΡ
ΡΡΠ΅ΠΊ vslam β ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ ΠΏΠΎΠΏΡΡΠΊΠ° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ SLAM-Π°.
ΠΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠΉ SLAM β Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡΠ΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ΅ ΠΈ ΠΏΠ΅ΡΡΠΏΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ΅, Π½ΠΎ ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΌΠ΅ΡΠΎΠ΄ ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ Π½Π° ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠΈ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠΎΡΠ΅ΠΊ (features, keypoints) Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΈ, ΠΏΠΎΡΡΡΠΏΠ°ΡΡΠ΅ΠΌ Ρ ΠΊΠ°ΠΌΠ΅Ρ ΡΠΎΠ±ΠΎΡΠ°, ΡΠΎ ΠΊΠΎΠ³Π΄Π° ΠΊΠ°ΠΌΠ΅ΡΠ° Π΄Π²ΠΈΠΆΠ΅ΡΡΡ Π±ΡΡΡΡΠΎ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΠΏΠΎΠ²ΠΎΡΠΎΡΠ°Ρ ΡΠΎΠ±ΠΎΡΠ°), Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΡΠ°Π·ΠΌΡΡΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠΎΡΠ΅ΠΊ ΡΠ΅ΡΡΡΡΡΡ ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΏΠ΅ΡΠ΅ΡΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ.
rgbdslam β ΠΏΠ°ΠΊΠ΅Ρ, Π΄Π»Ρ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΎΠ±Π»Π°ΠΊΠ° ΡΠΎΡΠ΅ΠΊ Ρ RGBD Π΄Π°ΡΡΠΈΠΊΠΎΠ², ΡΠ°ΠΊΠΈΡ
ΠΊΠ°ΠΊ Kinect ΠΈΠ»ΠΈ ΡΡΠ΅ΡΠ΅ΠΎ-ΠΊΠ°ΠΌΠ΅ΡΡ.
Nikolas Engelhard and Felix Endres and JΓΌrgen Hess and JΓΌrgen Sturm and Wolfram Burgard, Β«Real-time 3D visual SLAM with a hand-held RGB-D cameraΒ», 2011. (PDF)
hector_mapping β SLAM Π΄Π»Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌ Π±Π΅Π· ΠΎΠ΄ΠΎΠΌΠ΅ΡΡΠΈΠΈ β ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π΄Π°Π½Π½ΡΡ
ΠΎΡ LIDAR-ΠΎΠ². ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π²ΡΡΠΎΠΊΡΡ ΡΠΊΠΎΡΠΎΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΡΠΈΡΡΠ΅ΠΌ Π»Π°Π·Π΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Hokuyo UTM-30LX ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΎΡΠ΅Π½ΠΊΠΈ 2D-ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎ ΡΠΊΠΎΡΠΎΡΡΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π°ΡΡΠΈΠΊΠΎΠ² (40ΠΡ Π΄Π»Ρ UTM-30LX).
karto β SLAM Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΎΠ΄ΠΎΠΌΠ΅ΡΡΠΈΠΈ ΡΠΎΠ±ΠΎΡΠ° ΠΈ Π΄Π°Π½Π½ΡΡ Π»Π°Π·Π΅ΡΠ½ΠΎΠ³ΠΎ Π΄Π°Π»ΡΠ½ΠΎΠΌΠ΅ΡΠ°.
Π½Π°Ρ
ΠΎΠ΄ΡΡΡΡ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ:
ScaViSLAM β ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π΄Π»Ρ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ SLAM-Π°
H. Strasdat, A.J. Davison, J.M.M. Montiel, and K. Konolige, Double Window Optimisation for Constant Time Visual SLAM Accepted for the IEEE International Conference on Computer Vision (ICCV), 2011. (PDF)
mrpt_slam β ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² SLAM ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ MRPT (Mobile Robot Programming Toolkit)
ΠΠ±Π·ΠΎΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² SLAM Π΄Π»Ρ ΠΊΠ°ΠΌΠ΅Ρ Π³Π»ΡΠ±ΠΈΠ½Ρ Π² ROS
ΠΠΎΠ±ΡΡΠΉ Π΄Π΅Π½Ρ ΡΠ²Π°ΠΆΠ°Π΅ΠΌΡΠ΅ ΡΠΈΡΠ°ΡΠ΅Π»ΠΈ! Π ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΡΠΆΠ΅ ΠΏΠΈΡΠ°Π» ΠΎΠ± Π°Π»Π³ΠΎΡΠΈΡΠΌΠ΅ rtabmap SLAM Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΎΠ΄ΠΎΠΌΠ΅ΡΡΠΈΠΈ. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΎΠ± ΡΡΠΎΠΌ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ΅ SLAM Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Ρ ΠΎΠ±Π·ΠΎΡ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° SLAM, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄Π»Ρ ΠΊΠ°ΠΌΠ΅Ρ Π³Π»ΡΠ±ΠΈΠ½Ρ β RGBDSLAM. ΠΠΎΠ³ΠΎ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π»ΠΎ, ΠΏΡΠΎΡΡ ΠΏΠΎΠ΄ ΠΊΠ°Ρ.
rtabmap
Π ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π½Π° ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅.
ΠΡΠΎΡΠ΅Π΄ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ rtabmap Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΡΠ²Π°Π» Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ ΡΡΠ°ΡΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ΅ Ubuntu 14.04 ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΠΠ΄Π½Π°ΠΊΠΎ, Π½Π° Raspberry Pi 3 Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌ ROS Kinetic ΡΡΠΎΡ ΡΠΏΠΎΡΠΎΠ± Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π±ΠΈΠ»Π΄ rtabmap ΠΎΡΠΊΠ»ΡΡΠ΅Π½ Π² ΡΠ΅Π»ΠΈΠ·Π΅ Kinetic Π΄Π»Ρ ARM ΠΈΠ·-Π·Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ libpcl-dev (ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π·Π΄Π΅ΡΡ). ΠΠΎΡΡΠΎΠΌΡ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΠΌ Π΅Π³ΠΎ ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² ΡΠ»Π΅Π΄ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ rtabmap:
ΠΡΠ»ΠΈ Π½Π° Raspberry Pi Π½Π΅ Π΄ΠΎΡΡΡΠΏΠ΅Π½ swap, ΡΠΎ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ Ρ Π²Π°ΡΠΈΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ:
ΠΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ swap ΠΏΠ°ΠΌΡΡΡ ΠΏΠΎ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΎΡΡΡΠ΄Π° ΠΈ Π·Π°Π½ΠΎΠ²ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ.
ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π·Π°Π½ΡΡΡ ΠΎΠΊΠΎΠ»ΠΎ ΡΠ°ΡΠ°. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ:
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ rtabmap_ros ΠΏΠ°ΠΊΠ΅Ρ Π² Π½Π°ΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ catkin:
ΠΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ catkin_make Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈΠ·-Π·Π° ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΡΠ°ΠΉΠ»Π° image_transportConfig.cmake. Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ°ΠΊΠ΅Ρ image_transport Π² ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ catkin_ws:
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π»ΠΎ ΠΎΡΠΈΠ±ΠΊΠΈ Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΎΠΉ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΡΠ·Π»ΠΎΠ² rtabmap_ros, ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΡΡΠΎΠΊΡ Π²
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ rtabmap Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π½ΠΎΠ²ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ : File β New database:
ΠΠ»Ρ ΠΊΠ°ΠΌΠ΅ΡΡ Kinect ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄ΡΠ°ΠΉΠ²Π΅Ρ OpenNI-PCL:
ΠΠ°ΠΏΡΡΡΠΈΠΌ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ, Π½Π°ΠΆΠ°Π² Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ Β«StartΒ»:
rtabmap ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ rviz:
ΠΡΠΊΡΠΎΠ΅ΡΡΡ ΠΎΠΊΠ½ΠΎ rviz:
ΠΠΎΠ±Π°Π²ΠΈΠΌ Π΄ΠΈΡΠΏΠ»Π΅ΠΉ Odometry ΠΈ Π²ΡΠ±Π΅ΡΠ΅ΠΌ ΡΠΎΠΏΠΈΠΊ β/rtabmap/odomβ. ΠΠΎΡΠ»Π΅ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΊΠ°ΠΌΠ΅ΡΡ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ Π² rviz ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΡ:
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΡΠΎΠΉΠ΄Π΅ΠΌ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΊΠ°ΠΌΠ΅ΡΠΎΠΉ, ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ:
ΠΡΠ»ΠΈ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π΄Π²ΠΈΠ³Π°ΡΡΡΡ ΠΏΠΎ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, Π³Π»Π°Π΄ΠΊΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°Ρ ΠΊΠ°ΠΌΠ΅ΡΡ Π±Π΅Π· ΡΠ΅Π·ΠΊΠΈΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΉ, ΡΠΎ ΠΌΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠΎΡΠ½ΡΡ ΠΊΠ°ΡΡΡ:
ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΄ΠΈΡΠΏΠ»Π΅ΠΉ Map ΡΠΈΠΏΠ° OccupancyGrid ΠΈ Π²ΡΠ±ΡΠ°ΡΡ ΡΠΎΠΏΠΈΠΊ β/rtabmap/proj_mapβ Π΄Π»Ρ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠ»ΠΎΡΠΊΠΎΠΉ ΠΊΠ°ΡΡΡ (ΠΊΠ°ΠΊ Π΅ΡΠ»ΠΈ Π±Ρ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ gmapping):
ΠΡΠΈ Π·Π°ΠΊΡΡΡΠΈΠΈ ΠΎΠΊΠ½Π° rviz Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ ΠΈ ΠΊΠ°ΡΡΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ Π½Π° Π΄ΠΈΡΠΊΠ΅ (ΠΏΡΡΡ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ Π² ΡΡΡΠΎΠΊΠ΅ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅).
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ rtabmap Π½Π° Raspberry Pi 3 Ρ ASUS Xtion Pro Live
ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ Π΄ΡΠ°ΠΉΠ²Π΅Ρ OpenNI2 Π΄Π»Ρ ΠΊΠ°ΠΌΠ΅ΡΡ Xtion Pro Live:
ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ Start:
Π‘ΠΏΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Ρ ΠΊΠ°ΠΌΠ΅ΡΠΎΠΉ:
ΠΠ° Raspberry Pi ΠΏΡΠΎΡΠ΅ΡΡ rtabmap Ρ ΠΌΠ΅Π½Ρ ΠΎΠΊΠ°Π·Π°Π»ΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ΅ΡΡΡΡΠΎΠ΅ΠΌΠΊΠΈΠΉ (ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» 250 β 300 % CPU). ΠΠ½ΠΎΠ³Π΄Π° ΠΎΠΊΠ½ΠΎ ΡΠ΅ΠΌΠ½Π΅Π»ΠΎ, ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· rtabmap ΡΠΏΠ°Π» Ρ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ Segmentation fault.
ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ rtabmap ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° Raspberry Pi ΠΊΡΠ°ΠΉΠ½Π΅ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, ΡΡΠ΅ΠΉΠΌΡΠ΅ΠΉΡ ΠΎΡΠ΅Π½Ρ Π½ΠΈΠ·ΠΊΠΈΠΉ. ΠΠ»Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π½ΡΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ Π²Ρ ΠΎΠ΄Π½ΡΡ ΡΠ°ΡΡΠΎΡΡ ΠΊΠ°Π΄ΡΠΎΠ². ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π² Π²Π΅ΡΡ Π½Π΅ΠΌ ΠΌΠ΅Π½Ρ ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ Window β Preferences β General settings (GUI) ΠΈ Π½Π°ΠΆΠΈΠ²Π°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡ Β«Load settings. Β». Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 30 Hz Π΄Π»Ρ Β«input rateΒ»:
Π Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π² rtabmap ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π·Π΄Π΅ΡΡ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΡΡΡΡΠ΅Π΅:
ΠΠ°ΡΡΠ° ΠΏΠΎΡΡΠΈ Π³ΠΎΡΠΎΠ²Π°:
ΠΠ°ΡΠ° Π·Π°Π΄Π°ΡΠ° Π·Π΄Π΅ΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΠΏΠ΅ΡΠ½ΡΡ Π΄Π΅ΡΠ΅ΠΊΡΠΈΡ ΡΠΈΠΊΠ»ΠΎΠ² (loop closure detection). Π ΡΠ»ΡΡΠ°Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ Π΄Π΅ΡΠ΅ΠΊΡΠΈΠΈ ΡΠΈΠΊΠ»ΠΎΠ² ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΈΠ²Π°Π΅ΡΡΡ Π·Π΅Π»Π΅Π½ΡΠΌ ΡΠΎΠ½ΠΎΠΌ.
Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π΄Π΅ΡΠ΅ΠΊΡΠΈΠΈ ΡΠΈΠΊΠ»Π° Π² ΠΏΠ°Π½Π΅Π»ΠΈ Β«3D loop closureΒ». ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π² Π²Π΅ΡΡ Π½Π΅ΠΌ ΠΌΠ΅Π½Ρ Π²ΡΠ±Π΅ΡΠ΅ΠΌ: Window β Show view β 3D Loop closure. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ Ρ ΡΠΈΡΡΠ°ΠΌΠΈ ΠΎΡ 1 Π΄ΠΎ 5 ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠΎΡΠΌΠ°Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΎΠ±Π»Π°ΠΊΠΎΠ² ΡΠΎΡΠ΅ΠΊ (ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠ΅ ΡΠ²Π΅ΡΠ°, ΡΠ²Π΅ΡΠΎΠ²ΠΎΠΉ Π³ΡΠ°Π΄ΠΈΠ΅Π½Ρ ΠΏΠΎ ΠΎΡΡΠΌ (axis oriented colors) ΠΈΠ»ΠΈ RGB):
ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΆΠ°ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ Pause Π΄Π»Ρ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ ΠΊΠ½ΠΎΠΏΠΊΡ Stop Π΄Π»Ρ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠ°. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΡΠΉΡΠΈ ΠΈΠ· ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π½Π°Ρ ΠΏΡΠΎΠ³ΡΠ΅ΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . ΠΡΠΈ Π·Π°ΠΊΡΡΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ Π²ΡΠΏΠ»ΡΠ²Π°ΡΡΠ΅Π΅ ΠΎΠΊΠ½ΠΎ Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. Π Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΏΡΠΎΡΠ΅ΡΡ, Π·Π°ΠΏΡΡΡΠΈΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ Π²ΡΠ±ΡΠ°Π² ΡΡΡΠ΅ΡΡΠ²ΡΡΡΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
ΠΠ°ΠΌ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ°Ρ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΊΠ°ΡΡΡ Π΄Π»Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
Π£ ΠΌΠ΅Π½Ρ ΠΏΠΎΠ»ΡΡΠΈΠ»Π°ΡΡ ΡΠ°ΠΊΠ°Ρ ΠΊΠ°ΡΡΠ° (Ρ ΡΠ½ΠΈΠΌΠ°Π» ΡΠ°ΡΡΡ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΡ):
Π Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ rtabmap (Π² Π²Π΅ΡΡ Π½Π΅ΠΌ ΠΌΠ΅Π½Ρ Window β Preferences) ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΎΠ΄ΠΎΠΌΠ΅ΡΡΠΈΠΈ (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΌΡΠΉ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΡ ΠΏΡΠΈΠ·Π½Π°ΠΊΠΎΠ²). ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ Π²ΡΠ±Π΅ΡΠ΅ΠΌ: RTAB-Map Settings β Memory β Vocabulary ΠΎΠΊΠΎΠ»ΠΎ ΠΏΡΠ½ΠΊΡΠ° Feature selection ΠΈ Π²ΡΠ±Π΅ΡΠ΅ΠΌ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΈΠ· Π²ΡΠΏΠ°Π΄Π°ΡΡΠ΅Π³ΠΎ ΡΠΏΠΈΡΠΊΠ° Visual word type:
Π ΠΌΠΎΠΈΡ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Ρ ΠΎΠ΄ΠΎΠΌΠ΅ΡΡΠΈΡ Ρ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠΌ ΡΠ»ΠΎΠ²Π°ΡΠ΅ΠΌ GFTT+BRIEF ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ, BRISK ΠΏΠΎΠΊΠ°Π·Π°Π»Π° Ρ ΡΠ΄ΡΠΈΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ (Π½Π΅ ΡΠ΄Π°Π»ΠΎΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄Π΅ΡΠ΅ΠΊΡΠΈΡ ΡΠΈΠΊΠ»Π° ΡΠΎΠ²ΡΠ΅ΠΌ). ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ GFTT+BRIEF, Π΄Π΅ΡΠ΅ΠΊΡΠΈΡ ΡΠΈΠΊΠ»Π° Π±ΡΠ»Π° ΠΏΠΎΠ»ΡΡΠ΅Π½Π° ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΎΠ±ΠΎΡΠΎΡΠ° Ρ ΠΊΠ°ΠΌΠ΅ΡΠΎΠΉ Π²ΠΎΠΊΡΡΠ³ ΠΊΠΎΠΌΠ½Π°ΡΡ. ΠΠ»Π³ΠΎΡΠΈΡΠΌ ORB ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈ Π΄Π°Π΅Ρ Π½Π΅ ΠΎΡΠ΅Π½Ρ Ρ ΠΎΡΠΎΡΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ.
rtabmap ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠΈΡΠΎΠΊΠΈΠΉ Π²ΡΠ±ΠΎΡ ΠΊΠ°ΠΌΠ΅Ρ (RGB-D ΠΊΠ°ΠΌΠ΅ΡΡ Intel RealSense, ASUS Xtion, Kinect v1 ΠΈ v2, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ΅ΡΠ΅ΠΎ ΠΊΠ°ΠΌΠ΅ΡΡ Bumblebee2 ΠΈ ZED camera) ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ ΠΊΠ°ΠΌΠ΅ΡΡ, Π»ΠΈΠ΄Π°ΡΠ° ΠΈ ΡΠ΅Π½ΡΠΎΡΠ° IMU (ΡΡΡΠΎΡΠΈΠ°Π»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π·Π΄Π΅ΡΡ).
RGBDSLAM
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° RGBDSLAMv2
Π RGBDSLAM ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π½Π° ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ ROS ΠΈ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ github.
Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ RGBDSLAM ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ²:
Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ libg2o:
Π³Π΄Π΅ ros_version β Π²Π΅ΡΡΠΈΡ ROS (hydro, indigo ΠΈΠ»ΠΈ kinetic).
ΠΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΠΌ RGBDSLAM Π² ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ catkin:
ΠΠ½Π΅ Π½Π΅ ΡΠ΄Π°Π»ΠΎΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ RGBDSLAM Π½Π° Raspberry Pi ΠΈΠ·-Π·Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ Qt, ΠΏΠΎΡΡΠΎΠΌΡ Π·Π΄Π΅ΡΡ Ρ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Ρ ΡΠ°Π±ΠΎΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ROS Indigo Ρ ΠΊΠ°ΠΌΠ΅ΡΠΎΠΉ Microsoft Kinect.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ RGBDSLAMv2
RGBDSLAMv2 ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ Π΄Π²ΡΠΌΡ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ. ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , Ρ ΠΏΠΎΠΌΠΎΡΡΡ launch ΡΠ°ΠΉΠ»Π°:
ΠΠΈΠ±ΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ openni_launch ΠΈ ΡΠ·Π΅Π» RGBDSLAMv2:
ΠΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠΊΡΠ°Π½:
ΠΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΡΡΡ Π½Π°ΡΠ½Π΅ΡΡΡ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. RGBDSLAM Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ΅ΡΡΡΡΠΎΠ΅ΠΌΠΊΠΈΠΉ, Ρ ΠΌΠ΅Π½Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° top ΠΏΠΎΠΊΠ°Π·Π°Π»Π° 155% Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° Π΄Π»Ρ ΠΏΡΠΎΡΠ΅ΡΡΠ° rgbdslam.
ΠΠΎΠ³Π΄Π° ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΡΡΡ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΎ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΠΏΠΎΡΠΎΠΊΠ° Ρ ΠΊΠ°ΠΌΠ΅ΡΡ, ΡΠ½ΡΠ² Π³Π°Π»ΠΎΡΠΊΡ Processing Π² ΠΌΠ΅Π½Ρ Processing:
ΠΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΡΡΡ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΎ:
ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΊΠ°ΡΡΡ. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ±ΡΠΎΡΠΈΡΡ ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΏΡΠΎΠ³ΡΠ΅ΡΡ Π² ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ΅ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ, Π²ΡΠ±ΡΠ°Π² Reset Π² ΠΌΠ΅Π½Ρ Processing:
ΠΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ RGBDSLAM ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π½Π° ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅.
ΠΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΡ, Π΄Π°Π½Π½ΡΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ SLAM Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΡΠΈΠ³ΠΎΠ΄Π½Ρ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² ΡΠΎΠ±ΠΎΡΠΎΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ROS ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ RGBD ΠΊΠ°ΠΌΠ΅ΡΡ Microsoft Kinect ΠΈ Π΄Π°ΡΡ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π½Π΅ΠΏΠ»ΠΎΡ ΡΡ ΠΊΠ°ΡΡΡ ΠΌΠ΅ΡΡΠ½ΠΎΡΡΠΈ. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π½Π΅ Π²ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ARM ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°Ρ (ΠΏΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅, Π½Π° Raspberry Pi). ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° rtabmap ΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π³ΠΈΠ±ΠΊΠΎΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΌΡ ΠΆΠ΅Π»Π°Π½ΠΈΡ.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ Π΄Π²Π° Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° SLAM Π΄Π»Ρ RGBD ΠΊΠ°ΠΌΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠΌΠ΅ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π² ROS. ΠΠ΅Π»Π°ΡΡΠΈΠ΅ ΠΌΠΎΠ³ΡΡ Π±Π»ΠΈΠΆΠ΅ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΡΠ΅Π½Π°ΡΠΈΡΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² Π½Π° ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΡΡΠ°Π½ΠΈΡΠ°Ρ (ΠΊ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅) ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΈΡ Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ . ΠΠ΅Π»Π°Ρ Π²ΡΠ΅ΠΌ ΡΠ΄Π°ΡΠΈ Π² ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Ρ ΠΈ Π±ΡΠ΄Ρ ΡΠ°Π΄ ΠΎΡΠ²Π΅ΡΠΈΡΡ Π½Π° Π»ΡΠ±ΡΠ΅ Π²Π°ΡΠΈ Π²ΠΎΠΏΡΠΎΡΡ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ . ΠΠΎ Π½ΠΎΠ²ΡΡ Π²ΡΡΡΠ΅Ρ!