Interfejsy użytkownika i scenariusze dla usługi Azure IoT Edge vision AI
W tym ostatnim artykule w serii AI przetwarzania obrazów usługi Azure IoT Edge omówiono sposób interakcji użytkowników z Internetem rzeczy (IoT) i rozwiązaniami sztucznej inteligencji (AI). W tym artykule przedstawiono również dwa przykładowe scenariusze sztucznej inteligencji do przetwarzania obrazów usługi IoT Edge.
Interfejsy użytkownika
Użytkownicy korzystają z systemów komputerowych za pośrednictwem interfejsu użytkownika. Wymagania interfejsu użytkownika różnią się w zależności od ogólnych celów. Systemy IoT zwykle mają cztery typy interfejsów użytkownika:
- Interfejs użytkownika administratora umożliwia pełny dostęp do aprowizacji urządzeń, konfiguracji urządzenia i rozwiązania oraz zarządzania użytkownikami. Te funkcje mogą być częścią jednego rozwiązania lub oddzielnych rozwiązań.
- Interfejs użytkownika operatora zapewnia dostęp do składników operacyjnych rozwiązania, takich jak zarządzanie urządzeniami, monitorowanie alertów i konfiguracja.
- Interfejs użytkownika klienta ma zastosowanie tylko do rozwiązań przeznaczonych dla konsumentów. Interfejs użytkownika jest podobny do interfejsu operatora, ale jest ograniczony do urządzeń, które jest właścicielem użytkownika.
- Interfejs użytkownika analizy to interaktywny pulpit nawigacyjny, który udostępnia wizualizacje telemetryczne i inne analizy danych.
Wybór technologi
Oto niektóre usługi i oprogramowanie, których można użyć do tworzenia interfejsów użytkownika dla systemów sztucznej inteligencji obrazów usługi IoT Edge:
aplikacja systemu Azure Service to platforma umożliwiająca deweloperom szybkie tworzenie, wdrażanie i skalowanie aplikacji internetowych i mobilnych. Usługa App Service obsługuje platformy, takie jak .NET, .NET Core, Node.js, Java, PHP, Ruby lub Python. Aplikacje mogą znajdować się w kontenerach lub działać na dowolnym obsługiwanym systemie operacyjnym, urządzeniu przenośnym lub sprzęcie usługi IoT Edge. W pełni zarządzana platforma App Service spełnia wymagania dotyczące wydajności, zabezpieczeń i zgodności klasy korporacyjnej.
Usługa Azure SignalR Service dodaje komunikację i raportowanie danych w czasie rzeczywistym do aplikacji bez konieczności dogłębnej wiedzy w zakresie komunikacji w czasie rzeczywistym. Usługa SignalR Service łatwo integruje się z wieloma usługami platformy Azure.
Azure Mapy to technologia wizualizacji IoT i projektów przetwarzania obrazów. Usługa Azure Mapy umożliwia tworzenie aplikacji internetowych i mobilnych obsługujących lokalizację przy użyciu prostych i bezpiecznych usług geoprzestrzennych, interfejsów API i zestawów SDK. Usługa Azure Mapy ma wbudowaną analizę lokalizacji od partnerów technologicznych na całym świecie. Możesz dostarczać bezproblemowe środowiska na podstawie danych geoprzestrzennych.
Usługa Microsoft Entra ID zapewnia logowanie jednokrotne i uwierzytelnianie wieloskładnikowe w celu zabezpieczenia aplikacji i interfejsów użytkownika.
Usługa Power BI to zestaw usług analitycznych, aplikacji i łączników, które przekształcają dane w możliwe do dostosowania, interaktywne wizualizacje i pulpity nawigacyjne. Usługa Power BI jest dostępna jako usługa zarządzana lub pakiet self-hosted oraz łączy się z wieloma popularnymi systemami baz danych i usługami danych. Usługa Power BI Embedded umożliwia tworzenie raportów i pulpitów nawigacyjnych przeznaczonych dla klientów oraz oznaczanie ich jako własnych aplikacji. Usługa Power BI może oszczędzać zasoby dla deweloperów, automatyzując monitorowanie analiz, zarządzanie i wdrażanie.
Scenariusz użytkownika 1: Kontrola jakości
Tablice Firmy Contoso produkują wysokiej jakości tablice obwodowe używane w komputerach. Ich produkt numer jeden jest płytą główną.
Firma Contoso Boards odnotowała wzrost problemów z umieszczaniem mikroukładów na tablicy. Badanie wykazało, że płytki obwodowe były niepoprawnie umieszczone na linii montażowej. Firma Contoso Boards potrzebowała sposobu identyfikowania i sprawdzania prawidłowego umieszczania tablicy obwodowej.
Analitycy danych usługi Contoso Boards znali tensorFlow i chcieli nadal używać jej jako podstawowej struktury modelu uczenia maszynowego. Firma Contoso Boards chciała również scentralizować zarządzanie kilkoma liniami montażowymi, które produkują płyty główne.
Rozwiązanie Contoso Boards koncentruje się na wykrywaniu krawędzi.
Kamera
Następujące opcje aparatu obsługują to obciążenie:
- Aparat położenie: Kamera znajduje się bezpośrednio powyżej o 90 stopni i około 16 cali od części.
- Aparat typ: Ponieważ system przenośnika porusza się stosunkowo wolno, rozwiązanie może używać kamery skanowej obszaru z migawką globalną.
- Szybkość klatek: w tym przypadku użycia aparat przechwytuje około 30 klatek na sekundę.
- Rozwiązanie: Formuła wymagana rozdzielczość to
Res=(object size) / (details to capture)
. Na podstawie tej formuły,Res=16"/8"
daje 2 megapiksele (MP) wx
i 4MP wy
, więc Contoso Boards potrzebuje aparatu zdolnego do rozdzielczości 4MP. - Typ czujnika: Cele nie są szybko przenoszone i wymagają tylko wykrywania krawędzi, więc czujnik CMOS działa dobrze.
- Oświetlenie: Rozwiązanie używa białego rozproszonego światła wstecznego filtru. To oświetlenie sprawia, że część wygląda prawie czarno, z dużym kontrastem do wykrywania krawędzi.
- Kolor: Monochromatyczny zapewnia najostrzejsze krawędzie modelu wykrywania sztucznej inteligencji.
Na poniższej ilustracji przedstawiono, co kamera przechwytuje w tym scenariuszu:
Przyspieszanie sprzętowe
W oparciu o obciążenie użycie biblioteki TensorFlow i użycie na kilku liniach montażowych sprzęt oparty na procesorze GPU jest najlepszym wyborem w przypadku przyspieszania sprzętowego.
Model uczenia maszynowego
Analitycy danych są najbardziej zaznajomieni z tensorFlow, więc uczenie się ONNX lub innych struktur uczenia maszynowego spowolni tworzenie modeli. Usługa Azure Stack Edge udostępnia centralnie zarządzane rozwiązanie brzegowe dla wszystkich linii zestawów.
Scenariusz użytkownika 2: Sejf ty
Firma Contoso Shipping miała kilka wypadków dla pieszych na ich zadokach ładowania. Większość wypadków miała miejsce, gdy ciężarówka opuściła dok ładowania, a kierowca nie widział pracownika docka idącego przed ciężarówką. Firma Contoso Shipping potrzebowała rozwiązania do analizy sztucznej inteligencji, które może obserwować ludzi, przewidywać kierunek podróży i ostrzegać kierowców przed potencjalnymi kolizjami.
Większość analityków danych w firmie Contoso Shipping zna platformę OpenVINO i chciała ponownie wykorzystać modele rozwiązań na przyszłym sprzęcie. Rozwiązanie potrzebne również do obsługi wydajności zasilania i korzystania z najmniejszej możliwej liczby kamer. Na koniec firma Contoso Shipping chciała zdalnie zarządzać rozwiązaniem pod kątem aktualizacji.
Kamery
Rozwiązanie używa 11 monochromatycznych, 10MP kamer CMOS z obudowami IPX67 lub skrzynkami pogodowymi, zamontowanymi na słupach 17 stóp, 100 metrów od ciężarówek. W poniższych sekcjach opisano sposób określania tych specyfikacji przez firmę Contoso Shipping.
Umieszczanie kamery
Aparat musiał być 100 metrów od frontów ciężarówek. Aparat fokus musiał być 10 stóp przed i za frontami ciężarówek, dając 20-stopową głębokość ostrości. Lokalne przepisy dotyczące zagospodarowania strefowego ograniczają wysokość kamery nadzoru do 20 stóp.
Poniższa ilustracja przedstawia umieszczanie aparatu w tym scenariuszu:
Rozdzielczość i pole widoku
Rozwiązanie musi przechwytywać tylko wystarczającą ilość szczegółów, aby wykryć osobę w ramce. Piksele na stopę (PPF) mogą wynosić około 15–20, a nie 80 PPF, których potrzebuje rozpoznawanie twarzy.
Formuła pola widoku (FOV) to FOV=(horizontal resolution) / (PPF)
. W celu rozwiązania aparat musi użyć odpowiedniego czujnika w przypadku użycia.
To rozwiązanie używa obiektywów aparatów, które umożliwiają 16-stopowy FOV. Korzystając z powyższej formuły, 16-stopowy FOV daje około 17,5 PPF, który należy do wymaganej 15-20 PPF. To FOV oznacza, że rozwiązanie powinno używać kamer 10MP, które mają rozdzielczość poziomą około 5184 pikseli.
Ponieważ kamery mogą spojrzeć na 16-metrową ścieżkę, 165-metrowy dok ładowania podzielony przez 16-stopowy FOV daje 10,3125 kamer. Dlatego rozwiązanie wymaga kamer 11, 5184 pikseli w poziomie lub 10MP.
Typ czujnika
Kamery są na zewnątrz, więc typ czujnika nie powinien zezwalać na rozkwit. Bloom jest, gdy światło uderza w czujnik i przeciąża czujnik, powodując nadmierne naświetlenie lub wybielanie. CMOS to wybrany czujnik.
Kolor i oświetlenie
Firma Contoso Shipping działa 24/7 i musi również chronić personel w nocy. Monochromatyczny radzi sobie z małymi światłami lepiej niż kolor. W takim przypadku informacje o kolorach są niepotrzebne. Czujniki monochromatyczne są również tańsze.
Model uczenia maszynowego
Ponieważ analitycy danych znają platformę OpenVINO, rozwiązanie tworzy modele danych w środowisku ONNX.
Przyspieszanie sprzętowe
Odległość od kamer do serwerów jest zbyt daleko w przypadku łączności Gigabit Ethernet lub USB, ale istnieje duża sieć Wi-Fi siatki. Sprzęt musi łączyć się za pośrednictwem sieci Wi-Fi i używać możliwie najmniejszej mocy.
Na podstawie tych wymagań rozwiązanie korzysta z procesorów FPGA. Rozwiązanie może również używać procesorów ASIC, ale specjalnie utworzone mikroukłady ASIC nie spełniają wymagań dotyczących przyszłej użyteczności.
Współautorzy
Ten artykuł jest obsługiwany przez firmę Microsoft. Pierwotnie został napisany przez następujących współautorów.
Główny autor:
- Keith Hill | Starszy menedżer pm
Aby wyświetlić niepubalne profile serwisu LinkedIn, zaloguj się do serwisu LinkedIn.
Następne kroki
W tej serii artykułów opisano sposób tworzenia obciążenia sztucznej inteligencji obrazów za pomocą usługi Azure IoT Edge. Inne artykuły z tej serii można znaleźć w następujących artykułach:
- Omówienie sztucznej inteligencji usługi Azure IoT Edge
- wybór Aparat dla usługi Azure IoT Edge vision AI
- Przyspieszanie sprzętowe w usłudze Azure IoT Edge vision AI
- Uczenie maszynowe i nauka o danych w usłudze Azure IoT Edge vision AI
- Magazyn obrazów i zarządzanie nimi dla usługi Azure IoT Edge vision AI
Aby dowiedzieć się więcej na temat sieci CNN, sztucznej inteligencji przetwarzania obrazów, usługi Azure Machine Edukacja i usługi Azure IoT Edge, zobacz następującą dokumentację:
- Dokumentacja usługi Azure IoT Edge
- Dokumentacja usługi Azure Machine Learning
- Samouczek: przeprowadzanie klasyfikacji obrazów na urządzeniach brzegowych za pomocą usługi Custom Vision Service
- Co to jest przetwarzanie obrazów?
- Dokumentacja zestawu deweloperów Azure Kinect DK
- Open Neural Network Exchange (ONNX) ML framework
- Narzędzie ML do zarządzania modelami głębokiej sieci neuronowej (MMdnn)
Powiązane zasoby
Aby uzyskać więcej architektur przetwarzania obrazów, przykładów i pomysłów korzystających z usługi Azure IoT, zobacz następujące artykuły:
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla