Quickstart: Een HoloLens app maken met Azure Object Anchors, in Unity met MRTK
In deze quickstart maakt u een Unity HoloLens-app die gebruikmaakt van Azure Object Anchors. Azure Object Anchors is een beheerde cloudservice die 3D-assets converteert naar AI-modellen die objectbewuste mixed reality voor de HoloLens. Wanneer u klaar bent, hebt u een HoloLens app die is gebouwd met Unity waarmee objecten in de fysieke wereld kunnen worden gedetecteerd.
U leert het volgende:
- Build-instellingen voor Unity voorbereiden.
- Het HoloLens Visual Studio-project exporteren.
- Implementeer de app en voer deze uit op HoloLens 2 apparaat.
Vereisten
Zorg ervoor dat u over het volgende beschikt om deze snelstart te voltooien:
- Een fysiek object in uw omgeving en het 3D-model (CAD of gescand).
- Een Windows-computer met het volgende geïnstalleerd:
- Git voor Windows
- Visual Studio 2019 met de universeel Windows-platform Development -werk belasting en het onderdeel Windows 10 SDK (10.0.18362.0 of hoger)
- Unity 2019,4
- Een apparaat van HoloLens 2 dat up-to-date is en waarvoor de ontwikkelaars modus is ingeschakeld.
- Als u wilt bijwerken naar de nieuwste release op HoloLens, opent u de app Instellingen, gaat u naar Bijwerken en beveiliging en selecteert u vervolgens Controleren op updates.
Een Object Anchors maken
Eerst moet u een account maken met de Object Anchors service.
Ga naar de Azure Portal selecteer Een resource maken.
Zoek de Object Anchors resource.
Zoek naar 'Object Anchors'.
Selecteer op Object Anchors resource in de zoekresultaten Maken -> Object Anchors.
In het Object Anchors account:
- Voer een unieke resourcenaam in.
- Selecteer het abonnement waar u de resource aan wilt koppelen.
- Maak of gebruik een bestaande resourcegroep.
- Selecteer de regio waarin u uw resource wilt hebben.
Selecteer Maken om te beginnen met het maken van de resource.
Zodra de resource is gemaakt, selecteert u Naar de resource gaan.
Op de overzichtspagina:
Noteer het accountdomein. U hebt deze later nodig.
Noteer de account-id. U hebt deze later nodig.
Ga naar de pagina Toegangssleutels en noteer de primaire sleutel. U hebt deze later nodig.
Uw apparaat instellen
Als u apps wilt implementeren op uw HoloLens, moet u uw HoloLens koppelen aan uw computer.
- Ga in uw HoloLens naar instellingen-> Update & Security-> voor ontwikkel aars.
- Klik op combi neren en laat het scherm open totdat u de pincode in Visual Studio invoert tijdens de eerste implementatie.
Upload model maken
Voordat u de app gaat uitvoeren, moet u uw modellen beschikbaar maken voor de app. Als u nog geen nieuw model Object Anchors, volgt u de instructies in Een model maken om er een te maken. Keer vervolgens hier terug.
Als uw HoloLens is ingeschakeld en is verbonden met het ontwikkelapparaat (PC), volgt u deze stappen om een model te uploaden naar de map 3D-objecten op uw HoloLens:
Selecteer en kopieer de modellen die u wilt gebruiken door op Ctrl en C te drukken (Ctrl + C).
Druk Windows logotoets en E samen (Win + E) om Verkenner te starten. Als het goed is, HoloLens in het linkerdeelvenster weergegeven met andere stations en mappen.
Tik op de HoloLens om de opslag op het HoloLens in het rechterdeelvenster weer te geven.
Ga in Verkenner naar Interne Storage > 3D-objecten. Nu kunt u uw modellen in de map 3D-objecten plakken door op Ctrl en V te drukken (Ctrl + V).
Voorbeeldproject openen
Voer de volgende opdrachten uit om de opslagplaats met voorbeelden te klonen:
git clone https://github.com/Azure/azure-object-anchors.git
cd ./azure-object-anchors
De volgende stap is het downloaden van Azure Object Anchors pakket voor Unity.
Zoek hier Azure Object Anchors pakket voor Unity ( com.microsoft.azure.object-anchors.runtime ). Selecteer de versie die u wilt en download het pakket met behulp van de knop Downloaden.
Open het project in quickstarts/apps/unity/mrtk Unity.
Volg de instructies hier om het pakket Azure Object Anchors dat u hebt gedownload naar het Unity-project te importeren met behulp van de Unity Pakketbeheer.
De accountgegevens configureren
De volgende stap is om de app te configureren voor gebruik van uw accountgegevens. U hebt de waarden accountsleutel, account-id en accountdomein in de sectie 'Een account Object Anchors gemaakt' noteert.
Ga in het deelvenster Project naar Assets\AzureObjectAnchors.SDK\Resources.
Selecteer ObjectAnchorsConfig. Voer in het deelvenster Inspector de in als de waarde voor Object Anchors Account Key, de als de waarde voor Object Anchors Account Id en de als de waarde voor Account Key Object Anchors Account Account ID Account Domain Domain.
De app bouwen en uitvoeren
De voorbeeld scène bouwen
Navigeer in Unity-editor naar assets/MixedReality. AzureObjectAnchors/scènes, open AOASampleScene en voeg deze toe aan de lijst scène maken.
Wanneer u in het dialoogvenster TMP Importer wordt gevraagd TextMesh Pro-resources te importeren, selecteert u TMP Essentials importeren om dit te doen.
Selecteer Bestand -> Building Settings. Selecteer Universeel Windows-platform en selecteer vervolgens Switch Platform. Als unity-editor zegt dat u eerst een aantal onderdelen moet downloaden, downloadt en installeert u deze. Volg de onderstaande schermopname om de buildinstellingen te configureren. Zorg ervoor dat er naast alleen AOASampleCheck een vinkje staat: alle andere scènes mogen niet worden opgenomen.
Selecteer Bouwen en selecteer een uitvoermap. U kunt nu een VS-project genereren in de uitvoermap.
De app compileren en implementeren
Open het .sln bestand dat is gegenereerd door eenheid. Wijzig de configuratie van de build in het volgende.
Vervolgens moet u het IP-adres van de externe computer configureren om de app te implementeren en fouten op te sporen.
Klik met de rechter muisknop op het app-project en selecteer Eigenschappen. Selecteer configuratie-eigenschappen-> fout opsporing op de pagina Eigenschappen. Wijzig de waarde van de computer naam naar het IP-adres van uw HoloLens-apparaat en klik op Toep assen.
Sluit de eigenschappen pagina. Klik op externe computer. De app moet beginnen met het bouwen en implementeren op uw externe apparaat. Zorg ervoor dat uw apparaat actief is.
Na het welkomstscherm van Unity ziet u een wit begrensingsvak. U kunt uw hand gebruiken om het begrensvak te verplaatsen, te schalen of te draaien. Plaats het vak om het object te behandelen dat u wilt detecteren.
Open het menu hand en selecteer SearchArea vergrendelen om verdere verplaatsing van het begrendelingsvak te voorkomen. Selecteer Zoeken starten om objectdetectie te starten. Wanneer het object wordt gedetecteerd, wordt er een mesh weergegeven op het object. Details van een gedetecteerd exemplaar worden weergegeven op het scherm, zoals bijgewerkte tijdstempel en dekkingsverhouding. Selecteer Zoeken stoppen om het bijhouden te stoppen en alle gedetecteerde exemplaren worden verwijderd.
De app-menu's
U kunt ook andere acties uitvoeren met behulp van het handmenu.
Primair menu
Zoeken starten/stoppen: het objectdetectieproces wordt gestart of gestopt.
Ruimtelijke toewijzing in-/uitschakelen: weergave van ruimtelijke toewijzing weergeven/verbergen. Deze optie kan worden gebruikt om fouten op te sporen als de scan is voltooid of niet.
Tracker Instellingen: schakelt de activering van het menu trackerinstellingen in.
Search Area Instellingen: schakelt de activering van het instellingenmenu van het zoekgebied in.
Tracering starten: leg diagnostische gegevens vast en sla deze op het apparaat op. Zie de sectie Detectieproblemen opsporen en Diagnostische gegevens vastleggen voor meer informatie.
Upload tracering: Upload diagnostische gegevens naar de Object Anchors service.
Menu Tracker-instellingen
Hoge nauwkeurigheid: een experimentele functie die wordt gebruikt om een nauwkeurigere houding te krijgen. Voor het inschakelen van deze optie zijn meer systeemresources vereist tijdens de objectdetectie. De object-mesh wordt in deze modus in roze weergegeven. Selecteer deze knop opnieuw om terug te keren naar de normale traceringsmodus.
Ongedwongen verticale uitlijning: als deze optie is ingeschakeld, kan een object worden gedetecteerd in een niet-verticale hoek. Handig voor het detecteren van objecten op hellingen.
Schaalwijziging toestaan: hiermee kan de tracker de grootte van het gedetecteerde object wijzigen op basis van omgevingsinformatie.
Schuifregelaar dekkingsverhouding: hiermee past u het aandeel oppervlakpunten aan dat met de tracker moet overeenkomen om een object te detecteren. Met lagere waarden kan de tracker beter objecten detecteren die voor de HoloLens sensoren lastig te detecteren zijn, zoals donkere objecten of zeer reflectieve objecten. Hogere waarden verminderen de frequentie van onwaardetecties.
Menu Instellingen voor zoekgebied
Zoekgebied vergrendelen: begrendelingsvak voor het vergrendelen van het gebied om onbedoelde verplaatsing door handen te voorkomen.
Zoekgebied automatisch aanpassen: hiermee staat u toe dat het zoekgebied zichzelf kan herpositioneren tijdens de objectdetectie.
Cycle Mesh: doorzoekt het visualiseren van de geladen meshes binnen het zoekgebied. Met deze optie kunnen gebruikers het zoekvak uitlijnen voor moeilijk te detecteren objecten.
Problemen oplossen
Tips
Als uw object niet wordt gedetecteerd, kunt u de volgende stappen uitvoeren:
- Controleer of u het juiste model gebruikt voor uw object.
- Visualiseer het zoek gebied en zorg ervoor dat het het doel object bedekt.
- Verminder het
MinSurfaceCoverage. - Klik in de Windows-apparaat Portal op weer gaven-> 3D-weer gaven en controleer of de scan is voltooid.