Table of Contents

문제 진단 및 보고

이 장에서는 AR 애플리케이션 구축 시 발생할 수 있는 문제, 주요 분석 방법, 문제 보고에 필요한 정보 수집 및 연락 경로에 대해 설명합니다.

AR 시나리오에서 문제 분석의 과제

AR 시나리오에서의 문제 분석은 몇 가지 고유한 과제가 있습니다.

입력의 불확실성

전통적인 애플리케이션에서 입력은 일반적으로 결정적인 클릭 또는 키보드 이벤트입니다. 반면 AR에서는 입력이 변화하는 물리적 환경에서 비롯되며, 이는 상당한 분석 난이도를 초래합니다. AR 애플리케이션은 물리적 환경과 결합하여 사용해야 하지만, 개발 및 테스트 시 물리적 환경에서 매번 동일한 입력을 얻을 수 없습니다. 동일한 경로로 이동하더라도 취득한 카메라 이미지, 가속도계, 자이로스코프 등의 센서 데이터는 변동이 발생할 수 있으며, 이는 추적 결과에 막대한 영향을 미칠 수 있습니다.

EasyAR에서는 EIF 파일 녹화 및 재생 기능을 제공하여 입력의 불확실성을 어느 정도 완화할 수 있지만, 알고리즘의 불확실성으로 인해 최종 추적 결과는 본질적으로 불확실합니다. 또한 EIF 녹화 데이터의 불완전한 커버리지, 조명 변화, 보행자 또는 차량에 의한 동적 오클루전 등도 실제 사용 시 추적 품질에 영향을 미칩니다.

알고리즘의 불확실성

AR의 핵심 알고리즘은 SLAM(Simultaneous Localization and Mapping)과 같은 시각 알고리즘입니다. 이러한 알고리즘은 본질적으로 확률적(probabilistic)이며 결정적(deterministic)이지 않습니다.

입력된 카메라 이미지에 뚜렷한 특징이 부족한 경우, 알고리즘은 과거 위치 자세와 가속도계, 자이로스코프 등의 센서 데이터를 사용하여 예측할 수 있습니다. 예측된 위치와 자세 결과는 시간이 지남에 따라 누적되어 드리프트(drift)를 발생시킵니다. 또한 각 예측 결과와 데이터 전달 시기, 기기 온도, CPU 주파수, 네트워크 전송 속도 등 외부 요인에 따라 동적으로 변화하며, 누적되면 동일한 입력이라도 여러 번 실행 시 결과가 크게 달라질 수 있습니다.

다양한 문제에 대한 분석 방법

다른 문제에는 서로 다른 분석 방법이 필요할 수 있습니다.

로그

프로그램 실행이 비정상적인 경우(예: 검은 화면, 정상적인 위치 추적 불가, 정상적인 추적 불가) 가장 기본적인 방법은 로그를 확인하고 오류 메시지가 있는지 검사하는 것입니다. EasyAR에서 생성된 로그는 모두 식별이 용이하도록 특정 태그를 사용합니다.

크래시

때때로 프로그램이 크래시될 수 있으며, 크래시 지점은 라이브러리 코드 또는 프로그램 자체 코드에 있을 수 있습니다. 크래시 발생 원인은 프로그램 자체 문제 또는 라이브러리 내 문제일 수 있습니다.

진동, 점프 등의 시각적 이상

센서 데이터 정확도 또는 알고리즘 적응 문제로 인해 위치 추적 진동 또는 점프가 발생할 수 있습니다. 이 경우 다른 기기에서 이 문제를 재현하려 시도하고, 스크린샷, 화면 녹화 및 EIF 파일 녹화를 수행해야 합니다.

플랫폼별 가이드

문제 진단 및 보고는 플랫폼과 밀접하게 연관되어 있습니다. 대상 플랫폼에 따라 다음 가이드를 참조하여 개발하십시오: