Como projetar e implantar rapidamente sistemas inteligentes de visão de máquina

By Jeff Shepard

Contributed By DigiKey's North American Editors

A necessidade de visão de máquina, ou sistema de visão, está crescendo em uma gama de aplicações, incluindo segurança, câmeras de trânsito e de cidade, análise de varejo, inspeção automatizada, controle de processos e robótica guiada por visão. A visão de máquina é complexa de implementar e requer a integração de diversas tecnologias e subsistemas, incluindo hardware de alto desempenho e software avançado de inteligência artificial/aprendizagem da máquina (AI/ML). Ela começa com a otimização da tecnologia de captura de vídeo e E/S de visão para atender às necessidades da aplicação e se estende a várias pipelines de processamento de imagem para uma conectividade eficiente. Em última instância, depende de permitir que o sistema de visão embarcado realize análises baseadas em visão em tempo real usando hardware de alto desempenho, como matriz de portas programáveis no campo (FPGAs), sistemas sobre módulos (SOMs), sistemas sobre chips (SoCs) e até mesmo os sistemas multiprocessadores sobre chips (MPSoCs) para executar o software necessário de processamento e reconhecimento de imagem AI/ML. Este pode ser um processo complexo, caro e demorado que está exposto a numerosas oportunidades de custos excessivos e atrasos de cronograma.

Em vez de começar do zero, os projetistas podem se voltar para uma plataforma de desenvolvimento bem calibrada e de alto desempenho que acelera o tempo de colocação no mercado, controla os custos e reduz os riscos de desenvolvimento ao mesmo tempo em que suporta altos graus de flexibilidade de aplicação e desempenho. Uma plataforma de desenvolvimento baseada em SOM pode fornecer um ambiente integrado de hardware e software, permitindo aos desenvolvedores focar na customização de aplicações e economizar até nove meses de tempo de desenvolvimento. Além do ambiente de desenvolvimento, a mesma arquitetura SOM está disponível em configurações otimizadas de produção para ambientes comerciais e industriais, aumentando a confiabilidade e qualidade da aplicação, reduzindo ainda mais os riscos e acelerando o tempo de colocação no mercado.

Este artigo começa revendo os desafios associados ao desenvolvimento de sistemas de visão de máquina de alto desempenho, depois apresenta o ambiente de desenvolvimento abrangente oferecido pelo kit de iniciante Kria KV260 vision AI da AMD Xilinx, e finaliza com exemplos de SOMs prontos para produção, baseados na plataforma Kira 26 projetada para ser conectada a uma placa portadora com periféricos específicos da solução.

Começa com a otimização dos tipos de dados

As necessidades de algoritmos de aprendizado profundo estão evoluindo. Nem todas as aplicações precisam de cálculos de alta precisão. Estão sendo usados tipos de dados de menor precisão, como INT8, ou formatos de dados personalizados. Os sistemas baseados em GPU podem ser desafiados com a tentativa de modificar arquiteturas otimizadas para dados de alta precisão para acomodar formatos de dados de baixa precisão de forma eficiente. O SOM Kria K26 é reconfigurável, o que lhe permite suportar uma ampla gama de tipos de dados desde FP32 até INT8 e outros. A reconfigurabilidade também resulta em um menor consumo geral de energia. Por exemplo, as operações otimizadas para INT8 consomem energia com uma ordem de grandeza a menos em comparação com uma operação FP32 (Figura 1).

Imagem da energia necessária para as operações INT8 em comparação com as operações FP32Figura 1: Uma energia com uma ordem de magnitude a menos é necessária para as operações INT8 (8b Add) em comparação com as operações FP32 (32b Add). (Fonte da imagem: AMD Xilinx)

Arquitetura ideal para um consumo mínimo de energia

Os projetos implementados com base em uma arquitetura GPU ou CPU de vários núcleos podem ser ávidos por energia com base em padrões típicos de uso da energia:

  • 30% para os núcleos
  • 30% para a memória interna (L1, L2, L3)
  • 40% para a memória externa (como o DDR)

Os acessos frequentes à memória DDR ineficiente são exigidos pelas GPUs para suportar a programabilidade e podem ser um gargalo para as demandas de computação de alta largura de banda. A arquitetura Zynq MPSoC utilizada no SOM Kria K26 suporta o desenvolvimento de aplicações com pouco ou nenhum acesso à memória externa. Por exemplo, em uma aplicação automotiva típica, a comunicação entre a GPU e vários módulos requer múltiplos acessos à memória DDR externa, enquanto a solução baseada no Zynq MPSoC incorpora uma pipeline projetada para evitar a maioria dos acessos DDR (Figura 2).

Diagrama de SOC típico vs AMD Xilinx Zynq MPSoCFigura 2: Nesta aplicação automotiva típica, a GPU requer múltiplos acessos à DDR para comunicação entre os vários módulos (à esquerda), enquanto a arquitetura de pipeline do Zynq MPSoC (à direita) evita a maioria dos acessos à DDR. (Fonte da imagem: AMD Xilinx)

A poda fomenta as vantagens

O desempenho das redes neurais no SOM K26 pode ser melhorado usando uma ferramenta de otimização AI que permite a otimização e a poda de dados. É muito comum que as redes neurais sejam super-parametrizadas, levando a altos níveis de redundância que podem ser otimizados usando a poda de dados e a compressão de modelos. O uso do AI Optimizer da Xilinx pode resultar em uma redução de 50x na complexidade do modelo, com um impacto nominal na precisão do modelo. Por exemplo, um detector de disparo único (SSD) mais uma arquitetura de rede neural de convolução (CNN) VGG com 117 Giga Operações (Gops) foi refinado em 11 iterações de poda usando o AI Optimizer. Antes da otimização, o modelo executava 18 quadros por segundo (FPS) em um Zynq UltraScale+ MPSoC. Após 11 iterações — a 12a execução do modelo — a complexidade foi reduzida de 117 Gops para 11,6 Gops (10X), o desempenho aumentou de 18 para 103 FPS (5X), e a média das precisões médias (mAP) caiu de 61,55 para detecção de objetos para 60,4 mAP (apenas 1% menor) (Figura 3).

Gráfico de vantagem da podaFigura 3: Após relativamente poucas iterações, a poda pode reduzir a complexidade do modelo (Gop) em 10X e melhorar o desempenho (FPS) em 5X, com apenas 1% de redução na precisão (mAP). (Fonte da imagem: AMD Xilinx)

Exemplo de aplicação no mundo real

Uma aplicação de aprendizagem de máquinas para detecção e reconhecimento de placas de automóvel, também chamada de reconhecimento de placas de automóvel (ANPR), foi desenvolvida com base no software de análise de visão da Uncanny Vision. O ANPR é utilizado no acesso aos sistemas automatizados de pedágio, monitoramento de rodovias, portões de segurança e estacionamentos, entre outras aplicações. Esta aplicação ANPR inclui uma pipeline baseada em IA que decodifica o vídeo e pré-processa a imagem, seguido pela detecção ML e pelo reconhecimento de caracteres OCR (Figura 4).

Diagrama do fluxo típico de processamento de imagem para uma aplicação ANPR baseada em AI (clique para ampliar)Figura 4: Fluxo típico de processamento de imagem para uma aplicação ANPR baseada em AI. (Fonte da imagem: AMD Xilinx)

A implementação do ANPR requer um ou mais feeds de protocolo de streaming em tempo real (RTSP) com codificação H.264 ou H.265 que são decodificados ou não comprimidos. Os quadros de vídeo decodificados são escalonados, cortados, o espaço de cor convertido e normalizados (pré-processados), depois enviados para o algoritmo de detecção ML. As implementações de alto desempenho do ANPR requerem uma pipeline AI em várias etapas. A primeira etapa detecta e localiza o veículo na imagem, criando a região de interesse (ROI). Ao mesmo tempo, outros algoritmos otimizam a qualidade da imagem para uso posterior pelo algoritmo de reconhecimento de caracteres OCR e rastreiam o movimento do veículo através de múltiplos quadros. A ROI do veículo é ainda cortada para gerar a ROI processada do número da placa pelo algoritmo de OCR para determinar os caracteres no número da placa. Em comparação com outros SOMs comerciais baseados em GPUs ou CPUs, a aplicação ANPR da Uncanny Vision executou de 2 a 3 vezes mais rápida no SOM Kira KV260, custando menos de 100 dólares por feed RTSP.

Ambiente de desenvolvimento da visão inteligente

Os projetistas de aplicações de visão inteligente como câmeras de trânsito e de cidade, análise de varejo, segurança, automação industrial e robótica podem recorrer ao ambiente de desenvolvimento Kria K26 SOM AI Starter. Este ambiente é construído usando a arquitetura Zynq® UltraScale+™ MPSoC e tem uma biblioteca crescente de pacotes calibrados de software de aplicação (Figura 5). O SOM Al Starter inclui um processador Arm Cortex-A53 de quatro núcleos, mais de 250 mil células lógicas e um codec de vídeo H.264/265. O SOM também tem 4 GB de memória DDR4, 245 E/S, e 1,4 tera-ops de computação AI para suportar a criação de aplicações AI de visão de alto desempenho, oferecendo desempenho mais de 3X maior com menor latência e menor potência em comparação com outras abordagens de hardware. As aplicações pré-compiladas permitem que os projetos iniciais funcionem em menos de uma hora.

Imagem do kit de inciante Kria KV260 vision AI da AMD XilinxFigura 5: O kit de iniciante Kria KV260 vision AI é um ambiente de desenvolvimento abrangente para aplicações de visão de máquina. (Fonte da imagem: AMD Xilinx)

Para ajudar a iniciar o processo de desenvolvimento usando o SOM Kria K26, a AMD Xilinx oferece o kit de iniciante KV260 vision AI que inclui um adaptador de energia, cabo Ethernet, cartão microSD, cabo USB, cabo HDMI e um módulo de câmera (Figura 6). Se não for necessário todo o kit de iniciante, os desenvolvedores podem simplesmente adquirir o adaptador de energia opcional para começar a usar o SOM Kira K26.

Imagem do kit de iniciante KV260 vision AI da AMD XilinxFigura 6: O kit de iniciante KV260 vision AI inclui: (linha superior, da esquerda para a direita) fonte de alimentação, cabo Ethernet, cartão microSD e (linha inferior, da esquerda para a direita) cabo USB, cabo HDMI, módulo de câmera. (Imagem: AMD Xilinx)

Outro fator que acelera o desenvolvimento é a ampla gama de características, incluindo E/S diferenciais abundantes, de 1,8 V, 3,3 V de terminais simples, com quatro transceptores de 6 Gb/s e quatro transceptores de 12,5 Gb/s. Estas características permitem o desenvolvimento de aplicações com maior número de sensores de imagem por SOM e muitas variações de interfaces de sensores como MIPI, LVDS, SLVS e SLVS-EC, que nem sempre são suportadas por produtos padrões específicos da aplicação (ASSPs) ou GPUs. Os desenvolvedores também podem implementar DisplayPort, HDMI, PCIe, USB2.0/3.0, e padrões definidos pelo usuário com a lógica programável incorporada.

Finalmente, o desenvolvimento de aplicações AI foi simplificado e tornado mais acessível, acoplando as amplas capacidades de hardware e ambiente de software do SOM K26 com aplicações de visão, prontas para produção. Estas aplicações de visão podem ser implementadas sem necessidade de projeto de hardware FPGA e permitem aos desenvolvedores de software integrar rapidamente modelos de AI personalizados e código de aplicação e até mesmo modificar a pipeline de visão. A plataforma unificada de desenvolvimento de software Vitis e as bibliotecas do Xilinx suportam ambientes de projeto comuns, como estruturas TensorFlow, Pytorch e Café, bem como múltiplas linguagens de programação, incluindo C, C++, OpenCL™ e Python. Há também uma loja de aplicativos embutidos para aplicações de borda usando SOMs Kria da Xilinx e seus parceiros de ecossistema. As ofertas Xilinx são gratuitas e de código aberto e incluem rastreamento de câmera inteligente e detecção de rosto, processamento de linguagem natural com visão inteligente, e muito mais.

SOMs Kira 26 otimizados para produção

Uma vez concluído o processo de desenvolvimento, estão disponíveis versões prontas para produção do SOM K26 projetado para ser conectado a uma placa portadora com periféricos específicos da solução, que podem acelerar a transição para a fabricação (Figura 7). O SOM K26 básico é uma unidade de grau comercial com um dimensionamento de temperatura de 0°C a +85°C da temperatura de junção, conforme medida pelo sensor interno de temperatura. Também está disponível uma versão de grau industrial do SOM K26 dimensionada para operação de -40°C a +100°C.

O mercado industrial exige uma longa vida operacional em ambientes agressivos. O SOM Kria de grau industrial é projetado para dez anos de operação a 100°C na junção e 80% de umidade relativa e para suportar até 40 g de choque e 5 g de vibração eficaz (RMS). Também vem com uma disponibilidade mínima de produção de dez anos para suportar longos ciclos de vida do produto.

Imagem dos SOMs Kira 26 da Xilinx otimizados para a produçãoFigura 7: SOMs Kira 26 otimizados para produção em ambientes industriais e comerciais e projetados para serem conectados a uma placa portadora com periféricos específicos da solução. (Imagem: DigiKey)

Resumo

Os projetistas de aplicações de visão de máquina ou sistema de visão, tais como segurança, tráfego e câmeras de cidades, análise de varejo, inspeção automatizada, controle de processos e robótica guiada por visão podem recorrer ao Kria-K26-SOM-AI-Starter para acelerar o tempo de comercialização, ajudar a controlar custos e reduzir os riscos de desenvolvimento. Esta plataforma de desenvolvimento baseada em SOM é um ambiente integrado de hardware e software, permitindo aos desenvolvedores focar na customização de aplicações e economizar até nove meses de tempo de desenvolvimento. A mesma arquitetura SOM está disponível em configurações otimizadas para produção em ambientes comerciais e industriais, acelerando ainda mais o tempo de colocação no mercado. A versão industrial tem uma disponibilidade mínima de produção de 10 anos para suportar longos ciclos de vida do produto.

DigiKey logo

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.

About this author

Image of Jeff Shepard

Jeff Shepard

Jeff has been writing about power electronics, electronic components, and other technology topics for over 30 years. He started writing about power electronics as a Senior Editor at EETimes. He subsequently founded Powertechniques, a power electronics design magazine, and later founded Darnell Group, a global power electronics research and publishing firm. Among its activities, Darnell Group published PowerPulse.net, which provided daily news for the global power electronics engineering community. He is the author of a switch-mode power supply text book, titled “Power Supplies,” published by the Reston division of Prentice Hall.

Jeff also co-founded Jeta Power Systems, a maker of high-wattage switching power supplies, which was acquired by Computer Products. Jeff is also an inventor, having his name is on 17 U.S. patents in the fields of thermal energy harvesting and optical metamaterials and is an industry source and frequent speaker on global trends in power electronics. He has a Masters Degree in Quantitative Methods and Mathematics from the University of California.

About this publisher

DigiKey's North American Editors