Instalace a spuštění kontejneru Spatial Analysis (Preview)
Kontejner prostorové analýzy umožňuje analyzovat streamované video v reálném čase, abyste porozuměli prostorovým vztahům mezi lidmi, jejich pohybu a interakcím s objekty ve fyzických prostředích. Kontejnery jsou skvělé pro splnění určitých požadavků na zabezpečení a zásady správného řízení dat.
Požadavky
- Předplatné Azure – Vytvořte si ho zdarma.
- Váš účet Azure musí mít přiřazenou Cognitive Services přispěvatele, abyste mohli odsouhlasit podmínky AI a vytvořit prostředek. Požádejte správce, aby tuto roli přiřadil vašemu účtu.
- Jakmile máte předplatné Azure, vytvořte si prostředek Počítačové zpracování obrazu pro úroveň Standard S1 v Počítačové zpracování obrazu prostředek Počítačové zpracování obrazu, abyste si Azure Portal klíč a koncový bod. Po nasazení klikněte na Přejít k prostředku.
- Ke spuštění kontejneru prostorové analýzy budete potřebovat klíč a koncový bod z prostředku, který vytvoříte. Svůj klíč a koncový bod použijete později.
Požadavky na kontejner prostorové analýzy
Ke spuštění kontejneru Spatial Analysis potřebujete výpočetní zařízení s GPU NVIDIA Tesla T4. Doporučujeme použít akceleraci Azure Stack Edge GPU, ale kontejner běží na jakémkoli jiném stolním počítači, který splňuje minimální požadavky. Na toto zařízení budeme odkazovat jako na hostitelský počítač.
Azure Stack Edge je hardwarové řešení jako služba a hraniční výpočetní zařízení s podporou AI s funkcemi síťového přenosu dat. Podrobné pokyny k přípravě a nastavení najdete v Azure Stack Edge dokumentaci.
| Požadavek | Popis |
|---|---|
| Camera | Kontejner prostorové analýzy není svázán s konkrétní značkou fotoaparátu. Zařízení fotoaparátu musí podporovat kódování rtSP (Real-Time Streaming Protocol) a H.264, musí být přístupné pro hostitelský počítač a musí být schopné streamovat v rozlišení 15FPS a 1080p. |
| Operační systém Linux | Na hostitelském počítači musí být nainstalovaný Ubuntu Desktop 18.04 LTS. |
Nastavení hostitelského počítače
Pro hostitelský počítač doporučujeme použít Azure Stack Edge počítače. Pokud konfigurujete jiné zařízení, klikněte na Desktopový počítač, nebo na Virtuální počítač, pokud používáte virtuální počítač.
Konfigurace výpočetních prostředků na Azure Stack Edge Portal
Prostorová analýza používá výpočetní funkce Azure Stack Edge ke spuštění řešení AI. Pokud chcete povolit výpočetní funkce, ujistěte se, že:
- Připojili jste se a aktivovali jste Azure Stack Edge zařízení.
- Pro přístup k Windows máte klientský systém s PowerShellem 5.0 nebo novějším.
- Pokud chcete nasadit cluster Kubernetes, musíte nakonfigurovat Azure Stack Edge zařízení přes místní uživatelské rozhraní na Azure Portal:
- Povolte výpočetní funkci na svém Azure Stack Edge zařízení. Pokud chcete povolit výpočetní prostředky, přejděte na stránku Compute ve webovém rozhraní vašeho zařízení.
- Vyberte síťové rozhraní, které chcete povolit pro výpočty, a pak klikněte na Povolit. Tím se na vašem zařízení v tomto síťovém rozhraní vytvoří virtuální přepínač.
- IP adresy testovacího uzlu Kubernetes a IP adresy externích služeb Kubernetes nechte prázdné.
- Klikněte na Použít. Tato operace může trvat přibližně dvě minuty.

Nastavení výpočetní role Edge a vytvoření IoT Hub prostředků
V Azure Portalpřejděte ke svému Azure Stack Edge prostředků. Na stránce Přehled nebo v navigačním seznamu klikněte na tlačítko Začít s výpočetními prostředky Edge. Na dlaždici Konfigurace výpočetních prostředků Edge klikněte na Konfigurovat.

Na stránce Konfigurace výpočetních prostředků Edge zvolte existující IoT Hub nebo vytvořte novou. Ve výchozím nastavení se k vytvoření prostředku úložiště používá cenová úroveň Standard (IoT Hub S1). Pokud chcete pro prostředek IoT Hub úroveň Free, vytvořte ji a pak ji vyberte. Prostředek IoT Hub používá stejné předplatné a skupinu prostředků, které používá Azure Stack Edge prostředků.
Klikněte na Vytvořit. Vytvoření IoT Hub může trvat několik minut. Po vytvoření IoT Hub se dlaždice Configure Edge compute (Konfigurace výpočetních prostředků Edge) aktualizuje a zobrazí novou konfiguraci. Pokud chcete ověřit, že je výpočetní role Edge nakonfigurovaná, vyberte Zobrazit konfiguraci na dlaždici Konfigurace výpočetních prostředků.
Když je výpočetní role Edge nastavená na hraničním zařízení, vytvoří dvě zařízení: zařízení IoT a IoT Edge zařízení. Obě zařízení je možné zobrazit v IoT Hub prostředku. Modul Azure IoT Edge Runtime už bude spuštěný na IoT Edge zařízení.
Poznámka
- V současné době se pro zařízení s Windows podporuje IoT Edge platformě Linux. Nápovědu k řešení potíží Azure Stack Edge zařízení najdete v článku o protokolování a řešení potíží.
- Další informace o tom, jak nakonfigurovat IoT Edge komunikovat přes proxy server, najdete v tématu Konfigurace IoT Edge zařízení pro komunikaci přes proxy server
Povolení MPS na Azure Stack Edge
Pomocí těchto kroků se můžete vzdáleně připojit z Windows klienta.
Spusťte Windows PowerShell jako správce.
Ujistěte se, Windows ve vašem klientovi spuštěná služba Vzdálená správa. Na příkazovém řádku zadejte:
winrm quickconfigDalší informace najdete v tématu Instalace a konfigurace pro Windows správu.
Přiřaďte proměnnou k připojovacímu řetězci použitému v
hostssouboru.$Name = "<Node serial number>.<DNS domain of the device>"Nahraďte
<Node serial number><DNS domain of the device>a sériovým číslem uzlu a doménou DNS vašeho zařízení. Hodnoty sériového čísla uzlu můžete získat ze stránky Certifikáty a domény DNS ze stránky Zařízení v místním webovém uživatelském rozhraní vašeho zařízení.Pokud chcete přidat tento připojovací řetězec pro vaše zařízení do seznamu důvěryhodných hostitelů klienta, zadejte následující příkaz:
Set-Item WSMan:\localhost\Client\TrustedHosts $Name -Concatenate -ForceSpusťte Windows PowerShell na zařízení:
Enter-PSSession -ComputerName $Name -Credential ~\EdgeUser -ConfigurationName Minishell -UseSSLPokud se zobrazí chyba související s vztahem důvěryhodnosti, zkontrolujte, jestli je na klientovi, který přistupuje k vašemu zařízení, nainstalovaný také řetěz podepisování certifikátu uzlu nahraného do vašeho zařízení.
Po zobrazení výzvy zadejte heslo. Použijte stejné heslo, které se používá pro přihlášení k místnímu webovému uživatelskému rozhraní. Výchozí heslo místního webového uživatelského rozhraní je Password1. Po úspěšném připojení k zařízení pomocí vzdáleného prostředí PowerShell se zobrazí následující ukázkový výstup:
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>
Manifest nasazení IoT
Pokud chcete zjednodušit nasazení kontejneru na více hostitelských počítačích, můžete vytvořit soubor manifestu nasazení, který specifikuje možnosti vytvoření kontejneru a proměnné prostředí. Příklad manifestu nasazení pro Azure Stack Edge,další stolnípočítače a virtuální počítač Azure s GPU najdete na GitHub.
Následující tabulka uvádí různé proměnné prostředí používané modulem IoT Edge Module. Můžete je také nastavit v manifestu nasazení uvedeném výše pomocí env atributu v spatialanalysis souboru :
| Název nastavení | Hodnota | Popis |
|---|---|---|
| ARCHON_LOG_LEVEL | Příjemce Podrobné | Úroveň protokolování, vyberte jednu ze dvou hodnot. |
| ARCHON_SHARED_BUFFER_LIMIT | 377487360 | Neupravovat |
| ARCHON_PERF_MARKER | false (nepravda) | Nastavte tuto hodnotu na true pro protokolování výkonu, v opačném případě by měla být false. |
| ARCHON_NODES_LOG_LEVEL | Příjemce Podrobné | Úroveň protokolování, vyberte jednu ze dvou hodnot. |
| OMP_WAIT_POLICY | PASIVNÍ | Neupravovat |
| QT_X11_NO_MITSHM | 1 | Neupravovat |
| APIKEY | váš klíč rozhraní API | Tuto hodnotu z prostředku Počítačové zpracování obrazu Shromážděte z Azure Portal. Můžete ji najít v části klíč a koncový bod pro váš prostředek. |
| FAKTURACE | identifikátor URI koncového bodu | Tuto hodnotu z prostředku Počítačové zpracování obrazu Shromážděte z Azure Portal. Můžete ji najít v části klíč a koncový bod pro váš prostředek. |
| KONKRÉTNÍ | vyjádřit | Tato hodnota musí být nastavena na hodnotu přijmout , aby bylo možné kontejner spustit. |
| Otevřete | : 1 | Tato hodnota musí být stejná jako výstup echo $DISPLAY na hostitelském počítači. Hraniční zařízení Azure Stack neobsahují displej. Toto nastavení se nedá použít. |
| ARCHON_GRAPH_READY_TIMEOUT | 600 | Tuto proměnnou prostředí přidejte, pokud vaše GPU nemá T4 nebo NVIDIA 2080 ti. |
| ORT_TENSORRT_ENGINE_CACHE_ENABLE | 0 | Tuto proměnnou prostředí přidejte, pokud vaše GPU nemá T4 nebo NVIDIA 2080 ti. |
| KEY_ENV | Šifrovací klíč pomocného mechanismu | Přidejte tuto proměnnou prostředí, pokud Video_URL je nejasný řetězec. |
| IV_ENV | Inicializační vektor | Přidejte tuto proměnnou prostředí, pokud Video_URL je nejasný řetězec. |
Důležité
Eula Billing ApiKey Aby bylo možné spustit kontejner, musí být zadány možnosti, a. v opačném případě se kontejner nespustí. Další informace najdete v tématu fakturace.
Když aktualizujete manifest nasazení pro Azure Stack hraniční zařízení, stolní počítač nebo virtuální počítač Azure s grafickým procesorem s vlastním nastavením a výběrem operací, můžete k nasazení kontejneru v hostitelském počítači, jako je IoT Edge modul, použít následující příkaz Azure CLI .
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>"
| Parametr | Popis |
|---|---|
--hub-name |
Název Azure IoT Hub. |
--content |
Název souboru nasazení. |
--target-condition |
Název zařízení IoT Edge pro hostitelský počítač. |
-–subscription |
ID nebo název předplatného |
Tento příkaz spustí nasazení. Přejděte na stránku vaší instance Azure IoT Hub v Azure Portal a zobrazte stav nasazení. Stav může být zobrazený jako 417 – konfigurace nasazení zařízení není nastavená , dokud zařízení nedokončí stahování imagí kontejneru a začne běžet.
Ověření úspěšného nasazení
Existuje několik způsobů, jak ověřit, zda je kontejner spuštěn. vyhledejte běhový stav v modulu IoT Edge Nastavení pro modul prostorové analýzy v instanci služby Azure IoT Hub na Azure Portal. Ověřte, zda je spuštěna požadovaná hodnota a hlášené hodnoty pro běhový stav .

Po dokončení nasazení a spuštění kontejneru se v hostitelském počítači začnou odesílat události do Azure IoT Hub. Pokud jste použili .debug verzi operací, zobrazí se okno Vizualizátor pro každý fotoaparát, který jste nakonfigurovali v manifestu nasazení. Nyní můžete definovat řádky a zóny, které chcete monitorovat v manifestu nasazení, a podle pokynů znovu nasadit.
Konfigurace operací prováděných prostorovou analýzou
K nakonfigurování kontejneru pro použití připojených fotoaparátů, konfiguraci operací a dalších operací budete muset použít operace prostorové analýzy . Pro každé zařízení kamery, které nakonfigurujete, se operace pro prostorovou analýzu vygenerují výstupní proud zpráv JSON, které se odešlou do vaší instance Azure IoT Hub.
Použít výstup generovaný kontejnerem
Pokud chcete začít spotřebovávat výstup generovaný kontejnerem, přečtěte si následující články:
- K připojení ke koncovému bodu Azure IoT Hub a příjmu událostí použijte sadu Azure Event hub SDK pro zvolený programovací jazyk. Další informace najdete v tématu čtení zpráv ze zařízení do cloudu z integrovaného koncového bodu .
- nastavte směrování zpráv v azure IoT Hub pro odesílání událostí do jiných koncových bodů nebo ukládání událostí do Azure Blob Storage atd. Další informace najdete v tématu IoT Hub směrování zpráv .
Spuštění prostorové analýzy s nahraným videosouborem
Můžete použít prostorovou analýzu s nahraným nebo živým videem. Pokud chcete použít prostorovou analýzu pro zaznamenané video, zkuste nahrávat videosoubor a uložit ho jako soubor MP4. Vytvořte účet Blob Storage v Azure nebo použijte existující. Pak v Azure Portal aktualizujte následující nastavení úložiště objektů BLOB: 1. Změnit zabezpečený přenos vyžadovaný jako zakázaný 2. Změnit povolený veřejný přístup k objektu BLOB
Přejděte do části Container a buď vytvořte nový kontejner, nebo použijte existující. Pak odešlete videosoubor do kontejneru. Rozbalte nastavení souboru pro nahraný soubor a vyberte Generovat SAS. Nezapomeňte nastavit Datum vypršení platnosti dostatečně dlouho na pokrytí období testování. Nastavte Povolené protokoly na http (https není podporované).
Klikněte na vygenerovat token SAS a adresu URL a zkopírujte adresu URL SAS objektu BLOB. Nahraďte začínající https http a otestujte adresu URL v prohlížeči, který podporuje přehrávání videa.
Nahraďte VIDEO_URL v manifestu nasazení pro vaše Azure Stack hraniční zařízení, stolní počítačnebo virtuální počítač Azure pomocí GPU s adresou URL, kterou jste vytvořili, pro všechny grafy. Nastavte VIDEO_IS_LIVE na false a znovu nasaďte kontejner prostorové analýzy s aktualizovaným manifestem. Viz následující příklad.
Modul pro prostorové analýzy začne spotřebovávat videosoubor a bude se nepřetržitě automaticky přehrávat také.
"zonecrossing": {
"operationId" : "cognitiveservices.vision.spatialanalysis-personcrossingpolygon",
"version": 1,
"enabled": true,
"parameters": {
"VIDEO_URL": "Replace http url here",
"VIDEO_SOURCE_ID": "personcountgraph",
"VIDEO_IS_LIVE": false,
"VIDEO_DECODE_GPU_INDEX": 0,
"DETECTOR_NODE_CONFIG": "{ \"gpu_index\": 0, \"do_calibration\": true }",
"SPACEANALYTICS_CONFIG": "{\"zones\":[{\"name\":\"queue\",\"polygon\":[[0.3,0.3],[0.3,0.9],[0.6,0.9],[0.6,0.3],[0.3,0.3]], \"events\": [{\"type\": \"zonecrossing\", \"config\": {\"threshold\": 16.0, \"focus\": \"footprint\"}}]}]}"
}
},
Řešení potíží
Pokud narazíte na problémy při spuštění nebo spuštění kontejneru, přečtěte si téma telemetrie a řešení potíží , kde najdete kroky pro běžné problémy. Tento článek obsahuje také informace o generování a shromažďování protokolů a shromažďování stavu systému.
Pokud máte potíže se spuštěním kontejneru služeb Cognitive Services, můžete zkusit použít diagnostický kontejner Microsoftu. S využitím tohoto kontejneru můžete diagnostikovat běžné chyby ve vašem vývojovém prostředí, které můžou bránit kontejnerům služeb Cognitive Services, aby fungovaly podle očekávání.
K získání kontejneru použijte následující příkaz pull Dockeru:
docker pull mcr.microsoft.com/azure-cognitive-services/diagnostic
Pak spusťte kontejner, {ENDPOINT_URI} nahraďte koncovým bodem a nahraďte {API_KEY} klíčem vašeho prostředku:
docker run --rm mcr.microsoft.com/azure-cognitive-services/diagnostic \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}
Kontejner otestujte síťové připojení ke koncovému bodu fakturace.
Fakturace
Kontejner prostorové analýzy odesílá informace o fakturaci do Azure pomocí Počítačové zpracování obrazu prostředku na vašem účtu Azure. Použití prostorové analýzy ve verzi Public Preview je aktuálně zdarma.
Azure Cognitive Services kontejnery nemají licenci ke spuštění bez připojení ke koncovému bodu měření nebo fakturace. Kontejnerům musíte za všech okolností povolit, aby s fakturačním koncovým bodem komunikovali fakturační údaje. Cognitive Services kontejnery neposílat zákaznická data, jako je například analyzované video nebo obrázek, do Microsoftu.
Souhrn
V tomto článku jste se naučili koncepty a pracovní postupy pro stažení, instalaci a spuštění kontejneru prostorové analýzy. Souhrn:
- Prostorová analýza je kontejner Linuxu pro Docker.
- Image kontejnerů se stáhnou z Microsoft Container Registry.
- Image kontejnerů běží jako moduly IoT v Azure IoT Edge.
- Jak nakonfigurovat kontejner a nasadit ho na hostitelský počítač.
