Partilhar via


Interfaces de utilizador e cenários para a IA de visão do Azure IoT Edge

Este artigo final da série de visão de IA do Azure IoT Edge discute como os usuários interagem com soluções de Internet das Coisas (IoT) e inteligência artificial (IA). O artigo também apresenta dois exemplos de cenários de IA de visão do IoT Edge.

Interfaces de utilizador

Os usuários interagem com sistemas de computador através de uma interface de usuário (UI). Os requisitos da interface do usuário variam de acordo com os objetivos gerais. Os sistemas IoT geralmente têm quatro tipos de interface do usuário:

  • A interface do usuário do administrador permite acesso total ao provisionamento de dispositivos, configuração de dispositivos e soluções e gerenciamento de usuários. Esses recursos podem ser parte de uma solução ou soluções separadas.
  • Uma interface do usuário do operador fornece acesso aos componentes operacionais da solução, como gerenciamento de dispositivos, monitoramento de alertas e configuração.
  • Uma interface do usuário do consumidor se aplica apenas a soluções voltadas para o consumidor. A interface do usuário é semelhante à interface de um operador, mas é limitada aos dispositivos que o usuário possui.
  • Uma interface do usuário de análise é um painel interativo que fornece visualizações de telemetria e outras análises de dados.

Opções de tecnologia

Aqui estão alguns dos serviços e software que você pode usar para criar interfaces de usuário para sistemas de IA de visão IoT Edge:

  • O Serviço de Aplicativo do Azure é uma plataforma para os desenvolvedores criarem, implantarem e dimensionarem rapidamente aplicativos Web e móveis. O Serviço de Aplicativo suporta estruturas como .NET, .NET Core, Node.js, Java, PHP, Ruby ou Python. Os aplicativos podem estar em contêineres ou ser executados em qualquer sistema operacional compatível, dispositivo móvel ou hardware do IoT Edge. A plataforma do Serviço de Aplicativo totalmente gerenciada atende aos requisitos de desempenho, segurança e conformidade de nível empresarial.

  • O Serviço Azure SignalR adiciona comunicações de dados e relatórios em tempo real às aplicações, sem exigir conhecimentos aprofundados em comunicações em tempo real. O Serviço SignalR integra-se facilmente com muitos serviços do Azure.

  • O Azure Maps é uma tecnologia para visualização de IoT e projetos de visão computacional. O Azure Maps permite-lhe criar aplicações Web e móveis com reconhecimento de localização utilizando serviços geoespaciais, APIs e SDKs simples e seguros. O Azure Maps tem inteligência de localização integrada de parceiros tecnológicos mundiais. Você pode oferecer experiências perfeitas com base em dados geoespaciais.

  • O Microsoft Entra ID fornece logon único e autenticação multifator para proteger seus aplicativos e interfaces de usuário.

  • O Power BI é um conjunto de serviços de análise, aplicativos e conectores que transformam dados em visualizações e painéis personalizáveis e interativos. O Power BI está disponível como um serviço gerenciado ou pacote auto-hospedado e se conecta a muitos sistemas de banco de dados e serviços de dados populares. Com o Power BI Embedded, você pode criar relatórios e painéis voltados para o cliente e marcá-los como seus próprios aplicativos. O Power BI pode conservar os recursos do desenvolvedor automatizando o monitoramento, o gerenciamento e a implantação de análises.

Cenário do utilizador 1: Controlo de qualidade

A Contoso Boards produz placas de circuito de alta qualidade usadas em computadores. Seu produto número um é uma placa-mãe.

A Contoso Boards viu um aumento nos problemas com a colocação de chips na placa. A investigação determinou que as placas de circuito estavam sendo colocadas incorretamente na linha de montagem. As placas da Contoso precisavam de uma maneira de identificar e verificar o posicionamento correto da placa de circuito.

Os cientistas de dados do Contoso Boards estavam familiarizados com o TensorFlow e queriam continuar a usá-lo como sua estrutura principal de modelo de ML. A Contoso Boards também queria centralizar o gerenciamento de várias linhas de montagem que produzem as placas-mãe.

A solução Contoso Boards concentra-se na deteção de borda.

Câmara

As seguintes opções de câmera suportavam essa carga de trabalho:

  • Posicionamento da câmera: A câmera está diretamente acima em 90 graus e cerca de 16 polegadas da peça.
  • Tipo de câmera: Como o sistema transportador se move relativamente lentamente, a solução pode usar uma câmera de varredura de área com um obturador global.
  • Taxa de quadros: Para este caso de uso, a câmera captura cerca de 30 quadros por segundo.
  • Resolução: A fórmula para a resolução necessária é Res=(object size) / (details to capture). Com base nessa fórmula, Res=16"/8" dá 2 megapixels (MP) em x e 4MP em y, então a Contoso Boards precisa de uma câmera capaz de resolução de 4MP.
  • Tipo de sensor: Os alvos não se movem rapidamente e requerem apenas deteção de borda, portanto, um sensor CMOS funciona bem.
  • Iluminação: A solução usa uma luz de fundo de filtro difusa branca. Esta iluminação faz com que a peça pareça quase preta, com alto contraste para deteção de borda.
  • Cor: Monocromático produz as bordas mais nítidas para o modelo de deteção de IA.

A imagem a seguir mostra o que a câmera captura nesse cenário:

Imagem que mostra o que a câmera captura neste cenário do IoT Edge.

Aceleração por hardware

Com base na carga de trabalho, no uso do TensorFlow e no uso em várias linhas de montagem, o hardware baseado em GPU é a melhor escolha para aceleração de hardware.

Modelo de ML

Os cientistas de dados estão mais familiarizados com o TensorFlow, portanto, aprender ONNX ou outras estruturas de ML retardaria o desenvolvimento do modelo. O Azure Stack Edge fornece uma solução de borda gerenciada centralmente para todas as linhas de montagem.

Cenário do utilizador 2: Segurança

A Contoso Shipping teve vários acidentes com pedestres em suas docas de carga. A maioria dos acidentes aconteceu quando um caminhão saiu da doca de carga, e o motorista não viu um trabalhador portuário andando na frente do caminhão. A Contoso Shipping precisava de uma solução de IA de visão que pudesse observar as pessoas, prever sua direção de viagem e avisar os motoristas sobre possíveis colisões.

A maioria dos cientistas de dados da Contoso Shipping estava familiarizada com o OpenVINO e queria reutilizar os modelos de solução em hardware futuro. A solução também necessária para suportar a eficiência energética, e usar o menor número possível de câmeras. Por fim, a Contoso Shipping queria gerenciar a solução remotamente para atualizações.

Câmaras

A solução usa 11 câmeras CMOS monocromáticas de 10MP com caixas IPX67 ou caixas meteorológicas, montadas em postes de 17 pés, a 100 pés de distância dos caminhões. As seções a seguir descrevem como a Contoso Shipping determinou essas especificações.

Posicionamento da câmara

As câmeras precisavam estar a 100 metros de distância das frentes dos caminhões. O foco da câmera tinha que estar 10 pés à frente e atrás das frentes dos caminhões, dando uma profundidade de foco de 20 pés. As leis locais de zoneamento limitaram a altura da câmera de vigilância a 20 pés.

A ilustração a seguir mostra o posicionamento da câmera para esse cenário:

Ilustração do posicionamento da câmera para um cenário de IA de visão do IoT Edge.

Resolução e campo de visão

A solução deve capturar apenas detalhes suficientes para detetar uma pessoa no quadro. Os pixels por pé (PPF) podem ser em torno de 15-20, em vez dos 80 PPF que o reconhecimento facial precisa.

A fórmula para o campo de visão (FOV) é FOV=(horizontal resolution) / (PPF). Para resolução, a câmera deve usar o sensor certo para o caso de uso.

Esta solução usa lentes de câmera que permitem um FOV de 16 pés. Usando a fórmula anterior, um FOV de 16 pés dá cerca de 17,5 PPF, que se enquadra dentro dos 15-20 PPF necessários. Este FOV significa que a solução deve usar câmeras de 10MP, que têm uma resolução horizontal de cerca de 5184 pixels.

Uma vez que as câmeras podem olhar para um caminho de 16 pés, uma doca de carga de 165 pés de comprimento dividida por um FOV de 16 pés dá 10,3125 câmeras. Assim, a solução precisa de câmeras de 11, 5184 pixels horizontais ou 10MP.

Tipo de sensor

As câmeras estão ao ar livre, então o tipo de sensor não deve permitir a floração. Bloom é quando a luz atinge o sensor e sobrecarrega o sensor, causando superexposição ou branqueamento. CMOS é o sensor de eleição.

Cor e iluminação

A Contoso Shipping opera 24 horas por dia, 7 dias por semana, e também deve proteger o pessoal noturno. O monocromático lida melhor com condições de pouca luz do que com a cor. Neste caso, as informações de cor são desnecessárias. Os sensores monocromáticos também são de menor custo.

Modelo de ML

Como os cientistas de dados estão familiarizados com o OpenVINO, a solução cria modelos de dados em ONNX.

Aceleração por hardware

A distância das câmeras para os servidores é muito longe para conectividade Gigabit Ethernet ou USB, mas há uma grande rede Wi-Fi de malha. O hardware deve se conectar por Wi-Fi e usar o mínimo de energia possível.

Com base nesses requisitos, a solução usa processadores FPGA. A solução também poderia usar processadores ASIC, mas os chips ASIC construídos especificamente não atendem aos requisitos de usabilidade futura.

Contribuidores

Este artigo é mantido pela Microsoft. Foi originalmente escrito pelos seguintes contribuidores.

Autor principal:

Para ver perfis não públicos do LinkedIn, inicie sessão no LinkedIn.

Próximos passos

Esta série de artigos descreveu como criar uma carga de trabalho de IA de visão com o Azure IoT Edge. Para os outros artigos desta série, consulte:

Para saber mais sobre CNNs, vision AI, Azure Machine Learning e Azure IoT Edge, consulte a seguinte documentação:

Para obter mais arquiteturas de visão computacional, exemplos e ideias que usam o Azure IoT, consulte os seguintes artigos: