Kompletní počítačové zpracování obrazu na hraničních zařízeních pro výrobu

Azure Data Factory
Azure IoT Edge
Azure IoT Hub
Azure Machine Learning
Azure Pipelines

Tato ukázková architektura ukazuje ucelený přístup k počítačovému zpracování obrazu internetu věcí (IoT) ve výrobě.

Architektura

Diagram showing the end-to-end approach to computer vision from the edge to the cloud and back.

Stáhněte si soubor aplikace Visio s touto architekturou.

Tok dat

  1. Vlastní modul IoT Edge zachytí stream živého videa, rozdělí ho na snímky a provede odvozování dat obrázku, aby zjistil, jestli došlo k incidentu.
  2. Vlastní modul také používá metody sady Sdk služby Azure Storage nebo rozhraní API objektů blob k nahrání nezpracovaných videosouborů do Služby Azure Storage, které funguje jako nezpracované úložiště médií.
  3. Vlastní modul odesílá výsledky odvozování a metadat do Azure IoT Hubu, který funguje jako centrum zpráv pro komunikaci v obou směrech.
  4. Azure Logic Apps monitoruje ioT Hub pro zprávy o událostech incidentů. Logic Apps směruje výsledky a metadata do Microsoft Dataverse pro úložiště.
  5. Když dojde k incidentu, Služba Logic Apps pošle technikům webu SMS a e-mailová oznámení. Technik webu používá mobilní aplikaci založenou na Power Apps k potvrzení a vyřešení incidentu.
  6. Power Apps načítá odvozování výsledků a metadat z dataverse a nezpracovaných videosouborů ze služby Blob Storage, aby se zobrazily relevantní informace o incidentu. Power Apps aktualizuje Dataverse řešením incidentu, které poskytl technik webu. Tento krok funguje jako ověření smyčky člověka v rámci smyčky pro účely opětovného trénování modelu.
  7. Azure Data Factory je orchestrátor dat, který načítá nezpracované videosoubory z úložiště nezpracovaných médií a získá odpovídající výsledky odvozování a metadata z Dataverse.
  8. Data Factory ukládá nezpracované videosoubory a metadata ve službě Azure Data Lake, která slouží jako archiv videí pro účely auditování.
  9. Služba Data Factory rozdělí nezpracované videosoubory na snímky, převede výsledky odvozování na popisky a nahraje data do služby Blob Storage, která funguje jako úložiště dat ML.
  10. Změny kódu modelu automaticky aktivují kanál orchestratoru modelu Azure Pipelines, který můžou operátory aktivovat také ručně. Změny kódu také spustí proces trénování a ověřování modelu ML ve službě Azure Machine Učení.
  11. Azure Machine Učení začne trénovat model tím, že ověřuje data z úložiště dat ML a kopíruje požadované datové sady do Azure Premium Blob Storage. Tato úroveň výkonu poskytuje mezipaměť dat pro rychlejší trénování modelu.
  12. Azure Machine Učení používá datovou sadu v mezipaměti dat Premium k trénování modelu, ověření výkonu vytrénovaného modelu, jeho skóre proti nově natrénovaného modelu a registraci modelu do registru Azure Machine Učení.
  13. Orchestrátor modelů Azure Pipelines zkontroluje výkon nově natrénovaného modelu ML a určí, jestli je lepší než předchozí modely. Pokud nový model funguje lépe, kanál stáhne model ze služby Azure Machine Učení a sestaví novou verzi modulu odvozování ML pro publikování ve službě Azure Container Registry.
  14. Když je připravený nový modul odvozování ML, Azure Pipelines nasadí kontejner modulu z Container Registry do modulu IoT Edge ve službě IoT Hub.
  15. IoT Hub aktualizuje zařízení IoT Edge pomocí nového modulu odvozování ML.

Součásti

  • Služba Azure IoT Edge analyzuje data zařízení místně, aby odesílala méně dat do cloudu, rychle reagovala na události a fungovala v podmínkách s nízkým připojením. Modul IoT Edge ML dokáže extrahovat užitečné přehledy ze streamovaných dat videa.
  • Azure IoT Hub je spravovaná služba, která umožňuje spolehlivou a zabezpečenou obousměrnou komunikaci mezi miliony zařízení IoT a cloudovým back-endem. IoT Hub poskytuje ověřování podle zařízení, směrování zpráv, integraci s dalšími službami Azure a funkce správy pro řízení a konfiguraci zařízení IoT.
  • Azure Logic Apps je bezserverová cloudová služba pro vytváření a spouštění automatizovaných pracovních postupů, které integrují aplikace, data, služby a systémy. Vývojáři můžou pomocí vizuálního návrháře plánovat a orchestrovat běžné pracovní postupy úloh. Logic Apps má konektory pro mnoho oblíbených cloudových služeb, místních produktů a dalších aplikací saaS (software jako služba). V tomto řešení služba Logic Apps spouští pracovní postup automatizovaného oznámení, který posílá technikům webu SMS a e-mailová upozornění.
  • Power Apps je datová platforma a sada aplikací, služeb a konektorů. Slouží jako rychlé vývojové prostředí aplikací. Podkladová datová platforma je Microsoft Dataverse.
  • Dataverse je cloudová platforma úložiště pro Power Apps. Dataverse podporuje oznámení lidské smyčky a ukládá metadata přidružená k datovému kanálu MLOps.
  • Azure Blob Storage je škálovatelné a zabezpečené úložiště objektů pro nestrukturovaná data. Můžete ho použít pro archivy, datová jezera, vysokovýkonné výpočetní prostředí, strojové učení a úlohy nativní pro cloud. V tomto řešení poskytuje úložiště objektů blob místní úložiště dat pro úložiště dat ML a mezipaměť dat Premium pro trénování modelu ML. Úroveň Premium služby Blob Storage je určená pro úlohy, které vyžadují rychlé doby odezvy a vysoké míry transakcí, jako je popisek videa ve smyčce v tomto příkladu.
  • Data Lake Storage je široce škálovatelná a zabezpečená služba úložiště pro vysoce výkonné analytické úlohy. Data obvykle pocházejí z více heterogenních zdrojů a mohou být strukturovaná, částečně strukturovaná nebo nestrukturovaná. Azure Data Lake Storage Gen2 kombinuje funkce Azure Data Lake Storage Gen1 se službou Blob Storage a poskytuje sémantiku systému souborů, zabezpečení na úrovni souborů a škálování. Nabízí také vrstvené úložiště, vysokou dostupnost a možnosti zotavení po havárii služby Blob Storage. V tomto řešení poskytuje Data Lake Storage archivní úložiště videí pro nezpracované videosoubory a metadata.
  • Azure Data Factory je hybridní plně spravované bezserverové řešení pro integraci a transformaci dat. Poskytuje uživatelské rozhraní bez kódu a snadno použitelný monitorovací panel. Azure Data Factory používá kanály pro přesun dat. Mapování toků dat provádí různé úlohy transformace, jako je extrakce, transformace a načítání (ETL) a extrakce, načítání a transformace (ELT). V tomto příkladu data Factory orchestruje data v kanálu ETL na odvozovací data, která ukládá pro účely opětovného trénování.
  • Azure Machine Učení je služba strojového učení na podnikové úrovni pro rychlé sestavování a nasazování modelů. Poskytuje uživatelům na všech úrovních dovedností návrháře s nízkým kódem, automatizované strojové učení a hostované prostředí poznámkového bloku Jupyter, které podporuje různé prostředí IDEs.
  • Azure Pipelines, součást týmových vývojářských služeb Azure DevOps , vytváří kanály kontinuální integrace (CI) a průběžného nasazování (CD). V tomto příkladu orchestrátor modelů Azure Pipelines ověřuje kód ML, aktivuje kanály úloh bez serveru, porovnává modely ML a sestavuje odvozovací kontejner.
  • Container Registry vytvoří a spravuje registr Dockeru pro sestavování, ukládání a správu imagí kontejnerů Dockeru, včetně kontejnerizovaných modelů ML.
  • Azure Monitor shromažďuje telemetrická data z prostředků Azure, aby týmy mohly proaktivně identifikovat problémy a maximalizovat výkon a spolehlivost.

Alternativy

Místo použití datového kanálu k rozdělení streamu videa do snímků obrázků můžete do zařízení IoT Edge nasadit modul Azure Blob Storage. Modul odvozování pak nahraje odvozované snímky obrázků do modulu úložiště na hraničním zařízení. Modul úložiště určuje, kdy se mají snímky nahrát přímo do úložiště dat ML. Výhodou tohoto přístupu je odebrání kroku z datového kanálu. Nevýhodou je, že hraniční zařízení je úzce propojené se službou Azure Blob Storage.

K orchestraci modelů můžete použít Azure Pipelines nebo Azure Data Factory.

  • Výhodou Azure Pipelines je jeho úzká vazba s kódem modelu ML. Kanál trénování můžete snadno aktivovat pomocí změn kódu prostřednictvím CI/CD.
  • Výhodou služby Data Factory je, že každý kanál může zřídit požadované výpočetní prostředky. Služba Data Factory neudržuje agenty Azure Pipelines ke spuštění trénování ML, což by mohlo převést normální tok CI/CD.

Podrobnosti scénáře

Plně automatizované inteligentní továrny používají umělou inteligenci (AI) a strojové učení (ML) k analýze dat, spouštění systémů a zlepšování procesů v průběhu času.

V tomto příkladu fotoaparáty odesílají obrázky do zařízení Azure IoT Edge, na kterém běží model ML. Model vypočítá odvozování a odešle do cloudu akční výstup pro další zpracování. Lidské zásahy jsou součástí inteligentního zachycení modelu ML. Proces ML je nepřetržitý cyklus trénování, testování, ladění a ověřování algoritmů ML.

Potenciální případy použití

Výrobní procesy používají počítačové zpracování obrazu IoT v aplikacích pro bezpečnost a kontrolu kvality. Systémy počítačového zpracování obrazu IoT mohou:

  • Pomáhá zajistit dodržování pokynů pro výrobu, jako je správné označování.
  • Identifikujte výrobní vady, jako je nerovnoměrnost povrchu.
  • Zvyšte zabezpečení monitorováním vchodů do budovy nebo oblasti.
  • Zajištění bezpečnosti pracovníků detekcí používání osobních ochranných prostředků (OOP) a dalších bezpečnostních postupů.

Důležité informace

Tyto aspekty implementují pilíře dobře architektuře Azure, což je sada hlavních principů, které je možné použít ke zlepšení kvality úlohy. Další informace naleznete v tématu Microsoft Azure Well-Architected Framework.

Dostupnost

Aplikace založené na strojovém učení obvykle vyžadují jednu sadu prostředků pro trénování a jinou pro obsluhu. Školicí prostředky obecně nepotřebují vysokou dostupnost, protože požadavky na produkční prostředí v reálném provozu tyto prostředky přímo nepoužívají. Prostředky vyžadované pro obsluhu požadavků musí mít vysokou dostupnost.

Operace

Toto řešení je rozděleno do tří provozních oblastí:

  • V operacích IoT model ML na hraničním zařízení používá obrázky z připojených fotoaparátů v reálném čase k odvozování snímků videa. Hraniční zařízení také odesílá streamy videa uložené v mezipaměti do cloudového úložiště, které se použijí k auditování a opětovnému trénování modelu. Po opětovném vytrénování ML Azure IoT Hub aktualizuje hraniční zařízení pomocí nového modulu odvozování ML.

  • MLOps využívá postupy DevOps k orchestraci trénování, testování a operací nasazení modelu. Správa životního cyklu MLOps automatizuje proces použití modelů ML pro komplexní rozhodování nebo produkční nastavení modelů. Klíčem k MLOps je úzká koordinace mezi týmy, které sestavují, trénují, vyhodnocují a nasazují modely ML.

  • Operace lidské smyčky upozorňují lidi, aby vstoupili do určitých kroků v automatizaci. V transakcích mezi lidmi ve smyčce kontrolují a vyhodnocují výsledky predikcí strojového učení. Lidské zásahy se stanou součástí inteligence, která model ML zachycuje, a pomáhají model ověřit.

    Součástí tohoto řešení jsou následující lidské role:

    • Inženýři webu obdrží oznámení incidentu, která služba Logic Apps odesílá, a ručně ověří výsledky nebo předpovědi modelu ML. Technik lokality může například prozkoumat ventil, který model předpověděl, že selhal.

    • Popisovače dat označují datové sady pro opětovné natrénování, aby se dokončila smyčka komplexního řešení. Proces popisování dat je zvláště důležitý pro data obrázků jako první krok při trénování spolehlivého modelu prostřednictvím algoritmů. V tomto příkladu Azure Data Factory uspořádá snímky videa do pozitivních a falešně pozitivních seskupení, což usnadňuje práci popisovače dat.

    • Datoví vědci používají popisované datové sady k trénování algoritmů pro správné předpovědi v reálném životě. Datoví vědci používají MLOps s GitHub Actions nebo Azure Pipelines v procesu CI k automatickému trénování a ověření modelu. Trénování se dá aktivovat ručně nebo automaticky tak, že zkontrolujete nové trénovací skripty nebo data. Datoví vědci pracují v pracovním prostoru Azure Machine Učení, který může automaticky registrovat, nasazovat a spravovat modely.

    • Technici IoT používají Azure Pipelines k publikování modulů IoT Edge v kontejnerech do container Registry. Technici můžou nasadit a škálovat infrastrukturu na vyžádání pomocí kanálu CD.

    • Sejf ty auditoři kontrolují archivované video streamy a detekují anomálie, vyhodnocují dodržování předpisů a ověřují výsledky, když nastanou otázky týkající se předpovědí modelu.

    V tomto řešení ioT Hub ingestuje telemetrii z kamer a odesílá metriky do služby Azure Monitor, aby technici webu mohli prozkoumat a řešit potíže. Azure Machine Učení odesílá metriky pozorovatelnosti a telemetrii modelu do služby Azure Monitor a pomáhá technikům IoT a datovým vědcům optimalizovat operace.

Výkon

Zařízení IoT mají omezenou paměť a výpočetní výkon, takže je důležité omezit velikost kontejneru modelu odesílaného do zařízení. Ujistěte se, že používáte zařízení IoT, které dokáže odvozovat model a vede k přijatelnému množství času.

Pro optimalizaci výkonu pro trénovací modely používá tato ukázková architektura službu Azure Premium Blob Storage. Tato úroveň výkonu je určená pro úlohy, které vyžadují rychlou dobu odezvy a vysoké míry transakcí, jako je scénář popisování videa ve smyčce člověka.

Důležité informace o výkonu platí také pro kanál příjmu dat. Data Factory maximalizuje přesun dat tím, že poskytuje vysoce výkonné nákladově efektivní řešení.

Škálovatelnost

Většina komponent používaných v tomto řešení jsou spravované služby, které se automaticky škálují.

Škálovatelnost aplikace IoT závisí na kvótách a omezování služby IoT Hub. Mezi faktory, které je potřeba vzít v úvahu, patří:

  • Maximální denní kvóta zpráv odeslaných do služby IoT Hub.
  • Kvóta připojených zařízení v jedné instanci služby IoT Hub.
  • Příjem a zpracování propustnosti.

V ML škálovatelnost odkazuje na clustery se škálováním na více instancí, které se používají k trénování modelů s velkými datovými sadami. Škálovatelnost také umožňuje modelu ML splňovat požadavky aplikací, které ho využívají. Aby bylo možné tyto potřeby splnit, cluster ML musí poskytovat škálování na více instancí procesorů a na uzlech s podporou grafických procesorů (GPU).

Obecné pokyny k návrhu škálovatelných řešení najdete v kontrolním seznamu k efektivitě výkonu v Centru architektury Azure.

Zabezpečení

Zabezpečení poskytuje záruky proti záměrným útokům a zneužití cenných dat a systémů. Další informace najdete v tématu Přehled pilíře zabezpečení.

Správa přístupu v Dataverse a dalších službách Azure pomáhá zajistit, aby k prostředí, datům a sestavám měli přístup jenom autorizovaní uživatelé. Toto řešení používá azure Key Vault ke správě hesel a tajných kódů. Úložiště se šifruje pomocí klíčů spravovaných zákazníkem.

Obecné pokyny k návrhu zabezpečených řešení IoT najdete v dokumentaci k zabezpečení Azure a referenční architektuře Azure IoT.

Optimalizace nákladů

Optimalizace nákladů se zabývá způsoby, jak snížit zbytečné výdaje a zlepšit efektivitu provozu. Další informace najdete v tématu Přehled pilíře optimalizace nákladů.

K odhadu nákladů použijte cenovou kalkulačku Azure. Další důležité informace najdete v tématu Optimalizace nákladů.

Azure Machine Učení také nasazuje služby Container Registry, Azure Storage a Azure Key Vault, které účtují další náklady. Další informace najdete v tématu Jak azure Machine Učení funguje: Architektura a koncepty.

Ceny služby Azure Machine Učení zahrnují poplatky za virtuální počítače používané k trénování modelu v cloudu. Informace o dostupnosti Učení počítačů Azure a virtuálních počítačů na oblast Azure najdete v tématu Produkty dostupné v jednotlivých oblastech.

Přispěvatelé

Tento článek spravuje Microsoft. Původně byla napsána následujícími přispěvateli.

Hlavní autor:

Další kroky