EasyAR Sparse Spatial Map
EasyAR Sparse Spatial Map 은 사용자 주변의 작은 규모 환경, 방 수준, 을 스캔하여 환경의 3D 시각 지도를 생성하고 visual localization tracking 기능을 제공합니다. 지속형 AR 애플리케이션 또는 다중 사용자 인터랙티브 AR 애플리케이션 개발에 적합합니다.
EasyAR Sparse Spatial Map 원리
EasyAR Sparse Spatial Map 은 motion tracking 을 기반으로 디바이스에서 computer vision 알고리즘을 사용해 카메라 데이터의 feature 를 분석하고 환경의 공간 3D 지도를 구축합니다. 사용자는 시각 지도를 저장하거나 여러 디바이스 간에 실시간 공유할 수 있습니다. 다른 디바이스가 해당 지도를 로드하면, 로드한 지도 안에서 localization 을 통해 지도에 대한 디바이스의 위치와 자세를 결정하여 지속형 AR 애플리케이션 또는 다중 사용자 인터랙티브 AR 애플리케이션을 개발할 수 있습니다.
Sparse Spatial Map 은 현재 EasyAR Motion Tracker, ARCore, ARKit 같은 안정적인 motion tracking 시스템이 필요하며, mapping 중 및 localization 성공 후 지속 tracking 에 사용할 6자유도 위치와 자세를 제공합니다. mapping 과정에서 Sparse Spatial Map 은 카메라 이미지와 해당 pose 를 사용해 환경의 1:1 시각 지도를 구축합니다. localization 과정에서 visual localization 이 성공하면, 지도에 대한 디바이스 pose 는 motion tracking 시스템을 통해 지속적으로 업데이트됩니다.
EasyAR Sparse Spatial Map 은 여러 지도를 로드하고, 여러 지도에서 localization 하며, 해당 지도 ID 와 그 지도에 대한 디바이스 위치 및 자세를 반환하는 기능을 지원합니다.

Mapping 모범 사례
Sparse Spatial Map 을 만들 때는 사용자가 어떤 장소와 시점에서 localization 을 수행할지 충분히 고려하여 mapping 과정을 최적화해야 합니다. mapping 할 때는 관찰 각도와 거리를 포함해 가능한 모든 localization 시점을 최대한 포함하십시오.
mapping 효과를 높이기 위한 모범 사례:
- 스캔되는 영역이나 scene 에 대해 가능한 한 평행 이동하거나 천천히 회전합니다.
- 사용자가 localization 할 수 있는 위치를 충분히 스캔하고 포함하도록 가능한 한 많이 이동합니다.
- 풍부하고 안정적이며 정적인 시각 feature 가 있는 영역에서 mapping 하도록 합니다.
- 단일 지도 범위는 1000제곱미터를 넘지 않아야 합니다.
- mapping 디바이스에서 scene 까지의 거리는 10미터 미만이어야 합니다.
스캔 mapping 시 다음 상황을 피해야 합니다.
- 흰 벽처럼 시각 feature 가 없는 넓은 영역에서 mapping 하지 않습니다.
- 유리나 거울 물체처럼 반사 재질이 넓은 영역에서 mapping 하지 않습니다.
- 반복적인 텍스처 영역에서 mapping 하지 않습니다.
mapping 이 완료되면 생성한 Sparse Spatial Map 에서 localization 을 테스트하고 성공률과 정확도를 확인할 수 있습니다. 효과가 좋지 않으면 더 완전한 지도를 다시 만드는 것을 고려하십시오.
Localization 모범 사례
Sparse Spatial Map 의 localization 효과를 보장하고 사용자 경험을 높이려면 다음 실천 사항을 따르십시오.
- 사용자가 지도에 해당하는 scene 에서 localization 하도록 안내합니다. 예를 들어 target scene 의 미리보기 이미지를 제공하여 사용자가 target scene 을 찾도록 돕습니다.
- 사용자가 디바이스를 천천히 움직이며 여러 각도에서 localization 을 시도하도록 안내합니다.
- 시각 feature 가 없거나, 거울면이거나, 반복 텍스처가 포함된 영역에서 localization 하지 않습니다.
Localization 실패의 일반적인 원인
사용자의 localization 환경이 지도 구축 환경과 크게 다르면 localization 실패가 발생할 수 있습니다. 예:
시점 변화
mapping 이 잠재적인 localization 각도를 가능한 한 포함하도록 하십시오. localization 각도가 가장 가까운 mapping 각도와 45° 이상 차이나면 localization 성공률이 크게 떨어집니다.
조명 차이
mapping 조명과 localization 조명이 비슷할 때 localization 성공률이 가장 높습니다. 예를 들어 낮에 mapping 한 뒤 완전히 어두운 밤에 localization 을 시도하는 것은 피하십시오.
거리 변화
mapping 시 휴대폰을 움직여 서로 다른 거리의 위치를 포함하십시오. 예를 들어 target 에서 1미터 근처 위치를 mapping 한 뒤 10미터 떨어진 곳에서 localization 을 시도하면 실패하기 쉽습니다.