Hướng dẫn dành cho nhà phát triển Hình ảnh tăng cường cho Unity

Tìm hiểu cách sử dụng Hình ảnh tăng cường trong ứng dụng của riêng bạn.

Điều kiện tiên quyết

Đảm bảo bạn nắm được các khái niệm cơ bản về thực tế tăng cường và cách định cấu hình phiên ARCore trước khi tiếp tục.

Xây dựng và chạy ứng dụng mẫu

Tạo một dự án mới trong Unity dựa trên quickstart.

Khi tạo ứng dụng, hãy nhớ thêm cảnh hình ảnh tăng cường nằm trong Assets/GoogleARCore/Examples/AugmentedImage/Scenes/.

Đảm bảo thiết bị của bạn đã được kết nối với máy và sau đó nhấp vào Tạo và chạy. Unity xây dựng dự án của bạn thành một APK Android, cài đặt dự án trên thiết bị và khởi chạy dự án đó.

Khi bạn di chuyển thiết bị, ứng dụng sẽ tự động phát hiện và theo dõi hình ảnh từ tập hợp hình ảnh tham chiếu nằm trong Assets/GoogleARCore/Examples/AugmentedImage/Images/.

Tạo tệp cơ sở dữ liệu

Trong cửa sổ Project (Dự án), chọn tập hợp hình ảnh tham chiếu mong muốn (PNG hoặc JPG), sau đó nhấp chuột phải rồi chọn Create > Google ARCore > AenhancedImageDatabase.

Cơ sở dữ liệu hình ảnh mới được tạo trong cùng thư mục với hình ảnh tham chiếu.

Cửa sổ Inspector (Trình kiểm tra) cho thấy hình ảnh trong cơ sở dữ liệu và điểm chất lượng hình ảnh. Hệ thống có thể khó phát hiện hình ảnh có điểm chất lượng dưới 75.

Bạn có thể tuỳ ý chỉ định chiều rộng vật lý (tính bằng mét) cho mỗi hình ảnh. Nếu bạn làm như vậy, ARCore có thể ước tính vị trí của hình ảnh thực trong thời gian chạy ngay khi ARCore phát hiện hình ảnh thực tế mà không yêu cầu người dùng di chuyển thiết bị để xem hình ảnh thực tế từ các góc nhìn khác nhau.

Sử dụng tệp cơ sở dữ liệu

  1. Trong cửa sổ Dự án, hãy chuyển đến Assets/GoogleARCore/Examples/AugmentedImage/Configurations và mở AugmentedImagesSessionConfig.

  2. Trong Inspector (Trình kiểm tra), nhấp vào hộp bên cạnh A tổng hợp Image Database và chọn tệp cơ sở dữ liệu mà bạn đã tạo.

Tải AenhancedImage

Hãy xem AugmentedImageExampleController.cs, nằm trong Assets/GoogleARCore/Examples/AugmentedImage/Scripts, để biết ví dụ về cách lấy thông tin có thể theo dõi:

Session.GetTrackables<AugmentedImage>(myList, TrackableQueryFilter.Updated);

Hỗ trợ các trường hợp sử dụng khác nhau

Khi phát hiện Hình ảnh tăng cường, ARCore sẽ tạo một Trackable cho Hình ảnh tăng cường đó và đặt TrackingState thành TrackingAugmentedImageTrackingMethod thành FullTracking. Khi hình ảnh được theo dõi chuyển ra khỏi chế độ xem máy ảnh, ARCore sẽ thay đổi AugmentedImageTrackingMethod thành LastKnownPose trong khi vẫn tiếp tục cung cấp hướng và vị trí của hình ảnh.

Ứng dụng của bạn nên sử dụng các bảng liệt kê khác nhau tuỳ thuộc vào trường hợp sử dụng dự kiến.

  • Hình ảnh cố định. Hầu hết các trường hợp sử dụng liên quan đến hình ảnh được khắc phục tại chỗ (nghĩa là không nên di chuyển) chỉ cần sử dụng TrackingState để xác định xem hình ảnh đã được phát hiện hay chưa và vị trí của hình ảnh có được xác định hay không. Bạn có thể bỏ qua AugmentedImageTrackingMethod.

  • Di chuyển hình ảnh. Nếu ứng dụng của bạn cần theo dõi hình ảnh chuyển động, hãy sử dụng cả TrackingStateAugmentedImageTrackingMethod để xác định xem hình ảnh đã được phát hiện hay chưa và liệu có xác định được vị trí của hình ảnh hay không.

Trường hợp sử dụng Hình ảnh cố định Đang di chuyển hình ảnh
Ví dụ: Áp phích treo trên tường Quảng cáo bên cạnh xe buýt
Tư thế này có thể
được coi là hợp lệ khi
TrackingState == Tracking TrackingState == Tracking

AugmentedImageTrackingMethod == FullTracking