Table of Contents

EasyAR Plane Detection

EasyAR Plane Detection 은 EasyAR Motion Tracker 가 실행 중일 때 환경의 수평면을 자동으로 감지하여 가상 객체 배치 등의 기능을 제공합니다.

EasyAR Plane Detection 원리

EasyAR Plane Detection 은 EasyAR Motion Tracker 실행 과정에서 동기적으로 자동 수행되는 간단한 환경 이해 기능입니다. 시스템은 디바이스 카메라와 관성 센서에서 얻은 시공간 정보를 기반으로 실제 환경을 연속적으로 모델링하여 환경의 수평면을 식별하고 추적하며, 가상 객체 배치, 상호작용 정렬, 공간 이해를 위한 기본 지원을 제공합니다.

planedetection

구체적인 흐름은 다음과 같습니다.

  1. Motion tracking

    motion tracking 실행 중 EasyAR 는 RGB 카메라의 연속 이미지 프레임, 가속도계와 자이로스코프 데이터라는 두 가지 핵심 데이터를 지속적으로 획득합니다. 시스템은 시각-관성 융합 알고리즘으로 세계 좌표계에서 디바이스의 연속적인 6자유도 위치와 자세를 추정하여, 후속 공간 모델링과 평면 분석에 안정적이고 드리프트가 낮은 카메라 궤적을 제공합니다.

  2. Feature point 감지 및 삼각측량

    pose 추정을 기반으로 EasyAR 는 이미지 시퀀스에서 코너나 텍스처가 두드러진 영역 같은 안정적인 시각 feature point 를 추출하고 추적하며, 다중 뷰 기하 방법으로 이러한 feature point 를 삼각측량하여 3D 공간에서의 위치를 복원하고 로컬 3D point cloud 표현을 형성합니다.

  3. 평면 후보 영역 생성

    3D point cloud 를 얻은 뒤 시스템은 점군에 기하 분석을 수행하여 같은 평면에 속할 수 있는 점 집합을 찾습니다. 중력 방향과의 관계를 판단하여 시스템은 바닥, 책상면처럼 법선 벡터가 중력 방향과 거의 평행한 평면, 즉 수평면 후보를 구분할 수 있습니다.

  4. 평면 추적 및 감지

    EasyAR 는 연속 프레임에서 감지된 평면을 검증하고 업데이트합니다.

    • 새로 관측된 3D 점이 기존 평면 모델을 지원하는지 판단합니다.
    • 관측 일관성에 따라 평면 범위, 경계, confidence 를 동적으로 조정합니다.
    • 일시적으로 나타나거나 불안정한 평면 후보를 제거합니다. 기하 일관성과 시간 안정성이 모두 요구사항을 만족할 때만 결과가 “사용 가능한 평면”이 됩니다.
  5. 평면 좌표계와 가상 콘텐츠 정렬

    평면이 확인되면 plane detection 결과를 기반으로 더 사실적인 AR 효과를 구현할 수 있습니다.

    • 평면 위에 가상 객체를 배치하여 실제 스케일과 방향에 맞춰 정렬합니다.
    • ray casting, Hit Test 를 수행하여 화면 탭을 실제 평면 위치에 매핑합니다.
    • 객체 스냅, 이동, 가림 판단 등 평면 기반 상호작용 로직을 구현합니다.

평면과 motion tracking 시스템은 동일한 세계 좌표계를 공유하므로, 사용자가 디바이스를 움직일 때도 가상 객체는 안정적이고 연속적인 공간 일관성을 유지할 수 있습니다.

Plane detection 은 motion tracking 이 제공하는 안정적인 pose 와 공간 구조에 의존하며, plane detection 결과는 콘텐츠 배치와 상호작용 설계 보조처럼 환경 이해 능력을 강화하는 데도 사용할 수 있습니다. 둘은 함께 EasyAR 공간 인식 능력의 핵심 기반을 구성하지만 시스템 아키텍처에서는 서로 분리되어 있습니다. Plane detection 은 motion tracking 자체의 pose 추정 결과를 변경하지 않습니다.

모범 사례

사용자가 plane detection 을 사용할 때의 효과를 보장하려면 다음 실천 사항을 따르십시오.

  • 사용자가 천천히 움직이도록 안내하고, 가만히 있거나 빠르게 움직이거나 제자리에서 회전하지 않도록 합니다.
  • 텍스처가 없거나 단색, 거울면 등 시각적으로 인식하기 어려운 평면을 피합니다.
참고

Plane Detection 은 EasyAR 가 환경의 수평면을 인식하는 기능입니다. Surface Tracking 은 장면의 평면 구조를 감지하거나 인식하지 않으므로 구분해야 합니다.

더 읽기