Distribuera en AI-baserad lösning för identifiering av fotfall med hjälp av Azure och Azure Stack Hub
Den här artikeln beskriver hur du distribuerar en AI-baserad lösning som genererar insikter från verkliga åtgärder med hjälp av Azure, Azure Stack Hub och Custom Vision AI Dev Kit.
I den här lösningen lär du dig att:
- Distribuera cloud native application bundles (CNAB) vid gränsen.
- Distribuera en app som sträcker sig över molngränser.
- Använd Custom Vision AI Dev Kit för slutsatsdragning vid gränsen.
Dricks
Microsoft Azure Stack Hub är ett tillägg till Azure. Azure Stack Hub ger flexibiliteten och innovationen inom molnbaserad databehandling till din lokala miljö, vilket möjliggör det enda hybridmoln som gör att du kan skapa och distribuera hybridappar var som helst.
I artikeln Designöverväganden för hybridappar granskas grundpelare för programvarukvalitet (placering, skalbarhet, tillgänglighet, återhämtning, hanterbarhet och säkerhet) för design, distribution och drift av hybridappar. Designövervägandena hjälper dig att optimera hybridappdesignen och minimera utmaningarna i produktionsmiljöer.
Förutsättningar
Innan du börjar med den här distributionsguiden måste du:
- Granska arkitekturen för identifiering av fotfall.
- Få användaråtkomst till en Azure Stack Development Kit (ASDK) eller azure Stack Hub-integrerad systeminstans med:
- Azure App Service på Azure Stack Hub-resursprovidern är installerad. Du behöver operatörsåtkomst till din Azure Stack Hub-instans eller arbeta med administratören för att installera.
- En prenumeration på ett erbjudande som tillhandahåller App Service- och Lagringskvot. Du behöver operatoråtkomst för att skapa ett erbjudande.
- Få åtkomst till en Azure-prenumeration.
- Om du inte har en Azure-prenumeration registrerar du dig för ett kostnadsfritt utvärderingskonto innan du börjar.
- Skapa två huvudnamn för tjänsten i din katalog:
- En konfiguration för användning med Azure-resurser, med åtkomst i Azure-prenumerationsomfånget.
- En konfigurerad för användning med Azure Stack Hub-resurser med åtkomst i Azure Stack Hub-prenumerationsomfånget.
- Mer information om hur du skapar tjänstens huvudnamn och auktoriserar åtkomst finns i Använda en appidentitet för att komma åt resurser. Om du föredrar att använda Azure CLI kan du läsa Skapa ett huvudnamn för Azure-tjänsten med Azure CLI.
- Distribuera Azure Cognitive Services i Azure eller Azure Stack Hub.
- Läs först mer om Cognitive Services.
- Gå sedan till Distribuera Azure Cognitive Services till Azure Stack Hub för att distribuera Cognitive Services på Azure Stack Hub. Du måste först registrera dig för åtkomst till förhandsversionen.
- Klona eller ladda ned ett okonfigurerat Azure Custom Vision AI Dev Kit. Mer information finns i Vision AI DevKit.
- Registrera dig för ett Power BI-konto.
- En Prenumerationsnyckel för Ansikts-API för Azure Cognitive Services och slutpunkts-URL. Du kan hämta båda med den kostnadsfria utvärderingsversionen av Try Cognitive Services . Du kan också följa anvisningarna i Skapa ett Cognitive Services-konto.
- Installera följande utvecklingsresurser:
- Azure CLI 2.0
- Docker CE
- Porter. Du använder Porter för att distribuera molnappar med CNAB-paketmanifest som tillhandahålls åt dig.
- Visual Studio Code
- Azure IoT Tools för Visual Studio Code
- Python-tillägg för Visual Studio Code
- Python
Distribuera hybridmolnappen
Först använder du Porter CLI för att generera en uppsättning autentiseringsuppgifter och sedan distribuera molnappen.
Klona eller ladda ned lagringsplatsen som innehåller lösningens exempelkod.
Porter genererar en uppsättning autentiseringsuppgifter som automatiserar distributionen av appen. Innan du kör autentiseringsuppgiftsgenereringskommandot måste du ha följande tillgängligt:
- Ett huvudnamn för tjänsten för åtkomst till Azure-resurser, inklusive tjänstens huvudnamns-ID, nyckel och klient-DNS.
- Prenumerations-ID för din Azure-prenumeration.
- Ett huvudnamn för tjänsten för åtkomst till Azure Stack Hub-resurser, inklusive tjänstens huvudnamns-ID, nyckel och klient-DNS.
- Prenumerations-ID:t för din Azure Stack Hub-prenumeration.
- Din Ansikts-API-nyckel och resursslutpunkts-URL för Azure Cognitive Services.
Kör porterautentiseringsgenereringsprocessen och följ anvisningarna:
porter creds generate --tag intelligentedge/footfall-cloud-deployment:0.1.0
Porter kräver också en uppsättning parametrar som ska köras. Skapa en parametertextfil och ange följande namn/värde-par. Fråga din Azure Stack Hub-administratör om du behöver hjälp med något av de värden som krävs.
Kommentar
Värdet
resource suffix
används för att säkerställa att distributionens resurser har unika namn i Hela Azure. Det måste vara en unik sträng med bokstäver och siffror, inte längre än 8 tecken.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"
Spara textfilen och anteckna sökvägen.
Nu är du redo att distribuera hybridmolnappen med Porter. Kör installationskommandot och se när resurser distribueras till Azure och 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"
När distributionen är klar bör du notera följande värden:
- Kameran är anslutningssträng.
- Avbildningslagringskontot anslutningssträng.
- Resursgruppens namn.
Förbereda Custom Vision AI DevKit
Konfigurera sedan Custom Vision AI Dev Kit enligt beskrivningen i snabbstarten Vision AI DevKit. Du kan också konfigurera och testa kameran med hjälp av anslutningssträng som angavs i föregående steg.
Distribuera kameraappen
Använd Porter CLI för att generera en uppsättning autentiseringsuppgifter och distribuera sedan kameraappen.
Porter genererar en uppsättning autentiseringsuppgifter som automatiserar distributionen av appen. Innan du kör autentiseringsuppgiftsgenereringskommandot måste du ha följande tillgängligt:
- Ett huvudnamn för tjänsten för åtkomst till Azure-resurser, inklusive tjänstens huvudnamns-ID, nyckel och klient-DNS.
- Prenumerations-ID för din Azure-prenumeration.
- Avbildningslagringskontot anslutningssträng som angavs när du distribuerade molnappen.
Kör porterautentiseringsgenereringsprocessen och följ anvisningarna:
porter creds generate --tag intelligentedge/footfall-camera-deployment:0.1.0
Porter kräver också en uppsättning parametrar som ska köras. Skapa en parametertextfil och ange följande text. Fråga Azure Stack Hub-administratören om du inte känner till några av de värden som krävs.
Kommentar
Värdet
deployment suffix
används för att säkerställa att distributionens resurser har unika namn i Hela Azure. Det måste vara en unik sträng med bokstäver och siffror, inte längre än 8 tecken.iot_hub_name="Name of the IoT Hub deployed" deployment_suffix="Unique string here"
Spara textfilen och anteckna sökvägen.
Nu är du redo att distribuera kameraappen med Porter. Kör installationskommandot och se när IoT Edge-distributionen skapas.
porter install footfall-camera –tag intelligentedge/footfall-camera-deployment:0.1.0 –creds footfall-camera-deployment –param-file "path-to-camera-parameters-file.txt"
Kontrollera att kamerans distribution är klar genom att visa kameraflödet på
https://<camera-ip>:3000/
, där<camara-ip>
är kamerans IP-adress. Det här steget kan ta upp till 10 minuter.
Konfigurera Azure Stream Analytics
Nu när data flödar till Azure Stream Analytics från kameran måste vi manuellt auktorisera dem för att kommunicera med Power BI.
Öppna Alla resurser från Azure-portalen och jobbet process-footfall[yoursuffix].
I avsnittet Jobbtopologi i Stream Analytics-jobbfönstret väljer du alternativet Utdata.
Välj utdatamottagaren för trafikutdata .
Välj Förnya auktorisering och logga in på ditt Power BI-konto.
Spara utdatainställningarna.
Gå till fönstret Översikt och välj Starta för att börja skicka data till Power BI.
Välj Nu som starttid för jobbutdata och välj Start. Du kan se dess status i meddelandefältet.
Skapa en Power BI-instrumentpanel
När jobbet har slutförts går du till Power BI och loggar in med ditt arbets- eller skolkonto. Om Stream Analytics-jobbfrågan matar ut resultat finns datauppsättningen footfall-dataset som du skapade under fliken Datauppsättningar .
Från Din Power BI-arbetsyta väljer du + Skapa för att skapa en ny instrumentpanel med namnet Footfall Analysis.
Välj Lägg till panel högst upp i fönstret. Välj sedan Anpassade strömmande data och Nästa. Välj footfall-dataset under Dina datauppsättningar. Välj Kort i listrutan Visualiseringstyp och lägg till ålder i Fält. Välj Nästa för att ange ett namn på panelen och välj sedan Applicera för att skapa panelen.
Du kan lägga till ytterligare fält och kort efter behov.
Testa din lösning
Observera hur data i korten som du skapade i Power BI ändras när olika personer går framför kameran. Slutsatsdragningar kan ta upp till 20 sekunder att visas när de har registrerats.
Ta bort din lösning
Om du vill ta bort lösningen kör du följande kommandon med Porter med samma parameterfiler som du skapade för distribution:
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"
Nästa steg
- Läs mer om designöverväganden för hybridappar
- Granska och föreslå förbättringar av koden för det här exemplet på GitHub.
- Se Översikt över en hybridarbetsbelastning i Azure Well-Architected Framework.
- Se hybrid- och multimolnsscenariot i Azure Cloud Adoption Framework.
Relaterade resurser
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för