Nehéz objektum észlelése

Néha előfordulhat, hogy egy objektum nehezebben észlelhető. Például:

  • Ha egy nagy felület nem érhető el, mert az objektum falhoz van ásva
  • Ha egy objektum túl nagy, és túl sokáig tart a körüljárás
  • Ha az eszköz érzékelői nem észlelik az objektum felületét

Objektum lekérdezési értékeinek módosítása

Az Azure Object Anchors SDK néhány olyan mechanizmusa, amely segíthet ezekben a helyzetekben:

  • A ObjectQuery.MinSurfaceCoverage tulajdonság. Ez a minimálisan szükséges felületi lefedettségi arányt jelenti ahhoz, hogy egy objektumpéldány valódi pozitívnak minősüljön. 0 és 1,0 közötti tartományt tesz lehetővé (0% és 100%) között. Az alapértelmezett beállítás objektumoktól függően változik (minél nagyobb a felület, annál kisebb lesz a minimálisan szükséges lefedettség). Ez a legtöbb helyzetben működik, ahogy van. Ha azonban nehéz objektumokkal szembesül, a javaslat az, hogy csökkentse ennek a tulajdonságnak az értékét, hogy kevesebb felületi lefedettségre legyen szükség az objektum észleléséhez.

  • A ObjectQuery.MaxScaleChange tulajdonság. Ha az eredeti modell nem rendelkezik 1:1 skálával az észlelt objektum felé, ez a beállítás módosítható. 0 és 1,0 közötti tartományt tesz lehetővé (0% és 100%) között. A 0-s alapértelmezett beállítás letiltja a méretezési becslést, ami skálázási leképezést 1:1 igényel. Ha ezt a tulajdonságot 10%-ra állítja, például lehetővé tenné a skálázás becslését, és némi rugalmasságot biztosítana olyan esetekben, amikor a modell skálázása nem felel 1:1 meg az objektumnak.

  • A ObjectQuery.ExpectedMaxVerticalOrientationInDegrees tulajdonság. Ez a maximális szöget jelöli fokban, az objektum felfelé iránya és a gravitáció között. 0 és 180 közötti tartományba esik. Más szóval az objektum dőlésszögét jelöli az eredeti modellhez képest. Az alapértelmezett beállítás 3 fokkal növelhető, hogy nagyobb rugalmasságot biztosíthasson olyan esetekben, amikor az objektum dőlése nem egyezik az eredeti modellel.

  • A ObjectQuery.IsExpectedToBeStandingOnGroundPlane tulajdonság. Ez egy logikai érték, amely azt jelzi, hogy az objektum várhatóan a talajszinten áll-e vagy sem. Alapértelmezés szerint hamis. Igaz értékre kapcsolható, hogy felgyorsítsa az észlelést olyan esetekben, amikor az objektum a talajszinten van.

  • A ObjectQuery.SearchAreas tulajdonság. Az objektumok keresésére szolgáló régiók gyűjteményét jelöli. Ha szoros keresési területeket biztosít, miközben továbbra is lefedi az objektum egészét vagy nagy részét, javítja az észlelési sebességet és a pontosságot. Választhat a következők közül:

    • Egy orientált határolókeret a .ObjectSearchArea.FromOriented
    • Egy nézetmező a következő használatával ObjectSearchArea.FromFieldOfView: .
    • Egy hely, a következő használatával ObjectSearchArea.FromLocation: .
    • Egy gömb, a .ObjectSearchArea.FromSphere

További információ: ObjectQueryUnity vagy HoloLens C++/WinRT.

Következő lépések

Ebben a hibaelhárítási útmutatóban megtanulta, hogyan háríthatja el a nehezen észlelhető objektumok észlelését. Íme néhány kapcsolódó cikk: