자체 앱에서 증강 이미지를 사용하는 방법을 알아봅니다.
기본 요건
계속하기 전에 기본 AR 개념 및 ARCore 세션 구성 방법을 이해해야 합니다.
샘플 앱 빌드 및 실행
빠른 시작을 기준으로 Unity에서 새 프로젝트를 만듭니다.
앱을 빌드할 때 Assets/GoogleARCore/Examples/AugmentedImage/Scenes/
에 있는 증강된 이미지 장면을 포함해야 합니다.
기기가 컴퓨터에 연결되어 있는지 확인한 후 빌드 및 실행을 클릭합니다. Unity에서는 프로젝트를 Android APK로 빌드하고 기기에 설치하고 실행합니다.
기기를 움직이면 앱이 Assets/GoogleARCore/Examples/AugmentedImage/Images/
에 있는 참조 이미지 집합에서 이미지를 자동으로 감지하여 추적합니다.
데이터베이스 파일 만들기
Project 창에서 원하는 참조 이미지 집합 (PNG 또는 JPG)을 선택한 다음 마우스 오른쪽 버튼으로 클릭하고 Create > Google ARCore > AugmentedImageDatabase를 선택합니다.
참조 이미지와 동일한 폴더에 새 이미지 데이터베이스가 생성됩니다.
Inspector 창에 데이터베이스의 이미지와 이미지 품질평가점수가 표시됩니다. 시스템에서 품질평가점수가 75 미만인 이미지를 감지하는 데 어려움을 겪을 수 있습니다.
필요에 따라 각 이미지의 실제 너비를 미터 단위로 지정할 수 있습니다. 이렇게 하면 ARCore는 사용자가 물리적 이미지를 다른 시점에서 보기 위해 기기를 옮길 필요 없이 런타임에서 실제 이미지를 감지하자마자 런타임에 물리적 이미지의 포즈를 추정할 수 있습니다.
데이터베이스 파일 사용
Project 창에서
Assets/GoogleARCore/Examples/AugmentedImage/Configurations
로 이동하여AugmentedImagesSessionConfig
를 엽니다.Inspector에서 증강 이미지 데이터베이스 옆의 체크박스를 클릭하고 생성한 데이터베이스 파일을 선택합니다.
증강 이미지 가져오기
추적 가능한 항목의 예는 Assets/GoogleARCore/Examples/AugmentedImage/Scripts
에 있는 AugmentedImageExampleController.cs
를 참고하세요.
Session.GetTrackables<AugmentedImage>(myList, TrackableQueryFilter.Updated);
다양한 사용 사례 지원
ARCore는 증강 이미지를 감지하면 증강 이미지의 Trackable
를 생성하고 TrackingState
를 Tracking
로, AugmentedImageTrackingMethod
를 FullTracking
으로 설정합니다. 추적된 이미지가 카메라 뷰에서 벗어나면 ARCore는 AugmentedImageTrackingMethod
를 LastKnownPose
로 변경하는 동시에 이미지의 방향과 위치를 제공합니다.
의도된 사용 사례에 따라 앱에서 이러한 열거자를 다르게 사용해야 합니다.
고정 이미지 제자리에 고정된 이미지(즉, 움직이지 않을 것임)와 관련된 대부분의 사용 사례에서는
TrackingState
를 사용하여 이미지가 감지되었는지와 위치를 알 수 있는지만 확인할 수 있습니다.AugmentedImageTrackingMethod
은(는) 무시해도 됩니다.이미지 이동. 앱에서 움직이는 이미지를 추적해야 하는 경우
TrackingState
과AugmentedImageTrackingMethod
을 모두 사용하여 이미지가 감지되었는지와 이미지 위치를 알 수 있는지 확인합니다.
사용 사례 | 고정 이미지 | 이미지 이동 중 |
---|---|---|
예 | 벽에 걸린 포스터 | 버스 옆면에 있는 광고 |
포즈가 유효한 경우 |
TrackingState == Tracking |
TrackingState == Tracking
및 AugmentedImageTrackingMethod == FullTracking
|