Dodaj wymiar do obrazów

Przewodniki dotyczące poszczególnych platform

Interfejsy Augmented Images API w ARCore umożliwiają tworzenie aplikacji AR, które wykrywają rozszerzania zdjęć 2D w środowisku użytkownika, takich jak plakaty czy produkt. sposób prezentacji.

Musisz dostarczyć zestaw obrazów referencyjnych. ARCore wykorzystuje algorytm rozpoznawania obrazów wyodrębniania cech z informacji w skali szarości na każdym zdjęciu oraz przedstawienie tych cech w co najmniej 1 bazie danych obrazów rozszerzonych.

W czasie działania ARCore szuka tych obiektów na płaskich powierzchniach dla środowiska. Dzięki temu ARCore może wykrywać te zdjęcia i szacować, ich pozycji, orientacji i rozmiaru, jeśli ich brak.

Możliwości

ARCore może śledzić do 20 obrazów jednocześnie. ARCore nie będzie jednocześnie wykrywania lub śledzenia wielu wystąpień tego samego obrazu.

Każda baza danych obrazów rozszerzonych może przechowywać maksymalnie 1000 informacji referencyjnych obrazów. Nie ma ograniczeń co do liczby baz danych, ale tylko do jednej bazy danych mogą być aktywne w każdej chwili.

Obrazy można dodawać do bazy danych obrazów rozszerzonych w czasie działania maksymalnie Limit 1000 obrazów na bazę danych. Można pobrać wcześniej utworzone baz danych przez połączenie sieciowe.

Podczas dodawania obrazu możesz podać jego fizyczny rozmiar do wykrycia. Zwiększy to skuteczność wykrywania obrazów.

  • Jeśli nie podasz rozmiaru fizycznego, ARCore oszacuje go i dostosuje szacowanie w czasie.

  • Jeśli podasz rozmiar fizyczny, ARCore użyje podanego rozmiaru i szacunkowych wartości pozycji i orientacji obrazu, bez uwzględniania rozbieżności widoczne lub rzeczywiste rozmiary oraz podany rozmiar fizyczny.

ARCore może reagować na obrazy, które:

  • zdjęcia, które są stałe, np. odbitka na ścianie lub czasopismo na stole

  • ruchome obrazy, np. reklama przejeżdżającego autobusu lub zdjęcie na płaskiej powierzchni; trzymany przez użytkownika obiekt, gdy porusza rękami.

Gdy ARCore zacznie śledzić obraz, przedstawia szacowaną pozycję obrazu i orientacji każdej klatki. ARCore stale poprawia te szacunki, zbiera więcej danych.

Po wykryciu obrazu ARCore kontynuuje „śledzenie” położenie obrazu nawet wtedy, gdy obraz tymczasowo przesuwa się poza pole widzenia aparatu. ponieważ użytkownik przeniósł urządzenie. W takim przypadku ARCore zakłada, że Położenie i orientacja obrazu są statyczne, a obraz nie jest sam. poruszanie się po otoczeniu.

Śledzenie odbywa się na urządzeniu. Do wykrywania nie jest wymagane połączenie z internetem i monitorowania obrazów.

Wymagania

Obrazy muszą:

  • Wypełnij co najmniej 25% kadru kamery, która ma być wykrywana na początku.

  • być płaska (np. nie jest zagnieżdżona ani owinięta butelką);

  • Stań w miejscu, w którym kamera jest dobrze widoczna. Nie powinny być częściowo zasłonięte, widoczne pod bardzo skośnym lub oglądanym, gdy kamera porusza się zbyt szybko ze względu na lub rozmycie ruchu.

Kwestie dotyczące wykorzystania i wydajności procesora

W zależności od tego, które funkcje ARCore są już włączone, włączenie rozszerzenia rozszerzonego Obrazy mogą zwiększyć wykorzystanie procesora przez ARCore. Rozważ wyłączenie wszystkich nieużywanych funkcje w czasach, gdy AR nie wymaga ich. Dzięki temu udostępnij aplikacji dodatkowe cykle procesora i popraw temperaturę wydajność i żywotność baterii.

Więcej informacji: uwagi dotyczące wydajności aplikacji.

Sprawdzone metody

Wskazówki dotyczące wyboru obrazów referencyjnych

  • Rozdzielczość obrazu powinna wynosić co najmniej 300 x 300 pikseli. Korzystanie z obrazów w wysokiej rozdzielczości nie zwiększa wydajności.
  • Obrazy referencyjne mogą być dostarczane w formacie pliku PNG lub JPEG.
  • Informacje o kolorze nie są używane. Obrazy kolorowe i odpowiadające im obrazy w skali szarości mogą być używane jako obrazy referencyjne lub przez użytkowników w czasie działania.
  • Unikaj obrazów mocno skompresowanych, ponieważ zakłóca to działanie funkcji. wyodrębniania.
  • Unikaj zdjęć zawierających dużą liczbę obiektów geometrycznych lub bardzo kilka elementów (np. kodów kreskowych, QR, logo i innych grafik), spowoduje słabą skuteczność wykrywania i śledzenia.
  • Unikaj powtarzających się obrazów, ponieważ może to powodować problemy z wykrywaniem oraz śledzeniem.
  • Aby uzyskać wynik jakości, użyj narzędzia arcoreimg zawartego w pakiecie ARCore SDK od 0 do 100 dla każdego obrazu. Zalecamy wynik jakości na poziomie co najmniej 75. Poniżej przedstawiamy dwa przykłady:

    Przykładowy obraz 1 Przykładowy obraz 2
    Wynik: 0 Wynik: 100
    zawiera powtarzające się obiekty geometryczne wystarczające rozwiązanie; zawiera wiele unikalnych cech

Wskazówki dotyczące tworzenia bazy danych zdjęć

  • Użyj narzędzia arcoreimg na Androida aby wygenerować plik bazy danych zdjęć. To narzędzie jest dostępne tylko na Androidzie i programowania Android NDK. Jest wbudowany w pakiet Unity SDK i ARCore Nieprawdziwa wtyczka.
  • Baza danych przechowuje skompresowaną reprezentację wyodrębnionych funkcji niż dane skali szarości na obrazach referencyjnych. Każdy wpis dotyczący obrazu zajmuje około 6 KB.
  • Dodanie obrazu do bazy danych w czasie działania trwa około 30 ms.
    • Dodaj obrazy w wątku instancji roboczej, aby uniknąć blokowania wątku UI.
    • Jeśli to możliwe, dodaj obrazy podczas kompilowania za pomocą narzędzia arcoreimg do pakietu ARCore SDK.
  • Jeśli znasz oczekiwany fizyczny rozmiar obrazu, określ go. Ten tych danych poprawia wykrywanie i śledzenie skuteczności, zwłaszcza duże fizyczne obrazy (ponad 75 cm).
  • Unikaj pozostawiania w bazie danych wielu nieużywanych obrazów, ponieważ występuje wpływa na wydajność systemu ze względu na zwiększone wykorzystanie procesora.

Porady, jak optymalizować śledzenie

  • Jeśli obraz w ogóle nie przesuwa się z pozycji początkowej (na przykład plakatu na ścianie), możesz dołączyć kotwicę, do obrazu, aby zwiększyć stabilność śledzenia.
  • Fizyczne zdjęcie musi zajmować co najmniej 25% obrazu aparatu przez jego wykrywania. Możesz prosić użytkowników o dopasowanie fizycznego obrazu do ramki kamery.
  • Nie używaj szacowanej pozycji i rozmiaru obrazu do czasu jego śledzenia w tym stanie jest w pełni śledzone. Gdy obraz zostanie po raz pierwszy wykryty przez bez określenia oczekiwanego rozmiaru fizycznego, stan śledzenia ARCore będzie zostaną wstrzymane. Oznacza to, że ARCore rozpoznaje obraz, ale ma nie zebrał wystarczającej ilości danych, aby oszacować jego lokalizację w przestrzeni 3D.