Table of Contents

EasyAR Surface Tracking

EasyAR Surface Tracking 은 공간에서 선택된 표면 점에 대한 디바이스의 위치와 자세를 지속적으로 tracking 하는 경량 기능을 구현합니다. 소형 AR 인터랙티브 게임, AR 숏비디오 촬영, 제품 배치 전시 등의 시나리오에 사용할 수 있습니다.

EasyAR Surface Tracking 원리

실제 공간과 가상 공간 사이의 대응 관계를 구축하기 위해 Surface Tracking 은 디바이스 카메라와 inertial measurement unit 의 데이터를 사용합니다.

Surface Tracking 은 먼저 카메라 이미지로 환경 표면의 뚜렷한 feature 를 인식합니다. 반드시 평면 위일 필요는 없습니다. 그런 다음 연속 이미지 프레임과 센서 데이터를 사용해 이러한 feature 의 위치를 tracking 합니다. 시작 시 가상 객체는 기본적으로 화면 중앙 근처의 feature point 표면에 배치되며, 가상 객체의 위치를 세계 좌표계의 원점으로 간주합니다.

가상 객체도 해당 feature point 위치에 배치되고 지속적으로 tracking 됩니다. 디바이스 이동 중 카메라 이미지의 feature 깊이가 계속 업데이트되고, 가상 객체는 해당 feature point 표면에 계속 밀착됩니다. 가상 객체에 해당하는 feature point 가 손실되면 시스템은 자동으로 새 feature point 를 선택하고 그 feature point 에 대한 디바이스 위치와 자세를 출력합니다.

참고

Surface Tracking 의 feature 손실은 가상 객체 위치 drift 를 유발할 수 있습니다. 고정 위치를 지속 tracking 해야 한다면 Motion Tracking 사용을 권장합니다.

Surface Tracking 과 Motion Tracking 비교

Motion Tracking 과 비교하면 Surface Tracking 은 디바이스 캘리브레이션이 필요 없고 더 많은 기종을 지원하며 initialization 없이 실행할 수 있습니다. 하지만 Surface Tracking 은 실제 스케일을 제공하지 않고, 하나의 가상 객체만 배치할 수 있으며, 가상 객체의 바닥을 좌표계 원점에 배치해야 합니다.

비교 항목 Surface Tracking Motion Tracking
디바이스 캘리브레이션 요구사항 디바이스 캘리브레이션 불필요 디바이스 캘리브레이션 필요
기종 지원 범위 더 많은 기종 지원 하드웨어 성능 요구가 높고 지원 기종이 상대적으로 제한적
공간 스케일 실제 세계 스케일을 제공하지 않음 실제 스케일 pose 제공
initialization 흐름 initialization 없이 실행 가능 일반적으로 initialization 과정 필요
가상 객체 수 하나의 가상 객체 배치만 지원 여러 가상 객체 지원 가능
가상 객체 배치 제약 가상 객체 바닥을 좌표계 원점에 배치해야 함 가상 객체를 임의의 공간 위치에 배치 가능
적용 시나리오 경량 AR 표시, 빠른 체험 고정밀 AR, 공간 상호작용, 내비게이션과 측정
참고

Surface Tracking 은 가상 객체가 환경 표면에 최대한 밀착되도록 유지합니다. 이 표면은 울퉁불퉁한 물체 표면이나 평평한 바닥/벽일 수 있지만, 환경에 평면이 존재하는지 감지하지는 않습니다. 환경의 수평면 또는 수직면 감지가 필요하면 Plane Detection을 참조하십시오.

더 읽기