Een op AI gebaseerde oplossing voor voetvaldetectie 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 uit echte acties 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 beslaat.
  • Gebruik de Custom Vision AI Dev Kit voor deductie 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 wordt ingeschakeld waarmee u overal hybride apps kunt bouwen en implementeren.

In het artikel Overwegingen bij het ontwerpen van hybride apps worden de pijlers van softwarekwaliteit (plaatsing, schaalbaarheid, beschikbaarheid, tolerantie, beheerbaarheid en beveiliging) beoordeeld voor het ontwerpen, implementeren en gebruiken van hybride apps. De ontwerpoverwegingen helpen bij het optimaliseren van het ontwerp van hybride apps, waardoor uitdagingen in productieomgevingen worden geminimaliseerd.

Vereisten

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

De hybride cloud-app implementeren

Eerst gebruikt u de Porter CLI om een referentiesset te genereren en implementeert u vervolgens de cloud-app.

  1. Kloon of download de opslagplaats met de voorbeeldcode van de oplossing.

  2. Porter genereert een set referenties waarmee de implementatie van de app wordt geautomatiseerd. Voordat u de opdracht voor het genereren van referenties uitvoert, moet u het volgende beschikbaar hebben:

    • Een service-principal voor toegang tot Azure-resources, waaronder 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 Face-API-sleutel en de URL van uw Face-API voor Azure Cognitive Services.
  3. Voer het proces voor het genereren van referenties van Porter uit en volg de aanwijzingen:

    porter creds generate --tag intelligentedge/footfall-cloud-deployment:0.1.0
    
  4. Porter vereist ook een set parameters die moeten worden uitgevoerd. Maak een parametertekstbestand en voer de volgende naam/waardeparen in. Vraag uw Azure Stack Hub-beheerder of u hulp nodig hebt bij een van de vereiste waarden.

    Notitie

    De resource suffix waarde wordt gebruikt om ervoor te zorgen dat de resources van uw implementatie unieke namen hebben in Azure. Het moet een unieke tekenreeks met 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 Porter. 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 is verbindingsreeks.
    • Het opslagaccount van de installatiekopieën verbindingsreeks.
    • De namen van de resourcegroepen.

De Custom Vision AI DevKit voorbereiden

Stel vervolgens de Custom Vision AI Dev Kit in, zoals wordt weergegeven in de quickstart voor Vision AI DevKit. U stelt uw camera ook in en test deze met behulp van de verbindingsreeks in de vorige stap.

De camera-app implementeren

Gebruik de Porter CLI om een referentieset te genereren en implementeer vervolgens de camera-app.

  1. Porter genereert een set referenties waarmee de implementatie van de app wordt geautomatiseerd. Voordat u de opdracht voor het genereren van referenties uitvoert, moet u het volgende beschikbaar hebben:

    • Een service-principal voor toegang tot Azure-resources, waaronder de service-principal-id, sleutel en tenant-DNS.
    • De abonnements-id voor uw Azure-abonnement.
    • Het opslagaccount voor installatiekopieën verbindingsreeks opgegeven bij het implementeren van de cloud-app.
  2. Voer het proces voor het genereren van referenties van Porter uit en volg de aanwijzingen:

    porter creds generate --tag intelligentedge/footfall-camera-deployment:0.1.0
    
  3. Porter vereist ook een set parameters die moeten 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 deployment suffix waarde wordt gebruikt om ervoor te zorgen dat de resources van uw implementatie unieke namen hebben in Azure. Het moet een unieke tekenreeks met 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 Porter. Voer de installatieopdracht uit en kijk hoe de 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/, waar <camara-ip> is het IP-adres van de camera. Deze stap kan tot 10 minuten duren.

Azure Stream Analytics configureren

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

  1. Open vanuit Azure Portal alle resources en de taak process-footfall[yoursuffix].

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

  3. Selecteer de sink voor uitvoer van de verkeersuitvoer .

  4. Selecteer Autorisatie verlengen en meld u aan bij uw Power BI-account.

    Schermopname van de prompt voor het vernieuwen van autorisatie in Power BI.

  5. Sla de uitvoerinstellingen op.

  6. Ga naar het deelvenster Overzicht en selecteer Starten om gegevens naar Power BI te verzenden.

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

Een Power BI-dashboard maken

  1. Zodra de taak is voltooid, gaat u naar Power BI en meldt u zich aan met uw werk- of schoolaccount. Als de Stream Analytics-taakquery resultaten uitvoert, bestaat de gegevensset voor de voetgegevensset die u hebt gemaakt, op het tabblad Gegevenssets .

  2. Selecteer + Maken in uw Power BI-werkruimte 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 voet-gegevensset onder Uw gegevenssets. Selecteer Kaart in de vervolgkeuzelijst 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 desgewenst extra velden en kaarten toevoegen.

Uw oplossing testen

Bekijk hoe de gegevens in de kaarten die u in Power BI hebt gemaakt, veranderen wanneer verschillende personen voor de camera lopen. Het kan tot 20 seconden duren voordat de deducties worden weergegeven nadat ze zijn opgenomen.

Uw oplossing verwijderen

Als u uw oplossing wilt verwijderen, voert u de volgende opdrachten uit met Behulp van Porter, 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