Een moeilijk object detecteren

Soms kan een object moeilijker te detecteren zijn. Bijvoorbeeld:

  • Wanneer een groot surface area niet toegankelijk is omdat het object zich tegen een wand
  • Wanneer een object te groot is en het te lang duurt om er omheen te lopen
  • Wanneer het oppervlak van het object niet wordt gedetecteerd door de apparaatsensoren

Objectquerywaarden aanpassen

Enkele mechanismen die worden aangeboden door de Azure Object Anchors SDK die u in deze situaties kunnen helpen, zijn:

  • De ObjectQuery.MinSurfaceCoverage eigenschap . Het vertegenwoordigt de minimale vereiste dekkingsverhouding voor de oppervlakte om een object-instantie als een echt positief te beschouwen. Hiermee kunt u een bereik van 0 tot 1,0 (vertegenwoordigen 0% tot 100%). De standaardinstelling varieert tussen objecten (hoe groter de surface area, hoe kleiner de minimale vereiste dekking is). Het werkt in de meeste gevallen zoals het is. Maar wanneer u te maken krijgt met moeilijke objecten, is het aan te geven dat u de waarde voor deze eigenschap verlaagt, zodat er minder oppervlaktedekking nodig is om het object te detecteren.

  • De ObjectQuery.MaxScaleChange eigenschap . Als het oorspronkelijke model geen schaal heeft ten opzichte van het object dat wordt gedetecteerd, kan 1:1 deze instelling worden aangepast. Hiermee kunt u een bereik van 0 tot 1,0 (vertegenwoordigen 0% tot 100%). Met de standaardinstelling op 0 wordt de schatting van de schaal uitgeschakeld, waarvoor een 1:1 schaaltoewijzing is vereist. Als u deze eigenschap bijvoorbeeld instelt op 10%, kan de schaalschatting worden ingeschakeld en is er enige flexibiliteit mogelijk in gevallen waarin de modelschaal niet overeenkomt met 1:1 het -object.

  • De ObjectQuery.ExpectedMaxVerticalOrientationInDegrees eigenschap . Het vertegenwoordigt de maximale hoek, in graden, tussen de richting omhoog van het object en de ernst. Deze varieert van 0 tot 180. Met andere woorden, het vertegenwoordigt de inclinatie van het object ten opzichte van het oorspronkelijke model. De standaardinstelling, op 3 graden, kan worden verhoogd om meer flexibiliteit te bieden in gevallen waarin de object inclinatie niet met het oorspronkelijke model overeen komt.

  • De ObjectQuery.IsExpectedToBeStandingOnGroundPlane eigenschap . Het is een Booleaanse booleaanse notatie die aankondigt of het object naar verwachting op de grond staat of niet. De standaardwaarde is false. Het kan worden overgeschakeld naar true om detectie te versnellen voor gevallen waarin het object zich op de grondniveau belandt.

  • De ObjectQuery.SearchAreas eigenschap . Het vertegenwoordigt een verzameling regio's om naar objecten te zoeken. Het bieden van nauwe zoekgebieden, terwijl het hele object of het grootste deel van het object nog steeds wordt bedekt, verbetert de detectiesnelheid en nauwkeurigheid. U kunt kiezen uit:

    • Een georiĆ«nteerd begrensingsvak, met behulp van ObjectSearchArea.FromOriented .
    • Een weergaveveld met behulp van ObjectSearchArea.FromFieldOfView .
    • Een locatie, met behulp van ObjectSearchArea.FromLocation .
    • Een bol, met behulp van ObjectSearchArea.FromSphere .

Zie de klasse voor Unity of HoloLens ObjectQueryC++/WinRTvoor meer informatie. ObjectQuery

Volgende stappen

In deze gids voor probleemoplossing hebt u geleerd hoe u problemen met de detectie van moeilijk te detecteren objecten kunt oplossen. Hier zijn enkele verwante artikelen: