Een oplossing voor voetvaldetectie op basis van AI implementeren met behulp van Azure en Azure Stack Hub

In dit artikel wordt beschreven hoe u een op AI gebaseerde oplossing implementeert die inzichten genereert op basis van acties uit de echte wereld met behulp van Azure, Azure Stack Hub en de Custom Vision AI Dev Kit.

In deze oplossing leert u het volgende:

  • Implementeer Cloud Native Application Bundles (CNAB) aan de rand.
  • Implementeer een app die cloudgrenzen overspant.
  • Gebruik de Custom Vision AI Dev Kit voor de deferie aan de rand.

Tip

Diagram met hybride pijlers
Microsoft Azure Stack Hub is een uitbreiding van Azure. Azure Stack Hub brengt de flexibiliteit en innovatie van cloud-computing naar uw on-premises omgeving, waardoor de enige hybride cloud waarmee u hybride apps overal kunt bouwen en implementeren.

Het artikel Ontwerpoverwegingen voor hybride apps bespreekt de pijlers van softwarekwaliteit (plaatsing, schaalbaarheid, beschikbaarheid, tolerantie, beheersbaarheid en beveiliging) voor het ontwerpen, implementeren en gebruiken van hybride apps. De ontwerpoverwegingen helpen bij het optimaliseren van het ontwerp van hybride apps, waardoor de uitdagingen in productieomgevingen worden geminimim hetzelfde.

Vereisten

Voordat u aan de slag gaat met deze implementatiehandleiding, moet u het volgende doen:

De hybride cloud-app implementeren

Eerst gebruikt u de Cli om een referentieset te genereren en vervolgens implementeert u de cloud-app.

  1. Kloon of download de opslagplaats met de voorbeeldcode van de oplossing: https://github.com/Azure-Samples/azure-intelligent-edge-patterns/tree/master/footfall-analysis .

  2. Er wordt een set referenties gegenereerd waarmee de implementatie van de app wordt automatiseren. Voordat u de opdracht voor het genereren van referenties gaat uitvoeren, moet u ervoor zorgen dat het volgende beschikbaar is:

    • Een service-principal voor toegang tot Azure-resources, met inbegrip van de service-principal-id, sleutel en tenant-DNS.
    • De abonnements-id voor uw Azure-abonnement.
    • Een service-principal voor toegang tot Azure Stack Hub resources, waaronder de service-principal-id, sleutel en tenant-DNS.
    • De abonnements-id voor uw Azure Stack Hub abonnement.
    • Uw Azure Cognitive Services Face-API-sleutel en resource-eindpunt-URL.
  3. Voer het proces voor het genereren van Uw referenties uit en volg de aanwijzingen:

    porter creds generate --tag intelligentedge/footfall-cloud-deployment:0.1.0
    
  4. Ook moet er een set parameters worden uitgevoerd. Maak een parametertekstbestand en voer de volgende naam/waarde-paren in. Vraag uw Azure Stack Hub beheerder of u hulp nodig hebt met een van de vereiste waarden.

    Notitie

    De waarde wordt gebruikt om ervoor te zorgen dat de resources van uw resource suffix implementatie unieke namen hebben in Azure. Het moet een unieke reeks letters en cijfers zijn, niet langer dan 8 tekens.

    azure_stack_tenant_arm="Your Azure Stack Hub tenant endpoint"
    azure_stack_storage_suffix="Your Azure Stack Hub storage suffix"
    azure_stack_keyvault_suffix="Your Azure Stack Hub keyVault suffix"
    resource_suffix="A unique string to identify your deployment"
    azure_location="A valid Azure region"
    azure_stack_location="Your Azure Stack Hub location identifier"
    powerbi_display_name="Your first and last name"
    powerbi_principal_name="Your Power BI account email address"
    

    Sla het tekstbestand op en noteer het pad.

  5. U bent nu klaar om de hybride cloud-app te implementeren met behulp van Now. Voer de installatieopdracht uit en kijk hoe resources worden geïmplementeerd in Azure en Azure Stack Hub:

    porter install footfall-cloud –tag intelligentedge/footfall-cloud-deployment:0.1.0 –creds footfall-cloud-deployment –param-file "path-to-cloud-parameters-file.txt"
    
  6. Zodra de implementatie is voltooid, noteert u de volgende waarden:

    • De camera's connection string.
    • Het opslagaccount voor de connection string.
    • De namen van de resourcegroep.

De Custom Vision AI DevKit voorbereiden

Stel vervolgens de ai Dev Kit Custom Vision zoals wordt weergegeven in de quickstart voor Vision AI DevKit. U kunt uw camera ook instellen en testen met behulp van de connection string die u in de vorige stap hebt opgegeven.

De camera-app implementeren

Gebruik de Cli voor het genereren van een referentieset en implementeer vervolgens de camera-app.

  1. Er wordt een set referenties gegenereerd waarmee de implementatie van de app wordt automatiseren. Voordat u de opdracht voor het genereren van referenties gaat uitvoeren, moet u ervoor zorgen dat het volgende beschikbaar is:

    • Een service-principal voor toegang tot Azure-resources, met inbegrip van de service-principal-id, sleutel en tenant-DNS.
    • De abonnements-id voor uw Azure-abonnement.
    • Het opslagaccount voor de connection string opgegeven tijdens de geïmplementeerde cloud-app.
  2. Voer het proces voor het genereren van Uw referenties uit en volg de aanwijzingen:

    porter creds generate --tag intelligentedge/footfall-camera-deployment:0.1.0
    
  3. Ook moet er een set parameters worden uitgevoerd. Maak een parametertekstbestand en voer de volgende tekst in. Vraag uw Azure Stack Hub beheerder of u een aantal van de vereiste waarden niet weet.

    Notitie

    De waarde wordt gebruikt om ervoor te zorgen dat de resources van uw deployment suffix implementatie unieke namen hebben in Azure. Het moet een unieke reeks letters en cijfers zijn, niet langer dan 8 tekens.

    iot_hub_name="Name of the IoT Hub deployed"
    deployment_suffix="Unique string here"
    

    Sla het tekstbestand op en noteer het pad.

  4. U bent nu klaar om de camera-app te implementeren met behulp van Wilt. Voer de installatieopdracht uit en kijk hoe IoT Edge implementatie wordt gemaakt.

    porter install footfall-camera –tag intelligentedge/footfall-camera-deployment:0.1.0 –creds footfall-camera-deployment –param-file "path-to-camera-parameters-file.txt"
    
  5. Controleer of de implementatie van de camera is voltooid door de camerafeed te bekijken op https://<camera-ip>:3000/ , waarbij <camara-ip> het IP-adres van de camera is. Deze stap kan maximaal 10 minuten duren.

Een Azure Stream Analytics

Nu de gegevens vanaf de camera Azure Stream Analytics, moeten we deze handmatig autoreren om te communiceren met Power BI.

  1. Open Azure Portal alle resources en de [ ] yoursuffix-taak voor de procesvoetval.

  2. Selecteer in de sectie Taaktopologie van het deelvenster van de Stream Analytics-taak de optie Uitvoer.

  3. Selecteer de uitvoer-sink traffic-output.

  4. Selecteer Autorisatie vernieuwen en meld u aan bij Power BI account.

    Autorisatieprompt vernieuwen in Power BI

  5. Sla de uitvoerinstellingen op.

  6. Ga naar het deelvenster Overzicht en selecteer Beginnen om te beginnen met het verzenden van gegevens naar Power BI.

  7. Selecteer Nu voor de starttijd van de taakuitvoer en selecteer Starten. U kunt de taakstatus bekijken in de meldingsbalk.

Een dashboard Power BI maken

  1. Zodra de taak is geslaagd, gaat u naar Power BI en meld u zich aan met uw werk- of schoolaccount. Als de Stream Analytics query resultaten uitvoert, bestaat de gegevensset footfall-dataset die u hebt gemaakt, op het tabblad Gegevenssets.

  2. Selecteer in Power BI werkruimte + Maken om een nieuw dashboard te maken met de naam Footfall Analysis.

  3. Selecteer boven in het venster de optie Tegel toevoegen. Selecteer Aangepaste streaminggegevens en Volgende. Kies de gegevensset voor voetval onder Uw gegevenssets. Selecteer Kaart in de vervolgkeuzekeuze selecteren Visualisatietype en voeg leeftijd toe aan Velden. Selecteer Volgende om een naam voor de tegel in te voeren en selecteer vervolgens Toepassen om het bestand te maken.

  4. U kunt naar wens extra velden en kaarten toevoegen.

Uw oplossing testen

U ziet hoe de gegevens in de kaarten die u in Power BI, veranderen wanneer verschillende personen voor de camera lopen. Het kan tot 20 seconden duren voordat de deferenties worden weergegeven nadat deze zijn vastgelegd.

Uw oplossing verwijderen

Als u uw oplossing wilt verwijderen, voert u de volgende opdrachten uit met behulp van Remove, met behulp van dezelfde parameterbestanden die u hebt gemaakt voor implementatie:

porter uninstall footfall-cloud –tag intelligentedge/footfall-cloud-deployment:0.1.0 –creds footfall-cloud-deployment –param-file "path-to-cloud-parameters-file.txt"

porter uninstall footfall-camera –tag intelligentedge/footfall-camera-deployment:0.1.0 –creds footfall-camera-deployment –param-file "path-to-camera-parameters-file.txt"

Volgende stappen