이미지에 크기 추가

플랫폼별 가이드

ARCore의 증강 이미지 API를 사용하면 포스터 또는 제품 포장과 같은 사용자 환경에서 2D 이미지를 감지하고 보강할 수 있는 AR 앱을 빌드할 수 있습니다.

참조 이미지 집합을 제공합니다. ARCore는 컴퓨터 비전 알고리즘을 사용하여 각 이미지의 그레이 스케일 정보에서 특성을 추출하고 하나 이상의 증강 이미지 데이터베이스에 이러한 특성의 표현을 저장합니다.

런타임 시 ARCore는 사용자 환경의 평평한 표면에서 이러한 기능을 검색합니다. 이를 통해 ARCore는 전 세계의 이러한 이미지를 감지하고 이미지, 위치, 방향(제공되지 않은 경우)을 예측합니다.

기능

ARCore는 동시에 최대 20개의 이미지를 추적할 수 있습니다. ARCore는 동일한 이미지의 여러 인스턴스를 동시에 감지하거나 추적하지 않습니다.

각 증강 이미지 데이터베이스에는 최대 1,000개의 참조 이미지를 저장할 수 있습니다. 데이터베이스 수에는 제한이 없지만 데이터베이스는 언제든지 활성화될 수 있습니다.

런타임 시 증강 이미지 데이터베이스에 이미지를 추가할 수 있으며 데이터베이스당 이미지 한도가 최대 1,000개입니다. 네트워크 연결을 사용하여 이전에 만든 데이터베이스를 다운로드할 수 있습니다.

이미지를 추가할 때 감지할 이미지의 실제 크기를 제공할 수 있습니다. 이렇게 하면 이미지 감지 성능이 향상됩니다.

  • 실제 크기가 제공되지 않으면 ARCore는 크기를 추정하고 시간 경과에 따라 이 추정치를 미세 조정합니다.

  • 실제 크기가 제공된 경우 ARCore는 제공된 크기를 사용하고 이미지의 위치와 방향을 추정하며, 실제 크기나 실제 크기 간의 불일치를 무시합니다.

ARCore는 다음과 같은 이미지에 응답하고 이미지를 추적할 수 있습니다.

  • 벽에 걸려 있는 인쇄물이나 테이블 위에 놓인 잡지와 같이 고정된 이미지

  • 사용자가 손을 움직일 때 지나가는 버스의 광고나 평평한 물체의 이미지를 움직이는 이미지

ARCore는 이미지 추적을 시작하면 각 프레임의 이미지 위치와 방향에 관한 추정치를 제공합니다. ARCore는 더 많은 데이터를 수집하면서 이러한 추정치를 지속적으로 개선합니다.

이미지가 감지되면 ARCore는 사용자가 기기를 이동했기 때문에 이미지가 카메라 뷰에서 일시적으로 사라져도 계속 이미지 위치와 방향을 추적합니다. 이 경우 ARCore는 이미지의 위치와 방향이 정적이고 이미지 자체가 환경을 이동하지 않는다고 가정합니다.

모든 추적은 기기에서 실행됩니다. 인터넷 연결 없이도 이미지를 감지하고 추적할 수 있습니다.

요구사양

이미지는 다음 요건을 충족해야 합니다.

  • 처음에 감지할 카메라 프레임의 25% 이상을 채우세요.

  • 평평하게 합니다 (예: 병에 주름이 있거나 감싸지 않음).

  • 카메라를 선명하게 확인합니다. 부분적으로 가려졌거나 매우 비스듬한 각도에서 보거나 모션 블러로 인해 카메라가 너무 빨리 움직이면 안 됩니다.

CPU 사용률 및 성능 고려사항

이미 사용 설정된 ARCore 기능에 따라 증강 이미지를 사용 설정하면 ARCore의 CPU 사용률이 증가할 수 있습니다. AR 환경에 필요하지 않은 미사용 기능을 모두 사용 중지하는 것이 좋습니다. 이렇게 하면 앱에서 추가 CPU 주기를 사용할 수 있으며 열 성능과 배터리 수명이 개선됩니다.

자세한 내용은 성능 고려사항을 참조하세요.

권장사항

참조 이미지 선택 도움말

  • 이미지의 해상도는 최소 300x300픽셀이어야 합니다. 고해상도 이미지를 사용해도 성능이 개선되지 않습니다.
  • 참조 이미지는 PNG 또는 JPEG 파일 형식으로 제공할 수 있습니다.
  • 색상 정보는 사용되지 않습니다. 색상 및 이와 동일한 그레이 스케일 이미지는 모두 참조 이미지로 사용하거나 런타임에 사용자가 사용할 수 있습니다.
  • 압축이 높은 이미지는 사용하지 않습니다. 특성 추출을 방해합니다.
  • 기하학적 특징이 많거나 특징(예: 바코드, QR 코드, 로고 및 기타 라인 아트)이 적은 이미지는 피하세요. 인식 및 추적 성능이 저하될 수 있습니다.
  • 반복되는 이미지는 사용하지 마세요. 이렇게 하면 감지 및 추적 관련 문제가 발생할 수 있습니다.
  • ARCore SDK에 포함된 arcoreimg 도구를 사용하여 각 이미지의 0~100 점수를 확인할 수 있습니다. 품질평가점수는 75점 이상인 것이 좋습니다. 다음은 두 가지 예입니다.

    예시 이미지 1 예시 이미지 2
    점수: 0 점수: 100
    반복되는 기하학적 특징 해상도가 충분하며, 고유한 기능이 많습니다.

이미지 데이터베이스 만들기 도움말

  • Android용 arcoreimg 도구를 사용하여 이미지 데이터베이스 파일을 생성합니다. 이 도구는 Android 및 Android NDK 개발에만 사용할 수 있습니다. 이 SDK는 Unity SDK 및 ARCore Unreal 플러그인에 내장되어 있습니다.
  • 데이터베이스는 그레이 스케일 데이터에서 추출한 특성의 압축된 표현을 참조 이미지에 저장합니다. 각 이미지 항목의 크기는 약 6KB입니다.
  • 런타임 시 데이터베이스에 이미지를 추가하는 데 약 30ms가 걸립니다.
    • UI 스레드가 차단되지 않도록 작업자 스레드에 이미지를 추가합니다.
    • 또는 가능한 경우 ARCore SDK에 포함된 arcoreimg 도구를 사용하여 컴파일 시간에 이미지를 추가합니다.
  • 이미지의 예상 실제 크기를 알고 있다면 지정합니다. 이 정보는 특히 큰 물리적 이미지 (75cm 이상)의 감지 및 추적 성능을 개선합니다.
  • 사용되지 않는 이미지는 데이터베이스에 많이 두지 않는 것이 좋습니다. CPU 사용률 증가로 인해 시스템 성능에 약간의 영향을 미치기 때문입니다.

추적 최적화를 위한 팁

  • 이미지가 최초 위치에서 움직이지 않는 경우 (예: 벽에 부착된 포스터) 이미지에 앵커를 부착하여 추적 안정성을 높일 수 있습니다.
  • 초기 감지를 위해 실제 이미지는 카메라 이미지의 25% 이상을 차지해야 합니다. 사용자에게 실제 이미지를 카메라 프레임에 맞추도록 메시지를 표시할 수 있습니다.
  • 이미지의 추적 상태가 전체 추적이 될 때까지 이미지의 자세 및 크기를 사용하지 마세요. ARCore에서 이미지를 처음 감지하고 예상 실제 크기가 지정되지 않은 경우 추적 상태가 일시중지됩니다. 이는 ARCore가 이미지를 인식했지만 3D 공간에서 위치를 추정하기에 충분한 데이터를 수집하지 않았음을 의미합니다.