map matching

About_work·2024년 4월 3일
0

global mapper

목록 보기
8/37

1. 센서 데이터 전처리

  • RGBD 데이터 정제:
    • RGBD 카메라로부터 수집된 데이터에서 노이즈를 제거하고, 깊이 정보를 정확하게 보정
    • 이는 보통 필터링 알고리즘(예: 메디안 필터, 가우시안 필터)을 사용하여 수행

2. 글로벌 맵과 센서 데이터의 초기 매칭

  • 특징점 추출 및 매칭:
    • RGB 이미지에서 SIFT, ORB 또는 다른 특징점 검출 알고리즘을 사용하여 특징점을 추출
    • 이 특징점들을 글로벌 2D 맵에 이미 표시된 특징들과 매칭하여 초기 위치 추정치를 얻음

3. 위치 보정

  • 파티클 필터 또는 몬테 카를로 위치 추정:

    • 로봇의 현재 위치 추정에 불확실성이 있는 경우, 파티클 필터와 같은 몬테 카를로 방법을 사용하여 위치 추정을 보정할 수 있습니다.
    • 여러 가설(파티클)을 생성하고, 센서 데이터와 글로벌 맵의 정보를 통합하여 각 가설의 가중치를 업데이트한 후, 최적의 위치 추정치를 선택
  • ICP(Iterative Closest Point) 또는 다른 맵 매칭 알고리즘 사용:

    • RGBD 센서 데이터로부터 생성된 로컬 3D 포인트 클라우드와 글로벌 2D 맵 사이의 최적의 매칭을 찾기 위해 ICP 같은 알고리즘을 사용할 수 있습니다.
    • 이 과정은 로봇의 위치와 방향을 더 정확하게 보정하는 데 도움을 줍니다.

4. 정확한 ROI 맵 정보 추출

  • 보정된 위치를 기반으로 ROI 추출:

    • 보정된 로봇의 위치와 방향 정보를 바탕으로, 글로벌 2D 맵에서 해당 위치 근처의 정확한 ROI를 추출
    • 이 ROI는 로봇이 현재 위치에서 알아야 할 환경 정보를 포함
  • ROI의 센서 증강: 글로벌 맵에서 추출된 ROI 정보와 로봇의 실시간 센서 데이터를 통합하여, 로봇이 센서로 직접 검지할 수 없는 물체나 장애물까지 포함한 상세한 로컬 맵을 생성합니다. 이는 로봇이 환경을 더 잘 이해하고, 내비게이션 및 의사 결정을 개선하는 데 도움을 줍니다.

5. 반복적인 위치 보정 및 맵 업데이트

  • 로봇이 움직임을 계속하면서 새로운 센서 데이터를 수집하고, 이를 기반으로 위치 보정과 ROI 맵 정보 업데이트를 반복적으로 수행합니다. 이 과정은 로봇이 탐색

하는 동안 지속적으로 환경에 대한 이해를 갱신하고 최적화합니다.

  • 이 알고리즘적 접근은 로봇이 글로벌 2D 맵과 자신의 센서 데이터를 통합하여 정확한 위치 추정과 환경 인식을 달성하는 데 중점을 둡니다. 위치 보정과 ROI 맵 정보의 정확한 추출은 로봇의 내비게이션과 임무 수행 능력을 크게 향상시킬 수 있습니다.

답변 2

  • 로컬 3D 포인트 클라우드 데이터와 글로벌 2D 맵 사이의 최적 매칭을 찾기 위한 과정 설명
  • 이 과정은 대체로 두 주요 단계로 나눌 수 있습니다:
    • (1) 데이터 변환 및 표현의 조정,
    • (2) 매칭 및 최적화 기법의 적용
  • 다음은 이러한 과정을 수행하기 위한 알고리즘적 접근법입니다.

1. 데이터 변환 및 표현 조정

a. 포인트 클라우드의 2D 투영

  • 투영 방법:
    • 3D 포인트 클라우드에서 관련성이 높은 특징을 보존하면서 2D 평면으로의 투영을 수행합니다. 이는 보통 z축(높이)에 대한 정보를 제거하고, x와 y축 정보만을 사용하여 수행됩니다.

b. 특징 추출

  • 특징 추출: 투영된 2D 데이터와 글로벌 2D 맵에서 동일한 유형의 특징(예: SIFT, SURF, ORB)을 추출하여, 매칭 과정에서 비교할 기준점을 설정

2. 매칭 및 최적화 기법

a. ICP (Iterative Closest Point)

  • 원리:
    • 3D 포인트 클라우드 데이터와 2D 맵 간의 변환을 찾기 위해, 반복적으로 가장 가까운 점들 사이의 매칭을 최적화
    • 이 과정은 3D-2D 매칭에 직접적으로 사용되기 보다는, 3D 데이터를 기반으로 한 후속 처리나 다른 매칭 알고리즘과 결합될 때 유용합니다.

b. 특징 기반 매칭

  • 특징 매칭: 추출된 특징들 사이에서 매칭을 수행하기 위해, feature descriptor 간의 거리(예: 유클리드 거리)를 계산하고, 가장 유사한 특징들을 매칭

c. RANSAC (Random Sample Consensus)

  • 원리:
    • 이상치(outlier)에 강건한 매칭을 위해, RANSAC 알고리즘을 사용하여 특징 매칭 과정에서 발생할 수 있는 오류를 최소화
    • 무작위로 선택된 데이터 샘플을 기반으로 모델을 추정하고, 이 모델에 가장 잘 맞는 데이터 포인트들을 찾아내 최적의 매칭을 결정합니다.

d. 최적화 알고리즘

  • 최적화: 매칭된 특징점들을 기반으로 초기 변환 추정치를 얻은 후,
    • Levenberg-Marquardt 최적화와 같은 고급 최적화 기법을 사용하여 최종적인 매칭과 변환 파라미터를 정밀하게 조정

3. 위치 보정

  • 매칭 및 최적화 과정을 통해 얻은 변환 정보를 사용하여, 로봇의 현재 위치를 보정
  • 이를 통해, 로컬 3D 포인트 클라우드 데이터와 글로벌 2D 맵 사이의 최적 매칭을 기반으로 로봇의 정확한 위치를 결정할 수 있습니다.

2d grid map에서 특징점 찾기

1. Harris 코너 검출기 (Harris Corner Detector)

  • Harris 코너 검출기는 이미지에서 코너를 식별하는 데 널리 사용되는 방법으로, 그리드 맵에서의 고유한 지점(특징점)을 찾는 데에도 적용할 수 있습니다.
  • 동작 원리: 그리드 맵을 이미지로 간주하고, 각 픽셀에서 그레이디언트의 방향 변화량을 계산하여 코너를 식별합니다. Harris 검출기는 픽셀 주변의 작은 윈도우가 모든 방향으로 이동할 때 발생하는 강도 변화의 변화량을 측정합니다.
  • 장점: 강력하고 빠른 검출 능력을 가지고 있으며, 코너와 같은 구조적 특징을 잘 포착합니다.
  • 단점: 노이즈에 민감할 수 있으며, 스케일 변화에 대응하는 능력이 제한적일 수 있습니다.

2. FAST (Features from Accelerated Segment Test)

  • FAST는 주로 이미지에서 특징점을 빠르게 검출하기 위해 사용되며, 그리드 맵에서의 중요 지점을 찾는 데에도 적합합니다.

  • 동작 원리: 픽셀 주변의 원형 이웃들을 검사하여, 중심 픽셀과의 밝기 차이가 임계값 이상인 이웃 픽셀의 수에 따라 특징점을 결정합니다.

  • 장점: 매우 빠른 계산 속도를 자랑하며, 실시간 시스템에서 유용합니다.

  • 단점: 회전 불변성이나 스케일 불변성이 없으며, 노이즈에 상대적으로 민감할 수 있습니다.

3. GFTT (Good Features to Track)

  • GFTT는 Harris 코너 검출기를 개선한 방법으로, 추적하기 좋은 특징점을 식별합니다.

  • 동작 원리: Harris 검출기의 응답 함수를 사용하지만, 특징점의 품질을 기반으로 최상의 특징점을 선택하는 기준을 추가합니다.

  • 장점: 트래킹에 적합한 고품질의 특징점을 제공합니다.

  • 단점: 계산 비용이 Harris 코너 검출기보다 높을 수 있습니다.

4. Canny 엣지 검출기

  • Canny 엣지 검출기는 이미지의 엣지를 찾는 데 사용되지만, 그리드 맵에서 경계를 따라 나타나는 특징점을 식별하는 데에도 활용될 수 있습니다.

  • 동작 원리: 그레이디언트의 크기와 방향을 계산하여 강한 엣지를 검출하고, 이를 통해 연결된 엣지를 추적합니다.

  • 장점: 노이즈에 강하고, 엣지의 연속성을 잘 유지합니다.

  • 단점: 엣지 검출에 중점을 둔 방법이므로, 코너나 다른 종류의 특징점을 찾는 데는 제한적일 수 있습니다.


2d grid map의 특징점끼리, 특징점 matching 하는 방법

1. RANSAC (Random Sample Consensus)

  • RANSAC은 이상치에 강건한 특징점 매칭 알고리즘으로, 특징점 간의 매칭을 추정하고 최적의 매칭 모델을 찾는 데 널리 사용

  • 동작 원리:

    • 무작위로 특징점 쌍을 선택하고, 이들 사이의 변환(예: 회전과 이동)을 추정합니다.
    • 다음으로, 이 변환을 나머지 특징점에 적용하여 얼마나 많은 특징점이 잘 매칭되는지를 평가
    • 이 과정을 반복하여 최대의 일치 특징점 집합을 가진 변환을 최종 모델로 선택
  • 장점: 이상치에 강건하며 다양한 환경에서 좋은 성능

  • 단점: 무작위 샘플링 방식 때문에 계산 비용이 높을 수 있으며, 최적의 결과를 보장하지는 않음

2. ICP (Iterative Closest Point)

  • ICP 알고리즘은 주로 3D 포인트 클라우드 매칭에 사용되지만, 2D 그리드 맵의 특징점 매칭에도 적용할 수 있습니다.
  • 동작 원리:
    • 한 맵의 각 특징점에 대해, 다른 맵에서 가장 가까운 특징점을 찾음
    • 이렇게 해서 구해진 특징점 쌍을 기반으로 두 맵 사이의 최적 변환(회전 및 이동)을 계산합니다.
    • 이 변환을 반복적으로 조정하여 두 맵 간의 오차를 최소화합니다.
  • 장점: 정확한 매칭을 제공하며, 초기 추정치가 가까울 경우 빠르게 수렴할 수 있습니다.
  • 단점: 초기 추정치에 의존적이며, 지역 최소값에 빠질 수 있습니다.

3. 특징 기반 매칭

  • 특징 기반 매칭은 두 맵에서 검출된 특징점의 디스크립터를 비교하여, 유사한 특징점을 찾는 방식
  • 이는 SIFT, SURF, ORB와 같은 알고리즘을 통해 추출된 특징점과 디스크립터에 기반
  • 동작 원리:
    • 두 맵의 특징점 디스크립터 간의 거리(예: 유클리드 거리)를 계산하고, 이를 기반으로 가장 유사한 특징점 쌍을 매칭
    • 매칭의 질을 개선하기 위해, 거리 비율 테스트 등의 추가적인 검증 단계를 적용할 수 있음
  • 장점: 다양한 형태의 특징점과 변환에 대응할 수 있으며, 구현이 상대적으로 간단
  • 단점: 매칭 성공률은 사용된 특징점과 디스크립터의 질에 크게 의존적

4. 그래프 기반 매칭

  • 그래프 기반 매칭은 맵을 그래프로 모델링하고, 노드(특징점)와 엣지(특징점 간의 관계) 간의 구조적 유사성을 기반으로 매칭을 수행

  • 동작 원리: 각 맵에서 그래프를 생성하고, 그래프 매칭 알고리즘(예: 그래프 이즈모피즘 검사)을 사용하여 두 그래프 간의 최적 대응을 찾습니다.

  • 장점: 구조적 정보를 활용하여 정확한 매칭이 가능합니다.

  • 단점: 그래프 매칭은 NP-완전 문제일 수 있으며, 큰 맵에서는 계산 비용이 매우 높을 수 있습니다.


AMCL (Adaptive Monte Carlo Localization)


  • 지도는 정확하다는 가정
  • AMCL등을 쓰면, 비교적 오차가 적은 상태로 global map에 업데이트 할 수 있음
  • global map에 업데이트를 바로 하는게 아니라, time 축으로 저장함.
  • 업데이트 하는 기준을 마련해야함.
    • 센싱 정보가 dynamic인지, static인지, 구분해야함.

센싱 정보가 dynamic인지, static인지, 구분하기

  • 로봇이 실시간으로 수집한 로컬 인지 정보를 서버의 글로벌 2D 스태틱 맵에 반영하는 과정은 복잡한 문제
  • 이 과정은 동적 장애물과 새로운 정적 장애물을 식별하고, 이 정보를 기존의 글로벌 맵에 정확하고 효과적으로 통합하는 것을 포함
  • 다음은 이 문제를 해결하기 위한 로직과 알고리즘의 개요입니다:

1. 동적 장애물과 정적 장애물 구분

  • 시간 필터링(Time Filtering):
    • 같은 위치에 일정 시간 동안 지속적으로 관찰되는 객체만을 정적 장애물로 간주
    • 단기적으로 나타났다 사라지는 객체는 동적 장애물로 분류
  • 옵티컬 플로우(Optical Flow):
    • 연속된 이미지 프레임에서 객체의 움직임을 분석하여, 움직이는 객체를 동적 장애물로 식별

2. 정적 장애물의 변화 감지

  • 변경 감지(Change Detection):
    • 새로 수집된 데이터와 글로벌 맵을 비교하여 변화된 지역을 식별
    • 이는 빼기 연산, XOR 연산 등을 통해 수행할 수 있음
  • 클러스터링(Clustering):
    • 변화가 감지된 지역 내에서 클러스터링 알고리즘(예: k-평균, DBSCAN)을 사용하여 새로운 정적 장애물을 식별

3. 정보 통합과 맵 업데이트

  • 데이터 융합(Data Fusion):
    • 여러 센서 소스와 시간에 걸쳐 수집된 데이터를 통합하여, 글로벌 맵의 정확도를 개선
    • 이 과정에서는 베이지안 필터링, 칼만 필터 등이 사용될 수 있음
  • 맵 업데이트(Map Update):
    • 식별된 새로운 정적 장애물과 제거된 동적 장애물 정보를 글로벌 맵에 반영
    • 이는 맵의 정적 부분을 수정하거나 새로운 레이어를 추가하는 형태로 진행될 수 있음

4. 정확도와 신뢰도 평가

  • 정확도 평가(Accuracy Assessment):
    • 맵 업데이트 후, 새로운 맵의 정확도와 신뢰도를 평가
    • 이는 시뮬레이션, ground truth 데이터 비교, 또는 수동 검사를 통해 수행될 수 있음

5. 반복적인 검증과 업데이트

  • 반복적인 검증(Iterative Verification):
profile
새로운 것이 들어오면 이미 있는 것과 충돌을 시도하라.

0개의 댓글