Google cam kết nâng cao công bằng chủng tộc cho các cộng đồng Da đen. Xem làm thế nào.
Trang này được dịch bởi Cloud Translation API.
Switch to English

Hình ảnh tăng cường cho Android

Các API hình ảnh tăng cường trong ARCore cho phép bạn xây dựng các ứng dụng AR có thể phát hiện và tăng cường hình ảnh 2D trong môi trường của người dùng, chẳng hạn như áp phích hoặc bao bì sản phẩm.

Bạn cung cấp một tập hợp các hình ảnh tham khảo. ARCore sử dụng thuật toán thị giác máy tính để trích xuất các tính năng từ thông tin thang độ xám trong mỗi hình ảnh và lưu trữ biểu diễn của các tính năng này trong một hoặc nhiều cơ sở dữ liệu Hình ảnh tăng cường.

Trong thời gian chạy, ARCore tìm kiếm các tính năng này trên các bề mặt phẳng trong môi trường của người dùng. Điều này cho phép ARCore phát hiện những hình ảnh này trên thế giới và ước tính vị trí, hướng và kích thước của chúng nếu không được cung cấp.

Năng lực

ARCore có thể theo dõi đồng thời 20 hình ảnh. ARCore sẽ không đồng thời phát hiện hoặc theo dõi nhiều trường hợp của cùng một hình ảnh.

Mỗi cơ sở dữ liệu hình ảnh tăng cường có thể lưu trữ thông tin lên đến 1.000 hình ảnh tham chiếu. Không có giới hạn về số lượng cơ sở dữ liệu, nhưng chỉ một cơ sở dữ liệu có thể hoạt động tại bất kỳ thời điểm nào.

Hình ảnh có thể được thêm vào cơ sở dữ liệu Hình ảnh tăng cường trong thời gian chạy, lên đến giới hạn 1.000 hình ảnh cho mỗi cơ sở dữ liệu. Có thể tải xuống cơ sở dữ liệu đã tạo trước đó bằng kết nối mạng. Xem hướng dẫn dành cho nhà phát triển để biết chi tiết.

Khi thêm hình ảnh, bạn có thể cung cấp kích thước vật lý của hình ảnh để phát hiện. Làm như vậy sẽ cải thiện hiệu suất phát hiện hình ảnh.

  • Nếu không có kích thước vật lý nào được cung cấp, ARCore sẽ ước tính kích thước và tinh chỉnh ước tính này theo thời gian.

  • Nếu kích thước vật lý được cung cấp, ARCore sẽ sử dụng kích thước được cung cấp và ước tính vị trí và hướng của hình ảnh, bỏ qua bất kỳ sự khác biệt nào giữa kích thước rõ ràng hoặc thực tế và kích thước vật lý được cung cấp.

ARCore có thể phản hồi và theo dõi các hình ảnh:

  • Hình ảnh được cố định tại chỗ, chẳng hạn như bản in treo trên tường hoặc tạp chí trên bàn

  • Hình ảnh chuyển động, chẳng hạn như quảng cáo trên một chuyến xe buýt đang chạy qua hoặc hình ảnh trên một vật thể phẳng được người dùng cầm khi họ di chuyển tay.

Khi ARCore bắt đầu theo dõi một hình ảnh, nó cung cấp các ước tính về vị trí hình ảnh và hướng của mỗi khung hình. ARCore liên tục tinh chỉnh các ước tính này khi thu thập nhiều dữ liệu hơn.

Khi một hình ảnh được phát hiện, ARCore tiếp tục "theo dõi" vị trí và hướng của hình ảnh, ngay cả khi hình ảnh tạm thời di chuyển ra khỏi chế độ xem camera do người dùng đã di chuyển thiết bị của họ. Khi làm như vậy, ARCore giả định rằng vị trí và hướng của hình ảnh là tĩnh và hình ảnh không tự di chuyển trong môi trường.

Sử dụng TrackingMethod để xác định xem ARCore hiện đang theo dõi hình ảnh dựa trên vị trí hình ảnh hiện được phát hiện trong chế độ xem camera ( FULL_TRACKING ) hay dựa trên vị trí được phát hiện gần đây nhất trên thế giới ( LAST_KNOWN_POSE ).

Tất cả theo dõi diễn ra trên thiết bị. Không cần kết nối internet để phát hiện và theo dõi hình ảnh.

Yêu cầu

Hình ảnh phải :

  • Lấp đầy ít nhất 25% khung máy ảnh được phát hiện ban đầu.

  • Phải phẳng (ví dụ, không bị nhăn hoặc bị quấn quanh chai).

  • Ở trong tầm nhìn rõ ràng của máy ảnh. Chúng không được che khuất một phần, nhìn ở góc xiên cao hoặc được nhìn khi máy ảnh đang di chuyển quá nhanh do chuyển động mờ.

Sử dụng CPU và cân nhắc hiệu suất

Tùy thuộc vào các tính năng ARCore nào đã được bật, việc bật Hình ảnh tăng cường có thể làm tăng hiệu suất sử dụng CPU của ARCore. Cân nhắc tắt bất kỳ tính năng không sử dụng nào trong thời gian trải nghiệm AR của bạn không yêu cầu chúng. Điều này sẽ cung cấp thêm chu kỳ CPU cho ứng dụng của bạn, đồng thời cải thiện hiệu suất nhiệt và tuổi thọ pin.

Để biết thêm thông tin, hãy xem cân nhắc về hiệu suất .

Thực hành tốt nhất

Mẹo chọn hình ảnh tham khảo

  • Độ phân giải của hình ảnh ít nhất phải là 300 x 300 pixel . Sử dụng hình ảnh có độ phân giải cao không cải thiện hiệu suất.
  • Hình ảnh tham chiếu có thể được cung cấp ở định dạng tệp PNG hoặc JPEG .
  • Thông tin màu không được sử dụng . Cả hình ảnh màu và thang độ xám tương đương đều có thể được sử dụng làm hình ảnh tham chiếu hoặc bởi người dùng trong thời gian chạy.
  • Tránh hình ảnh có độ nén nặng vì điều này cản trở việc trích xuất đối tượng địa lý.
  • Tránh những hình ảnh có chứa một số lượng lớn các tính năng hình học hoặc rất ít tính năng (ví dụ: mã vạch, mã QR, biểu trưng và nghệ thuật đường kẻ khác) vì điều này sẽ dẫn đến hiệu suất phát hiện và theo dõi kém.
  • Tránh hình ảnh có các mẫu lặp lại vì điều này cũng có thể gây ra các vấn đề với việc phát hiện và theo dõi.
  • Sử dụng công cụ arcoreimg có trong ARCore SDK để nhận điểm chất lượng từ 0 đến 100 cho mỗi hình ảnh. Chúng tôi đề xuất điểm chất lượng ít nhất là 75 . Đây là hai ví dụ:

    Hình ảnh ví dụ 1 Hình ảnh ví dụ 2
    Điểm: 0 Điểm: 100
    chứa các tính năng hình học lặp lại đủ độ phân giải; chứa nhiều tính năng độc đáo

Mẹo để tạo cơ sở dữ liệu hình ảnh

  • Cơ sở dữ liệu lưu trữ một biểu diễn nén của các tính năng được trích xuất từ ​​dữ liệu thang độ xám trong các hình ảnh tham chiếu. Mỗi mục nhập hình ảnh chiếm khoảng 6 KB.
  • Mất khoảng 30 ms để thêm hình ảnh vào cơ sở dữ liệu trong thời gian chạy.
    • Thêm hình ảnh trên chuỗi công nhân để tránh chặn chuỗi giao diện người dùng.
    • Hoặc, nếu có thể, hãy thêm hình ảnh vào lúc biên dịch bằng cách sử dụng công cụ arcoreimg có trong ARCore SDK.
  • Nếu bạn biết kích thước vật lý mong đợi của một hình ảnh, hãy chỉ định nó. Thông tin này cải thiện hiệu suất phát hiện và theo dõi, đặc biệt đối với hình ảnh vật lý lớn (trên 75 cm).
  • Tránh giữ nhiều hình ảnh không sử dụng trong cơ sở dữ liệu vì có một chút ảnh hưởng đến hiệu suất hệ thống do mức sử dụng CPU tăng lên.

Mẹo để tối ưu hóa theo dõi

  • Nếu hình ảnh của bạn sẽ không bao giờ di chuyển khỏi vị trí ban đầu (ví dụ: áp phích dán trên tường), bạn có thể gắn một liên kết chung vào hình ảnh để tăng độ ổn định theo dõi.
  • Hình ảnh vật lý phải chiếm ít nhất 25% hình ảnh máy ảnh để phát hiện ban đầu. Bạn có thể nhắc người dùng điều chỉnh hình ảnh thực trong khung máy ảnh của họ bằng nội dung FitToScan.png . Xem hướng dẫn dành cho nhà phát triển để biết ví dụ về lời nhắc này.
  • Không sử dụng ước tính tư thế và kích thước của hình ảnh cho đến khi trạng thái theo dõi của hình ảnh là FULL_TRACKING . Khi một hình ảnh được phát hiện ban đầu bởi ARCore và không có kích thước vật lý dự kiến ​​nào được chỉ định, trạng thái theo dõi của hình ảnh đó sẽ bị PAUSED . Điều này có nghĩa là ARCore đã nhận ra hình ảnh, nhưng chưa thu thập đủ dữ liệu để ước tính vị trí của nó trong không gian 3D.