Installera och kör containern Spatial Analysis (förhandsversion)
Viktigt!
Den 30 mars 2025 dras Azure AI Vision Spatial Analysis tillbaka. Övergå till Azure AI Video Indexer eller en annan lösning med öppen källkod före det angivna datumet. Vi rekommenderar att du byter tidigare för att få de rikare fördelarna med Azure AI Video Indexer. Förutom de välbekanta funktioner som du använder, här är en snabb jämförelse mellan Azure AI Vision Spatial Analysis och Azure AI Video Indexer.
Funktion | Rumslig analys i Azure AI Vision | Azure AI Video Indexer |
---|---|---|
Edge-stöd | Ja | Ja |
Objektidentifiering | Person- och fordonsidentifiering | Identifierar över 1 000 objekt |
Ljud-/talbearbetning | Stöds inte | Stöds (inkluderar talranskription, översättning och sammanfattning) Stöds >(inkluderar talranskription och attitydanalys) |
Händelseidentifiering och spårning | Stöds (spåra personer och fordon, händelseidentifiering) | Stöds inte på Edge ännu. Stöds delvis i molnet. |
Stöd för Azure Arc | Stöds inte | Internt stöd |
Fokusområde | Visuell analys med specialiserad spårning | Omfattande analys av både ljud- och visuellt innehåll |
Från och med nu fram till den 30 mars 2025 kan du fortsätta att använda Azure AI Vision Spatial Analysis eller övergå till Azure AI Video Indexer före det angivna datumet. Efter den 30 mars 2025 stöds inte längre containern Spatial Analysis och kommer att sluta bearbeta nya strömmar.
Med containern Spatial Analysis kan du analysera strömmande video i realtid för att förstå rumsliga relationer mellan personer, deras rörelse och interaktioner med objekt i fysiska miljöer. Containrar hjälper dig att uppfylla specifika krav för säkerhet och datastyrning.
Förutsättningar
- Azure-prenumeration – Skapa en kostnadsfritt
- När du har din Azure-prenumeration skapar du en Visuellt innehåll resurs för Standard S1-nivån i Azure Portal för att hämta din nyckel och slutpunkt. När den har distribuerats väljer du Gå till resurs.
- Du behöver nyckeln och slutpunkten från den resurs som du skapar för att köra containern Spatial Analysis. Du använder din nyckel och slutpunkt senare.
Krav för spatial analyscontainer
För att köra containern Spatial Analysis behöver du en beräkningsenhet med en NVIDIA CUDA Compute Capable GPU 6.0 eller senare (till exempel NVIDIA Tesla T4, A2, 1080Ti eller 2080Ti). Vi rekommenderar att du använder Azure Stack Edge med GPU-acceleration, men containern körs på andra stationära datorer som uppfyller minimikraven. Vi refererar till den här enheten som värddator.
Azure Stack Edge är en maskinvaru-som-en-tjänst-lösning och en AI-aktiverad gränsberäkningsenhet med funktioner för nätverksdataöverföring. Detaljerade anvisningar för förberedelse och konfiguration finns i Dokumentationen om Azure Stack Edge.
Krav | Beskrivning |
---|---|
Kamera | Containern Spatial Analysis är inte kopplad till ett specifikt kameramärke. Kameraenheten måste: stödja RTSP (Real-Time Streaming Protocol) och H.264-kodning, vara tillgänglig för värddatorn och kunna strömmas med 15FPS- och 1080p-upplösning. |
Linux OS | Ubuntu Desktop 18.04 LTS måste vara installerat på värddatorn. |
Konfigurera värddatorn
Vi rekommenderar att du använder en Azure Stack Edge-enhet för värddatorn. Välj Stationär dator om du konfigurerar en annan enhet eller virtuell dator om du använder en virtuell dator.
Konfigurera beräkning på Azure Stack Edge-portalen
Spatial Analysis använder beräkningsfunktionerna i Azure Stack Edge för att köra en AI-lösning. Om du vill aktivera beräkningsfunktionerna kontrollerar du att:
- Du har anslutit och aktiverat din Azure Stack Edge-enhet.
- Du har ett Windows-klientsystem som kör PowerShell 5.0 eller senare för att få åtkomst till enheten.
- Om du vill distribuera ett Kubernetes-kluster måste du konfigurera din Azure Stack Edge-enhet via det lokala användargränssnittet på Azure Portal:
- Aktivera beräkningsfunktionen på din Azure Stack Edge-enhet. Om du vill aktivera beräkning går du till sidan Beräkning i webbgränssnittet för enheten.
- Välj ett nätverksgränssnitt som du vill aktivera för beräkning och välj sedan Aktivera. Detta skapar en virtuell växel på enheten i det nätverksgränssnittet.
- Lämna IP-adresserna för Kubernetes-testnoden och Ip-adresserna för Kubernetes-externa tjänster tomma.
- Välj Använd. Den här åtgärden kan ta ungefär två minuter.
Konfigurera Azure Stack Edge-rollen och skapa en IoT Hub-resurs
I Azure Portal navigerar du till din Azure Stack Edge-resurs. På sidan Översikt eller navigeringslistan väljer du knappen Edge compute Kom igång. I panelen Konfigurera Edge-beräkning väljer du Konfigurera.
På sidan Konfigurera Edge-beräkning väljer du en befintlig IoT Hub eller väljer att skapa en ny. Som standard används en standardprisnivå (S1) för att skapa en IoT Hub-resurs. Om du vill använda en IoT Hub-resurs på den kostnadsfria nivån skapar du en och väljer den. IoT Hub-resursen använder samma prenumeration och resursgrupp som används av Azure Stack Edge-resursen
Välj Skapa. Det kan ta några minuter att skapa IoT Hub-resursen. När IoT Hub-resursen har skapats uppdateras panelen Konfigurera Edge-beräkning för att visa den nya konfigurationen. Bekräfta att Edge-beräkningsrollen har konfigurerats genom att välja Visa konfiguration på panelen Konfigurera beräkning .
När Edge-beräkningsrollen har konfigurerats på Edge-enheten så skapas två enheter: en IoT-enhet och en IoT Edge-enhet. Bägge enheter kan visas i IoT Hub-resursen. Azure IoT Edge-körningen körs redan på IoT Edge-enheten.
Kommentar
- För närvarande stöds endast Linux-plattformen för IoT Edge-enheter. Hjälp med att felsöka Azure Stack Edge-enheten finns i artikeln om loggning och felsökning .
- Mer information om hur du konfigurerar en IoT Edge-enhet för kommunikation via en proxyserver finns i Konfigurera en IoT Edge-enhet för kommunikation via en proxyserver
Aktivera MPS på Azure Stack Edge
Följ dessa steg för att fjärransluta från en Windows-klient.
Kör en Windows PowerShell-session som administratör.
Kontrollera att Windows Remote Management-tjänsten körs på klienten. Skriv i kommandotolken:
winrm quickconfig
Mer information finns i Installation och konfiguration för Windows Fjärrhantering.
Tilldela en variabel till den anslutningssträng som används i
hosts
filen.$Name = "<Node serial number>.<DNS domain of the device>"
Ersätt
<Node serial number>
och<DNS domain of the device>
med enhetens nodserienummer och DNS-domän. Du kan hämta värdena för nodserienumret från sidan Certifikat och DNS-domän från sidan Enhet i enhetens lokala webbgränssnitt.Om du vill lägga till den här anslutningssträng för enheten i klientens lista över betrodda värdar skriver du följande kommando:
Set-Item WSMan:\localhost\Client\TrustedHosts $Name -Concatenate -Force
Starta en Windows PowerShell-session på enheten:
Enter-PSSession -ComputerName $Name -Credential ~\EdgeUser -ConfigurationName Minishell -UseSSL
Om du ser ett fel som rör förtroenderelation kontrollerar du om signeringskedjan för nodcertifikatet som laddats upp till enheten också är installerad på klienten som har åtkomst till enheten.
Ange lösenordet när du uppmanas att göra det. Använd samma lösenord som används för att logga in på det lokala webbgränssnittet. Standardlösenordet för lokalt webbgränssnitt är
Password1
. När du ansluter till enheten med hjälp av fjärransluten PowerShell visas följande exempelutdata:Windows PowerShell Copyright (C) Microsoft Corporation. All rights reserved. PS C:\WINDOWS\system32> winrm quickconfig WinRM service is already running on this machine. PS C:\WINDOWS\system32> $Name = "1HXQG13.wdshcsso.com" PS C:\WINDOWS\system32> Set-Item WSMan:\localhost\Client\TrustedHosts $Name -Concatenate -Force PS C:\WINDOWS\system32> Enter-PSSession -ComputerName $Name -Credential ~\EdgeUser -ConfigurationName Minishell -UseSSL WARNING: The Windows PowerShell interface of your device is intended to be used only for the initial network configuration. Please engage Microsoft Support if you need to access this interface to troubleshoot any potential issues you may be experiencing. Changes made through this interface without involving Microsoft Support could result in an unsupported configuration. [1HXQG13.wdshcsso.com]: PS>
IoT-distributionsmanifest
Om du vill effektivisera containerdistributionen på flera värddatorer kan du skapa en distributionsmanifestfil för att ange alternativen för att skapa containrar och miljövariabler. Du hittar ett exempel på ett distributionsmanifest för Azure Stack Edge, andra stationära datorer och en virtuell Azure-dator med GPU på GitHub.
I följande tabell visas de olika miljövariabler som används av IoT Edge-modulen. Du kan också ange dem i distributionsmanifestet som är länkat ovan med hjälp av env
attributet i spatialanalysis
:
Namn | Värde | beskrivning |
---|---|---|
ARCHON_LOG_LEVEL | Information; Mångordig | Loggningsnivå, välj ett av de två värdena |
ARCHON_SHARED_BUFFER_LIMIT | 377487360 | Ändra inte |
ARCHON_PERF_MARKER | falskt | Ange detta till sant för prestandaloggning, annars bör detta vara falskt |
ARCHON_NODES_LOG_LEVEL | Information; Mångordig | Loggningsnivå, välj ett av de två värdena |
OMP_WAIT_POLICY | PASSIV | Ändra inte |
QT_X11_NO_MITSHM | 1 | Ändra inte |
APIKEY | din API-nyckel | Samla in det här värdet från Azure Portal från visionsresursen. Du hittar den i avsnittet Nyckel och slutpunkt för din resurs. |
FAKTURERING | din slutpunkts-URI | Samla in det här värdet från Azure Portal från visionsresursen. Du hittar den i avsnittet Nyckel och slutpunkt för din resurs. |
EULA | acceptera | Det här värdet måste anges för att containern ska kunna köras |
VISA | 1: | Det här värdet måste vara samma som utdata echo $DISPLAY från på värddatorn. Azure Stack Edge-enheter har ingen visning. Den här inställningen är inte tillämplig |
KEY_ENV | ASE-krypteringsnyckel | Lägg till den här miljövariabeln om Video_URL är en dold sträng |
IV_ENV | Initialization vector | Lägg till den här miljövariabeln om Video_URL är en dold sträng |
Viktigt!
Alternativen Eula
, Billing
och ApiKey
måste anges för att köra containern. Annars startar inte containern. Mer information finns i Fakturering.
När du har uppdaterat distributionsmanifestet för Azure Stack Edge-enheter, en stationär dator eller en virtuell Azure-dator med GPU med dina egna inställningar och val av åtgärder kan du använda azure CLI-kommandot nedan för att distribuera containern på värddatorn som en IoT Edge-modul.
sudo az login
sudo az extension add --name azure-iot
sudo az iot edge set-modules --hub-name "<iothub-name>" --device-id "<device-name>" --content DeploymentManifest.json --subscription "<name or ID of Azure Subscription>"
Parameter | Description |
---|---|
--hub-name |
Ditt Azure IoT Hub-namn. |
--content |
Namnet på distributionsfilen. |
--target-condition |
Ditt IoT Edge-enhetsnamn för värddatorn. |
-–subscription |
Prenumerations-ID eller namn. |
Det här kommandot startar distributionen. Gå till sidan för din Azure IoT Hub-instans i Azure Portal för att se distributionsstatusen. Statusen kan visas som 417 – Enhetens distributionskonfiguration har inte angetts förrän enheten har laddat ned containeravbildningarna och börjar köra.
Kontrollera att distributionen har slutförts
Det finns flera sätt att verifiera att containern körs. Leta upp Körningsstatus i IoT Edge-modulinställningarna för modulen Rumslig analys i din Azure IoT Hub-instans på Azure Portal. Kontrollera att önskat värde och rapporterat värde för körningsstatusen körs.
När distributionen är klar och containern körs börjar värddatorn skicka händelser till Azure IoT Hub. Om du använde .debug
versionen av åtgärderna visas ett visualiseringsfönster för varje kamera som du konfigurerade i distributionsmanifestet. Nu kan du definiera de rader och zoner som du vill övervaka i distributionsmanifestet och följa anvisningarna för att distribuera igen.
Konfigurera de åtgärder som utförs av spatial analys
Du måste använda spatiala analysåtgärder för att konfigurera containern att använda anslutna kameror, konfigurera åtgärderna med mera. För varje kameraenhet som du konfigurerar genererar åtgärderna för rumslig analys en utdataström med JSON-meddelanden som skickas till din instans av Azure IoT Hub.
Använda utdata som genereras av containern
Om du vill börja använda utdata som genereras av containern kan du läsa följande artiklar:
- Använd Azure Event Hubs SDK för ditt valda programmeringsspråk för att ansluta till Azure IoT Hub-slutpunkten och ta emot händelserna. Mer information finns i Läsa meddelanden från enhet till moln från den inbyggda slutpunkten.
- Konfigurera meddelanderoutning på din Azure IoT Hub för att skicka händelserna till andra slutpunkter eller spara händelserna i Azure Blob Storage osv.
Felsökning
Om du stöter på problem när du startar eller kör containern kan du läsa Telemetri och felsökning för steg för vanliga problem. Den här artikeln innehåller också information om hur du genererar och samlar in loggar och samlar in systemhälsa.
Om du har problem med att köra en Azure AI-tjänstcontainer kan du prova att använda Microsofts diagnostikcontainer. Använd den här containern för att diagnostisera vanliga fel i distributionsmiljön som kan förhindra att Azure AI-containrar fungerar som förväntat.
Använd följande docker pull
kommando för att hämta containern:
docker pull mcr.microsoft.com/azure-cognitive-services/diagnostic
Kör sedan containern. Ersätt {ENDPOINT_URI}
med slutpunkten och ersätt {API_KEY}
med nyckeln till resursen:
docker run --rm mcr.microsoft.com/azure-cognitive-services/diagnostic \
eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}
Containern testar nätverksanslutningen till faktureringsslutpunkten.
Fakturering
Containern Spatial Analysis skickar faktureringsinformation till Azure med hjälp av en Vision-resurs på ditt Azure-konto. Användningen av Rumslig analys i offentlig förhandsversion är för närvarande kostnadsfri.
Azure AI-containrar är inte licensierade att köras utan att vara anslutna till slutpunkten för mätning/fakturering. Du måste alltid aktivera containrarna för att kommunicera faktureringsinformation med faktureringsslutpunkten. Azure AI-containrar skickar inte kunddata, till exempel videon eller bilden som analyseras, till Microsoft.
Sammanfattning
I den här artikeln har du lärt dig begrepp och arbetsflöden för att ladda ned, installera och köra containern Spatial Analysis. Sammanfattningsvis:
- Spatial Analysis är en Linux-container för Docker.
- Containeravbildningar laddas ned från Microsoft Container Registry.
- Containeravbildningar körs som IoT-moduler i Azure IoT Edge.
- Konfigurera containern och distribuera den på en värddator.