Fästpunktsrelationer och vägsökning i Azure Spatial Anchors

Genom att använda fästpunktsrelationer kan du skapa anslutna fästpunkter i ett utrymme och sedan ställa frågor som dessa:

  • Finns det fästpunkter i närheten?
  • Hur långt bort är de?

Exempel

Du kan använda anslutna fästpunkter i sådana fall:

  • En arbetare måste utföra en uppgift som innebär att besöka olika platser i en industrifabrik. Fabriken har rumsliga fästpunkter på varje plats. En HoloLens- eller mobilapp hjälper till att vägleda arbetaren från en plats till en annan. Appen frågar först efter de närliggande spatiala fästpunkterna och vägleder sedan arbetaren till nästa plats. Appen visar visuellt den allmänna riktningen och avståndet till nästa plats.

  • Ett museum skapar rumsliga fästpunkter vid offentliga utställningar. Tillsammans bildar dessa ankare en timmes rundtur i museets viktiga offentliga skärmar. Vid en offentlig visning kan besökare öppna museets mixed reality-app på sin mobila enhet. Sedan pekar de sin telefonkamera runt utrymmet för att se den allmänna riktningen och avståndet till de andra offentliga skärmarna på turnén. När en användare går mot en offentlig visning uppdaterar appen den allmänna riktningen och avståndet för att vägleda användaren.

Konfigurera vägsökning

En app som använder siktlinjeriktning och avstånd mellan fästpunkter för att ge vägledning är att använda vägsökning. Vägsökning skiljer sig från turn-by-turn-navigering. I turn-by-turn-navigering styrs användarna runt väggar, genom dörrar och mellan våningar. Med vägsökning får användaren tips om målets allmänna riktning. Men slutsatsdragning eller kunskap om utrymmet hjälper också användaren att navigera genom strukturen till målet.

Om du vill skapa en metodsökningsupplevelse måste du först förbereda ett utrymme för upplevelsen och utveckla en app som användarna ska interagera med. Det här är de konceptuella stegen:

  1. Planera utrymmet: Bestäm vilka platser i utrymmet som ska ingå i sökfunktionen. I våra scenarier kan fabriksövervakaren eller museiarrangören bestämma vilka platser som ska ingå i sökupplevelsen.

  2. Anslut fästpunkter: Besök de valda platserna för att skapa rumsliga fästpunkter. Du kan göra detta i ett administratörsläge för slutanvändarappen eller i en helt annan app. Du ansluter eller relaterar varje fästpunkt till de andra. Tjänsten underhåller dessa relationer.

  3. Starta slutanvändarupplevelsen: Användare kör appen för att hitta en fästpunkt, som kan finnas på någon av de valda platserna. Din övergripande design bör fastställa de platser där användarna kan komma in i upplevelsen.

  4. Hitta närliggande fästpunkter: När användaren har hittat en fästpunkt kan appen begära närliggande fästpunkter. Den här proceduren returnerar en pose mellan enheten och dessa fästpunkter.

  5. Guide användaren: Appen kan använda posen till var och en av dessa fästpunkter för att ge vägledning om användarens allmänna riktning och avstånd. Till exempel kan kameraflödet i appen visa en ikon och pil som representerar varje potentiellt mål, som följande bild visar.

  6. Förfina vägledningen: När användaren går kan appen regelbundet beräkna en ny pose mellan enheten och målankaret. Appen fortsätter att förfina de vägledningstips som hjälper användaren att komma fram till målet.

    An example of how an app can show way-finding guidance

Anslut fästpunkter

För att skapa en metodsökningsupplevelse måste du först placera fästpunkterna på de valda platserna. I det här avsnittet antar vi att appens administratör redan har slutfört det här arbetet.

Anslut fästpunkter i en enda session

Så här ansluter du fästpunkter:

  1. Gå till den första platsen och skapa Anchor A med hjälp av en CloudSpatialAnchorSession.
  2. Gå till den andra platsen. Den underliggande MR/AR-plattformen spårar rörelsen.
  3. Skapa Anchor B med samma CloudSpatialAnchorSession. Fästpunkterna A och B är nu anslutna. Spatial Anchors-tjänsten upprätthåller den här relationen.
  4. Fortsätt proceduren för de återstående fästpunkterna.

Anslut fästpunkter i flera sessioner

Du kan ansluta spatiala fästpunkter över flera sessioner. Med den här metoden kan du skapa och ansluta några fästpunkter samtidigt och sedan skapa och ansluta fler fästpunkter senare.

Så här ansluter du fästpunkter över flera sessioner:

  1. Appen skapar vissa fästpunkter (fästpunkterna A och B) i en CloudSpatialAnchorSession.
  2. Vid en annan tidpunkt letar appen upp en av dessa fästpunkter (till exempel Anchor A) med hjälp av en ny CloudSpatialAnchorSession.
  3. Gå till en ny plats. Den underliggande plattformen för mixad verklighet eller förhöjd verklighet spårar rörelsen.
  4. Skapa Anchor C med samma CloudSpatialAnchorSession. Fästpunkterna A, B och C är nu anslutna. Spatial Anchors-tjänsten upprätthåller den här relationen.

Du kan fortsätta den här proceduren för fler fästpunkter och fler sessioner över tid.

Verifiera fästpunktsanslutningar

Appen kan kontrollera att två fästpunkter är anslutna genom att utfärda en fråga för närliggande fästpunkter, vilket du gör genom att ange NearAnchorCriteria på en CloudSpatialAnchorWatcher. När frågans resultat innehåller målankaret verifieras fästpunktsanslutningen. Om fästpunkterna inte är anslutna kan appen försöka ansluta dem igen.

Här följer några orsaker till varför fästpunkter inte kan ansluta:

  • Den underliggande plattformen för mixad verklighet eller förhöjd verklighet förlorade spårning under processen med att ansluta fästpunkter.
  • På grund av ett nätverksfel under kommunikationen med Spatial Anchors-tjänsten kunde inte fästpunktsanslutningen bevaras.

Hitta exempelkod

Information om hur du hittar exempelkod som visar hur du ansluter fästpunkter och gör närliggande frågor finns i Exempelappar för Spatial Anchors.