SLAM 알고리즘은 변화하는 환경을 어떻게 처리합니까?


13

프로젝트를위한 기초 작업을하고 있으며 현재 SLAM 기술 상태에 대한 질문이 있습니다.

SLAM이 장착 된 장치가 물체를 감지하면 해당 물체의 위치가 저장됩니다. 장치가 생성하는 점 구름을 보면이 객체에 대한 점이 표시되며 여기에서 생성 된 모델에는 여기에 형상이 포함됩니다.

개체가 이전에 비어있는 공간에 배치되면 감지되고 점이 추가됩니다. 후속 모델에는이 새 객체를 설명하는 형상이 있습니다.

해당 물체가 제거되면 장치는 어떻게 반응합니까? 내가 본 한, SLAM 시스템은 점을 제자리에두고 "고스트"지오메트리를 만드는 경향이 있습니다. 일시적인 접촉으로 인한 고 독점을 무시하는 알고리즘이 있지만, 견고한 모델을 구축 할 수있을 정도로 오래 남아있는 객체는 장치의 메모리에 남아 있습니다. 이전에 점유 된 공간이 비 었음을 감지 할 수있는 시스템이 있습니까?


이 질문은 기계 학습과 관련이 없습니다.
Josh Vander Hook

아마 아닐거야; 어떤 태그가 적합한 지 100 % 확신하지 못했습니다. 내가 염두에 둔 응용 프로그램은 적합하지 않은 것 같지만 해당 컨텍스트가 없으면 적용 가능성이 떨어집니다 ...
anaximander

답변:


5

그것은 매우 달려 있습니다. SLAM은 해결책이 아닌 문제 (또는 적어도 기술)이므로 결정적인 SLAM 알고리즘은 없습니다. 의미 상, 환경의 "맵"에 어떤 일이 발생하는지 결정해야하며, 이는 알고리즘이 일시적인 (일명 이동) 신호를 처리하는 방법을 결정합니다. 그러나 그것은 분열입니다.

영구지도 :

영구 맵에는 알려진 지오메트리와 관련하여 자신을 지역화 할 수있는 충분한 정보가 포함되어야합니다. 일반적으로 건물에 사용됩니다. 일반적으로 사람이 읽을 수 있습니다. Willow-Garage의 작업을 참조하십시오. 그의 유명한 교과서에있는 Thrun의 어떤 것. 이 맵을 잃어 버리면 시간이 지남에 따라 다시 맵을 만들어야합니다.

  1. 객체를 제거합니다. 예, 오브젝트는 한동안 정적 맵에 나타납니다. 이전에 탐지 된 물체를 제거하기위한 조치를 취하지 않으면 지속됩니다. 일반적인 2D 그리드 기반 표현은 각 그리드 셀을 사용하여 객체의 확률을 나타내므로 시간이 지나면 객체가 "페이드"됩니다.

  2. 객체 추가. 같은 상기와.

지역지도 :

실제로 SLAM은 일반적으로 로봇이 움직일 때 로봇을 지역화하는 데 사용되며 맵은 영구적으로 유지되지 않습니다 (또는 영구적으로 유지되지만 가장 가까운 Y 기능 만 사용됨). 로컬 맵은 마지막 X 분 동안 로봇이 어떻게 움직 였는지 결정하기 위해 로봇이 알아야 할 모든 것입니다. 여기서 X는 응용 프로그램에 따라 다릅니다. 지도를 잃어버린 경우에도 현재 보이는 기능을 사용하여 계속 비행 할 수 있습니다.

  1. 시각적 특징을 사용한 번들 조정과 같은 배치 방법은이 방향에서 매우 일반적인 기술입니다. 기능은 시간이 지남에 따라 유지되고 다시 방문 될 수 있지만 이동 기능은 신뢰할 수없는 기능이므로 로봇의 위치를 ​​파악하려고 할 때 무시됩니다.

  2. 비주얼 SLAM은 바로 이것입니다. 맵 기반 지역화 알고리즘이 아닌 델타 -P (포즈 변경) 추정기입니다.

  3. 요컨대, 현재 대부분의 것들이 아닌 한 움직이지 않는 한, 로봇이 "보지"않을 때 물체를 제거해도 문제가되지 않습니다.

그렇게하십시오. SLAM 논문을 읽을 때 다음을 결정하십시오.

  1. 그들은 실제로지도를 만들고 있습니까?

  2. 기능과 위치 목록 만 유지하고 있습니까?

  3. 그렇다면 어떤 "기능"이지도에 표시됩니까? 선, 점, 시각적 특징?

  4. 이러한 기능이 움직일 가능성이 있습니까?

  5. 그렇다면 어떻게 처리 할 수 ​​있습니까?

  6. 마지막으로, 센서 소음은 종종 움직이는 기능과 같이 보입니다. 센서 노이즈를 어떻게 처리합니까? 이것은 종종 움직이는 피처에 어떤 일이 발생하는지 결정하기 때문입니다.

각 논문 / 저자 / 도서 / 응용 프로그램마다 다른 답변을 얻을 수 있습니다. 요컨대, 로봇은 현지화에 크게 도움이되지 않기 때문에 일반적으로 생략되며, 로컬 정보 만 사용하는 몇 가지 저수준 경로 계획표를 사용하면 피할 수 있습니다.

행운을 빌어 요, 슬램은 큰 주제입니다.


감사! 객체가 "획득 된"위치와 "손실 된"위치를 추적하는 기술에 대해 알고 있습니까? SLAM 유형 알고리즘의 하위 집합의 응용 프로그램을 살펴보고 있으며 관심있는 영역 중 하나는 개체가 나타날 수있는 문 및 폐쇄 된 모서리와 같은 "전환"영역을 식별하는 것입니다. 이 응용 프로그램은 머리에 일반적인 페이딩 확률 메트릭을 표시합니다. 눈에 보이지 않을 때 객체가 "페이드"되는 대신 관찰되지 않은 영역의 값이 천천히 증가하여 최근에 보지 않았으므로 여기에 무엇이 있는지 알 수 없음을 나타냅니다. 이 공간으로 이동할 때는주의해야합니다.
anaximander

더 힘들어 이를 올바르게 수행하는 유일한 방법은 객체를 고유하게 식별하는 것입니다. 그들에게 바코드를 붙이십시오. 그렇지 않으면 객체 A가 위치 B로 이동했거나 A 및 B가 교체 된 것일 수 있습니다. 의미 매핑에서 읽습니다. 움직이는 물체가 실제로 "벽"에 붙어 있어야하지만 "내부"일 때만 "인사이드"가 로봇에 어떤 의미인지 "인식"할 수있는 알고리즘이 필요합니까? 좀 더 읽고보고해야한다고 생각합니다.
Josh Vander Hook

예, 여기서의 아이디어는 "이것은 내가 전에 없었던 것을 계속 보거나 그 곳에 있던 것을 보지 않는 영역"이라는 의미를 강조함으로써 의미론의 문제를 회피하는 것입니다. 이 영역은 문, 상자, 창, 폐색 된 모서리와 같은 일종의 전환 일 수 있습니다. 우리가 다루고있는 것 중 덜 중요한 것은 이것은 순전히 충돌 방지를위한 것이므로 이러한 모든 영역을 피하고 싶습니다. 마찬가지로, 어떤 객체가 어떤 객체인지 특별히 알 필요가 없습니다. Stuff가 차지하는 전체 공간의 양에 큰 변화가 있다는 것만.
anaximander

리뷰. 문학. 이러한 문제는 A) 물건 이동에서 발생합니다. B) 로봇 이동. C) 로봇이 길을 잃었다. D) 잘못된지도. 이 4 가지 각각에는 4 가지의 올바른 솔루션이 있습니다. 4 개를 모두 처리하지 않으면 완전히 잘못된지도가 만들어집니다. 이것이 SLAM이 해결되지 않았지만 여전히 어려운 이유입니다. 배운 내용과 관련된 특정 질문을 읽고 다시 답하십시오.
Josh Vander Hook

1
그것이 내가하는 일입니다. 읽을수록 읽을 것들의 목록이 길어집니다! 이것은 제가 읽은 많은 질문 중 첫 번째였습니다. 주석에서 질문을 다소 확장 한 것에 대한 사과; 나는 많은 반응을 얻지 못했고 SLAM은 매우 큰 주제입니다 ... 당신은 당신이 말하는 것을 알고있는 것처럼 보였으므로 몇 가지 포인터를 얻을 수 있기를 바랐습니다. 내 목록에 의미 매핑 문서가 있지만 그 기초로 읽어야 할 다른 것들이 몇 가지 있습니다. 어쨌든, 지금은 다시 읽은 것 같습니다.
anaximander
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.