Priv's Blog

위치 트래킹 기술 향상법 본문

Dev. Study Note/VR Introduction

위치 트래킹 기술 향상법

Priv 2024. 10. 9. 21:16


 

 

1. 위치 트래킹 성능 향상법

위치 트래킹 방법들은 각자의 한계와 장단점이 존재하지만, 여러 방법을 조합하는 형태로 한계를 극복하거나 단점을 완화할 수 있다.

여기서는 예측 분석, 필터링 기법, 시스템 보정, 자가 교정 및 트래킹 방법 등에 대해서 다루어본다.

 

1.1. 예측 분석

예측 분석은 레이턴시를 줄이면서 정밀도를 높이는 효과적인 연산 방법이다.

위치 추적기의 움직임을 분석하여, 향후 진행될 경로와 다음 프레임에 표시될 유닛의 위치를 예측하여 값을 제공하는 방식이다.

이렇게 추적기의 위치를 예측 계산/분석하면, 렌더링 시스템이 보다 합리적인 추정값을 가질 수 있다.

이는 말 그대로 '예측'이기 때문에 예측이 가능한 방식으로 움직이는 사물들에만 적용될 수 있으므로, 사물이 예측 불가능하게 움직이는 동안에는 이 시스템이 큰 효과를 발휘할 수 없다.

 

1.2. 시스템 보정

특정한 환경 내에서 수행되는 시스템 보정은 에러를 줄이는데 도움이 될 수 있다.

자기 트래킹 시스템을 예시로 들자면, 주변에 금속 물체가 없는 환경에 시스템을 배치해 두고 보정하는 방식으로 주변에 있는 금속 물체에 의한 오류를 최소화할 수 있을 것이다.

앞에서 살펴본 것처럼 관성 트래킹 시스템의 경우 '드리프트 문제' 때문에 오류가 누적되므로 주기적으로 보정을 해주어야 한다.

사실 트래킹 시스템은 사용하기 전에 어떠한 방법으로든 보정을 거쳐야 한다.

경우에 따라 보정 작업은 시스템에게 초기 위치를 다시 정의해 주는 간단한 방법으로도 끝날 수 있는데, '드리프트 오류'에 취약한 관성 시스템이 대표적으로 이러한 방식을 사용한다.

다른 시스템들은 보정이 필요할 때 체험자에게 보정 작업이 필요하다는 것을 알리거나 요구하기도 하며, 실시간으로 시스템이 직접 보정을 수행하는 경우도 있다.

추적 시스템이 자체적으로 제공하는 보정 방식과 무관하게 VR 애플리케이션에서 사용하는 체험자의 위치나 좌표 정보는 컴퓨터 코드에서 필요에 따라 수정될 수 있다.

즉, 시스템 자체의 보정 방법과 그에 따른 계산 값과 별개로 개발자는 VR 애플리케이션 상에서 시스템이 제공한 값을 임의로 다시 수정(보정)할 수 있다는 것이다.

 

1.3. 보정 테이블

보정 테이블 방식은 전자기 트래킹 시스템에서 유용하게 쓰일 수 있다.

특정한 위치에 설치된 트래킹 센서가 값을 출력하면, 이 값과 실제 좌표를 비교하여 오차를 계산한다.

트래킹 센서 위치를 옮겨가면서 반복적으로 오차를 계산하고, 이 데이터들을 기반으로 보정 테이블을 작성한다.

이렇게 만들어진 보정 테이블은 트래킹 센서가 계산한 값의 오차를 보정할 때 쓰이는 기준치가 된다.

이렇게 보정 테이블이 한 번 만들어지면, 시스템은 항상 그 보정 테이블의 값을 기준으로 하여 자신이 계산한 값을 보정하게 된다.

또한 보정 테이블 상에 기록되어 있는 참조 위치 데이터 사이의 값도 계산할 수 있다.

예를 들어, 센서의 (x, y, z) 위치 값이 (30, 40, 50)라고 알려져 있지만, 시스템이 (30, 40, 49)의 값을 출력했다면, 소프트웨어 상에서 이 값을 보정하여 (30, 40, 50)의 값을 최종적으로 전달하는 식이다.

즉, 보정 테이블에는 (30, 40, 50)과 (40, 50, 60)의 데이터만 기록되어 있지만, (30, 40, 49)처럼 그 중간 값이 출력되어도 보간법을 통해 보정 테이블에 기록되어 있는 (30, 40, 50) 데이터로 수정하는 것도 가능하다는 것이다.

이는 미리 제공된 두 값을 바탕으로 그 중간값을 추정하는 '보간법'을 활용하기 때문으로, 주변 참조 위치 값들을 기반으로 한 추정을 통해 정확한 값을 찾아내는 것이다.

 

1.4. 다른 트래킹 시스템과의 융합

트래킹 시스템의 한계를 극복하거나 단점을 완화하기 위해 다른 트래킹 시스템과 융합하는 방법도 고려해 볼 수 있다.

카메라를 사용하는 광학식 트래킹 시스템과 레이더를 사용하는 범위 찾기 트래킹 시스템을 결합하거나, 관성 트래킹 시스템과 등대 트래킹 시스템을 결합하는 등의 방식이다.

이러한 결합은 각자 지니고 있는 장단점을 상호보완하고 특이점을 극대화하는 것에 초점을 두고 있다.

일반적으로 관성 트래킹 시스템(IMU 트래킹 센서)은 절대 위치를 추적할 수 있는 다른 트래킹 시스템과 결합되어 자체적인 보정 기능을 수행할 수 있도록 돕는 역할을 수행한다.

IMU 센서는 거의 대부분의 전자기기에 적용될 정도로 매우 싸고 소형화되어 있어 보급률 또한 상당히 높은 편이다.

IMU 센서 특유의 빠른 반응 속도, 독립적인 트래킹 방식에 따른 높은 자유도와 더불어 필연적으로 발생하는 오차 누적 문제(드리프트 문제)를 다른 트래킹 시스템으로 보완하는 방식으로 자주 사용된다.

 


 

2. SLAM 트래킹 기술

SLAM 트래킹 기술은 현실 세계에서 수집한 데이터를 기반으로 하여 기하학 모델을 생성하는 방식의 트래킹 기술이다.

새로운 데이터가 수집되면 SLAM 트래킹 시스템은 이전에 수집한 데이터를 활용하여 현재 센서의 위치를 계산한다.

지금은 ARCore의 등장으로 개발이 중단된 Google 사의 '프로젝트 탱고'(Project Tango)는 Android 플랫폼 상에서 이 SLAM 트래킹 기술을 사용해 모바일 디바이스가 거리 및 공간 지각 능력을 갖추도록 만드는 프로젝트였다.

마찬가지로 중지된 프로젝트인 Microsoft 사의 '홀로렌즈'(HoloLens)의 경우에도 SLAM 트래킹 기술을 통해 현실 세계의 형태와 구조를 이해하고 그에 맞게 AR 그래픽을 렌더링 하는 방식을 사용했었다.

SLAM 트래킹 시스템도 다른 트래킹 기술과 융합되는 경우가 많은데, 특히 깊이 맵 생성 기술이나 관성 트래킹 기술(IMU 시스템)과 함께 쓰이는 경우가 많다.

SLAM 트래킹은 주로 내부 추적(Inside-Out Tracking) 방식으로 쓰이지만, 홀로렌즈의 사례처럼 MR(혼합 현실)을 구현할 때도 사용된다.

예를 들어, SLAM 시스템이 기하학 정보로 구축한 세계 모델이 HMD 기기를 착용하고 있는 체험자에게 장애물 접근 경고를 보낼 때 사용되는 식이다.

 


 

3. 광역 트래킹 기술

광역 트래킹 기술의 대표적인 예시가 GPS이다.

광역 트래킹 기술의 경우에는 굉장히 넓은 범위를 대상으로 트래킹이 가능하다는 장점이 있지만, 일반적으로 정밀도가 많이 떨어졌다.

이 정밀도 문제 때문에 항공 분야처럼 정밀도가 생명인 분야에서는 큰 도움이 되지 못하였다.

하지만 현재는 3m 이내로 오차 범위를 줄이기 위한 SBAS 기술이 연구되는 등 이전보다 굉장히 많은 발전을 이루고 있다.

이는 GPS 신호의 정지 궤도 위성을 통해 오차값 보정 작업을 거쳐서 가공된 신호를 사용하는 방식이다.

그 외에도 타국의 위성 항법 시스템이 계산한 값을 함께 사용하는 듀얼 주파수 GPS 시스템도 등장하여 'Apple Watch Ulta' 모델과 같은 하이엔드급 스마트워치에도 적용되고 있다.

하지만 VR 분야에서 GPS를 사용하는 방법에는 이보다 더 많은 애로사항이 존재한다.

GPS는 터널, 지하 시설과 같이 위성이 관측하기 어려운 곳에 추적 대상이 위치할 경우에는 정확도가 급격히 하락하거나 아예 먹통이 되기도 한다.

이 때문에 주로 실내에서 사용하는 VR 기기 특성상 GPS의 태생적인 한계에서부터 가로막히게 된다.

하지만 GPS를 통해 정말 '대략적인' 위치만 파악한 뒤, 다른 트래킹 시스템을 통해 상세한 정보를 수집해 활용할 수 있다면 얘기가 달라진다.

GPS가 체험자의 대략적인 위치(국가, 도시, 마을, 동네 등)를 파악하면 그 지역에서 체험자가 접할 수 있는 경험의 범주가 크게 줄어든다.

이후 SLAM 기법이나 광학식 트래킹 기술 등을 결합하여 체험자가 위치한 공간의 3D 지도를 만들고, 사물을 인지할 수 있도록 하면 체험자가 위치한 장소에 따라 VR 기기가 개인화된 정보를 제공하는 것이 가능할 것이다.

예를 들어 GPS가 체험자의 위치를 대전역으로 인지하였다면, VR 기기에 대전역에 대한 정보를 우선적으로 제공하고, SLAM 시스템은 사전에 전달받은 대전역에 대한 정보를 바탕으로 세밀한 3D 공간 지도를 형성한다.

이후 체험자가 성심당 가게에 들어섰다는 것을 광학 트래킹 기술이나 SLAM 시스템 등을 통해 VR 기기가 인지했다면, 체험자의 눈앞에 AR 그래픽으로 성심당에서 판매하고 있는 빵이나 케이크 메뉴를 표시해 줄 수 있을 것이다.

 


 


수고하셨습니다!


'Dev. Study Note > VR Introduction' 카테고리의 다른 글

머리 트래킹  (0) 2024.10.14
VR의 신체 트래킹 기술  (0) 2024.10.14
근육/신경 트래킹  (0) 2024.10.07
범위 탐색 트래킹  (0) 2024.10.06
관성 트래킹, 마이크로 전자 기계 시스템(MEMS)  (0) 2024.10.04
Comments