Visão computacional usando conjuntos de dados sintéticos com Amazon Rekognition Custom Labels e Dassault Systèmes 3DEXCITE PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Visão computacional usando conjuntos de dados sintéticos com Amazon Rekognition Custom Labels e Dassault Systèmes 3DEXCITE

Este é um post co-escrito com Bernard Paques, CTO da Storm Reply, e Karl Herkt, estrategista sênior da Dassault Systèmes 3DExcite.

Embora a visão computacional possa ser crucial para manutenção industrial, manufatura, logística e aplicações de consumo, sua adoção é limitada pela criação manual de conjuntos de dados de treinamento. A criação de imagens rotuladas em um contexto industrial é feita principalmente manualmente, o que cria capacidades limitadas de reconhecimento, não escala e resulta em custos de mão de obra e atrasos na realização do valor do negócio. Isso vai contra a agilidade de negócios fornecida por iterações rápidas no design do produto, engenharia do produto e configuração do produto. Esse processo não é dimensionado para produtos complexos, como carros, aviões ou prédios modernos, porque nesses cenários cada projeto de rotulagem é único (relacionado a produtos exclusivos). Como resultado, a tecnologia de visão computacional não pode ser facilmente aplicada a projetos exclusivos de grande escala sem um grande esforço na preparação de dados, às vezes limitando a entrega de casos de uso.

Neste post, apresentamos uma nova abordagem onde sistemas de visão computacional altamente especializados são criados a partir de arquivos de design e CAD. Começamos com a criação de gêmeos digitais visualmente corretos e a geração de imagens rotuladas sintéticas. Em seguida, empurramos essas imagens para Rótulos personalizados do Amazon Rekognition para treinar um modelo de detecção de objeto personalizado. Ao usar a propriedade intelectual existente com o software, estamos tornando a visão computacional acessível e relevante para uma variedade de contextos industriais.

A personalização dos sistemas de reconhecimento ajuda a impulsionar os resultados dos negócios

Sistemas especializados de visão computacional produzidos a partir de gêmeos digitais têm méritos específicos, que podem ser ilustrados nos seguintes casos de uso:

  • Rastreabilidade para produtos exclusivos – Airbus, Boeing e outros fabricantes de aeronaves atribuem Números de série do fabricante (MSNs) para todas as aeronaves que produzem. Esta é gerida ao longo de todo o processo de produção, de forma a gerar documentação de aeronavegabilidade e obter licenças para voar. UMA gêmeo digital (um modelo 3D virtual representando um produto físico) pode ser derivado da configuração de cada MSN e gera um sistema de visão computacional distribuído que acompanha o progresso desse MSN nas instalações industriais. O reconhecimento personalizado automatiza a transparência dada às companhias aéreas e substitui a maioria dos pontos de verificação realizados manualmente pelas companhias aéreas. A garantia de qualidade automatizada em produtos exclusivos pode ser aplicada a aeronaves, carros, edifícios e até produções artesanais.
  • Realidade aumentada contextualizada – Sistemas de visão computacional de nível profissional podem abranger paisagens limitadas, mas com maior capacidade de discriminação. Por exemplo, na manutenção industrial, encontrar uma chave de fenda em uma foto é inútil; você precisa identificar o modelo da chave de fenda ou até mesmo seu número de série. Nesses contextos limitados, os sistemas de reconhecimento personalizados superam os sistemas de reconhecimento genéricos porque são mais relevantes em suas descobertas. Os sistemas de reconhecimento personalizados permitem ciclos de feedback precisos por meio de realidade aumentada dedicada entregues em HMI ou em dispositivos móveis.
  • Controle de qualidade de ponta a ponta - Com Engenharia de Sistemas, você pode criar gêmeos digitais de construções parciais e gerar sistemas de visão computacional que se adaptam às várias fases dos processos de fabricação e produção. Os controles visuais podem ser interligados com as estações de trabalho de fabricação, permitindo a inspeção de ponta a ponta e a detecção precoce de defeitos. Reconhecimento personalizado para inspeção de ponta a ponta evita efetivamente a cascata de defeitos nas linhas de montagem. Reduzir a taxa de rejeição e maximizar a produção é o objetivo final.
  • Inspeção de qualidade flexível – A inspeção de qualidade moderna deve se adaptar às variações de projeto e fabricação flexível. As variações no design vêm de ciclos de feedback sobre o uso e a manutenção do produto. Fabricação flexível é um recurso chave para uma estratégia de produção sob encomenda e se alinha com o princípio de manufatura enxuta de otimização de custos. Ao integrar variações de projeto e opções de configuração em gêmeos digitais, o reconhecimento personalizado permite a adaptação dinâmica de sistemas de visão computacional aos planos de produção e variações de projeto.

Aprimore a visão computacional com o Dassault Systèmes 3DEXCITE desenvolvido com Amazon Rekognition

Dentro da Dassault Systèmes, uma empresa com profundo conhecimento em gêmeos digitais que também é o segundo maior editor de software europeu, a equipe 3DEXCITE está explorando um caminho diferente. Conforme explicado por Karl Herkt, “E se um modelo neural treinado a partir de imagens sintéticas pudesse reconhecer um produto físico?” A 3DEXCITE resolveu esse problema combinando sua tecnologia com a infraestrutura AWS, comprovando a viabilidade dessa abordagem peculiar. Também é conhecido como detecção de objetos entre domínios, onde o modelo de detecção aprende com imagens rotuladas do domínio de origem (imagens sintéticas) e faz previsões para o domínio de destino não rotulado (componentes físicos).

A Dassault Systèmes 3DEXCITE e a equipe de prototipagem da AWS uniram forças para construir um sistema de demonstração que reconhece partes de uma caixa de engrenagens industrial. Este protótipo foi construído em 3 semanas, e o modelo treinado alcançou uma pontuação F98 de 1%. O modelo de reconhecimento foi treinado inteiramente a partir de um pipeline de software, que não apresenta nenhuma imagem de uma peça real. A partir de arquivos de design e CAD de uma caixa de engrenagens industrial, a 3DEXCITE criou gêmeos digitais visualmente corretos. Eles também geraram milhares de imagens rotuladas sintéticas dos gêmeos digitais. Em seguida, eles usaram os rótulos personalizados do Rekognition para treinar um modelo neural altamente especializado a partir dessas imagens e forneceram uma API de reconhecimento relacionada. Eles construíram um site para permitir o reconhecimento de qualquer webcam de uma parte física da caixa de engrenagens.

Reconhecimento da Amazônia é um serviço de IA que usa tecnologia de aprendizado profundo para permitir que você extraia metadados significativos de imagens e vídeos, incluindo a identificação de objetos, pessoas, texto, cenas, atividades e conteúdo potencialmente inapropriado, sem necessidade de experiência em aprendizado de máquina (ML). O Amazon Rekognition também oferece recursos de análise facial e pesquisa facial altamente precisos que você pode usar para detectar, analisar e comparar faces para uma ampla variedade de casos de uso de verificação de usuários, contagem de pessoas e segurança. Por fim, com os rótulos personalizados do Rekognition, você pode usar seus próprios dados para criar modelos de detecção de objetos e classificação de imagens.

A combinação da tecnologia Dassault Systèmes para a geração de imagens rotuladas sintéticas com Rekognition Custom Labels para visão computacional fornece um fluxo de trabalho escalável para sistemas de reconhecimento. A facilidade de uso é um fator positivo significativo aqui, porque adicionar rótulos personalizados do Rekognition ao pipeline geral de software não é difícil — é tão simples quanto integrar uma API em um fluxo de trabalho. Não há necessidade de ser um cientista de ML; basta enviar os quadros capturados para a AWS e receber um resultado que você pode inserir em um banco de dados ou exibir em um navegador da web.

Isso ressalta ainda mais a melhoria dramática em relação à criação manual de conjuntos de dados de treinamento. Você pode obter melhores resultados mais rapidamente e com maior precisão, sem a necessidade de horas de trabalho dispendiosas e desnecessárias. Com tantos casos de uso em potencial, a combinação da Dassault Systèmes e da Rekognition Custom Labels tem o potencial de fornecer às empresas de hoje um ROI significativo e imediato.

Visão geral da solução

A primeira etapa desta solução é renderizar as imagens que criam o conjunto de dados de treinamento. Isso é feito pela plataforma 3DEXCITE. Podemos gerar os dados de rotulagem programaticamente usando scripts. Verdade no solo do Amazon SageMaker fornece uma ferramenta de anotação para rotular facilmente imagens e vídeos para tarefas de classificação e detecção de objetos. Para treinar um modelo no Amazon Rekognition, o arquivo de rotulagem precisa estar em conformidade com o formato Ground Truth. Esses rótulos estão em JSON, incluindo informações como tamanho da imagem, coordenadas da caixa delimitadora e IDs de classe.

Em seguida, carregue as imagens sintéticas e o manifesto para Serviço de armazenamento simples da Amazon (Amazon S3), onde os rótulos personalizados do Rekognition podem importá-los como componentes do conjunto de dados de treinamento.

Para permitir que os rótulos personalizados do Rekognition testem os modelos em relação a um conjunto de imagens de componentes reais, fornecemos um conjunto de imagens das peças reais do mecanismo tiradas com uma câmera e as carregamos no Amazon S3 para usar como conjunto de dados de teste.

Por fim, o Rekognition Custom Labels treina o melhor modelo de detecção de objetos usando o conjunto de dados de treinamento sintético e o conjunto de dados de teste composto por imagens de objetos reais e cria o endpoint com o modelo que podemos usar para executar o reconhecimento de objetos em nosso aplicativo.

O diagrama a seguir ilustra nosso fluxo de trabalho da solução:
Visão computacional usando conjuntos de dados sintéticos com Amazon Rekognition Custom Labels e Dassault Systèmes 3DEXCITE PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Crie imagens sintéticas

As imagens sintéticas são geradas a partir da plataforma 3Dexperience, que é um produto da Dassault Systèmes. Essa plataforma permite criar e renderizar imagens fotorrealistas com base no arquivo CAD (computer-aided design) do objeto. Podemos gerar milhares de variantes em poucas horas alterando as configurações de transformação de imagem na plataforma.

Neste protótipo, selecionamos as seguintes cinco peças de caixa de engrenagens visualmente distintas para detecção de objetos. Eles incluem uma caixa de engrenagens, relação de transmissão, tampa do mancal, flange e engrenagem helicoidal.
Visão computacional usando conjuntos de dados sintéticos com Amazon Rekognition Custom Labels e Dassault Systèmes 3DEXCITE PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Usamos os seguintes métodos de aumento de dados para aumentar a diversidade da imagem e tornar os dados sintéticos mais fotorrealistas. Isso ajuda a reduzir o erro de generalização do modelo.

  • Zoom in / out – Este método aumenta ou diminui aleatoriamente o objeto nas imagens.
  • rotação – Esse método gira o objeto em imagens e parece que uma câmera virtual tira fotos aleatórias do objeto em ângulos de 360 ​​graus.
  • Melhorar a aparência do material – Identificamos que para algumas peças de equipamentos a aparência do material é menos realista na renderização inicial. Adicionamos um efeito metálico para melhorar as imagens sintéticas.
  • Use diferentes configurações de iluminação – Neste protótipo, simulamos duas condições de iluminação:
    • Armazém – Uma distribuição de luz realista. Sombras e reflexos são possíveis.
    • Studio – Uma luz homogênea é colocada ao redor do objeto. Isso não é realista, mas não há sombras ou reflexos.
  • Use uma posição realista de como o objeto é visto em tempo real – Na vida real, alguns objetos, como um flange e uma tampa de rolamento, geralmente são colocados em uma superfície, e o modelo está detectando os objetos com base nas facetas superior e inferior. Portanto, removemos as imagens de treinamento que mostram a borda fina das peças, também chamada de posição da borda, e aumentamos as imagens de objetos em posição plana.
  • Adicione vários objetos em uma imagem – Em cenários da vida real, várias peças de engrenagem podem aparecer em uma única visualização, então preparamos imagens que contêm várias peças de engrenagem.

Na plataforma 3Dexperience, podemos aplicar diferentes planos de fundo às imagens, o que pode ajudar a aumentar ainda mais a diversidade de imagens. Devido à limitação de tempo, não implementamos isso neste protótipo.
Visão computacional usando conjuntos de dados sintéticos com Amazon Rekognition Custom Labels e Dassault Systèmes 3DEXCITE PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Importar o conjunto de dados de treinamento sintético

No ML, dados rotulados significam que os dados de treinamento são anotados para mostrar o destino, que é a resposta que você deseja que seu modelo de ML preveja. Os dados rotulados que podem ser consumidos pelos rótulos personalizados do Rekognition devem estar em conformidade com os requisitos do arquivo de manifesto do Ground Truth. Um arquivo de manifesto é composto por uma ou mais linhas JSON; cada linha contém as informações de uma única imagem. Para dados de treinamento sintéticos, as informações de rotulagem podem ser geradas programaticamente com base no arquivo CAD e nas configurações de transformação de imagem que mencionamos anteriormente, o que economiza um esforço manual significativo de rotulagem. Para obter mais informações sobre os requisitos para rotular formatos de arquivo, consulte Crie um arquivo de manifesto e Localização de objetos em arquivos de manifesto. Veja a seguir um exemplo de rotulagem de imagem:

{ "source-ref": "s3://<bucket>/<prefix>/multiple_objects.png", "bounding-box": { "image_size": [ { "width": 1024, "height": 1024, "depth": 3 } ], "annotations": [ { "class_id": 1, "top": 703, "left": 606, "width": 179, "height": 157 }, { "class_id": 4, "top": 233, "left": 533, "width": 118, "height": 139 }, { "class_id": 0, "top": 592, "left": 154, "width": 231, "height": 332 }, { "class_id": 3, "top": 143, "left": 129, "width": 268, "height": 250 } ] }, "bounding-box-metadata": { "objects": [ { "confidence": 1 }, { "confidence": 1 }, { "confidence": 1 }, { "confidence": 1 } ], "class-map": { "0": "Gear_Housing", "1": "Gear_Ratio", "3": "Flange", "4": "Worm_Gear" }, "type": "groundtruth/object-detection", "human-annotated": "yes", "creation-date": "2021-06-18T11:56:01", "job-name": "3DEXCITE" }
}

Depois que o arquivo de manifesto é preparado, fazemos o upload para um bucket do S3 e, em seguida, criamos um conjunto de dados de treinamento no Rekognition Custom Labels selecionando a opção Importe imagens marcadas por Amazon SageMaker Ground Truth.
Visão computacional usando conjuntos de dados sintéticos com Amazon Rekognition Custom Labels e Dassault Systèmes 3DEXCITE PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Depois que o arquivo de manifesto é importado, podemos visualizar as informações de rotulagem visualmente no console do Amazon Rekognition. Isso nos ajuda a confirmar que o arquivo de manifesto foi gerado e importado. Mais especificamente, as caixas delimitadoras devem se alinhar com os objetos nas imagens e os IDs de classe dos objetos devem ser atribuídos corretamente.
Visão computacional usando conjuntos de dados sintéticos com Amazon Rekognition Custom Labels e Dassault Systèmes 3DEXCITE PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Criar o conjunto de dados de teste

As imagens de teste são capturadas na vida real com um telefone ou câmera de diferentes ângulos e condições de iluminação, porque queremos validar a precisão do modelo, que treinamos usando dados sintéticos, em relação aos cenários da vida real. Você pode fazer upload dessas imagens de teste para um bucket do S3 e importá-las como conjuntos de dados em Rótulos personalizados do Rekognition. Ou você pode carregá-los diretamente para conjuntos de dados de sua máquina local.
Visão computacional usando conjuntos de dados sintéticos com Amazon Rekognition Custom Labels e Dassault Systèmes 3DEXCITE PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Os rótulos personalizados do Rekognition fornecem capacidade de anotação de imagem integrada, que tem uma experiência semelhante à do Ground Truth. Você pode iniciar o trabalho de rotulagem quando os dados de teste são importados. Para um caso de uso de detecção de objetos, as caixas delimitadoras devem ser criadas firmemente ao redor dos objetos de interesse, o que ajuda o modelo a aprender com precisão as regiões e pixels que pertencem aos objetos de destino. Além disso, você deve rotular cada instância dos objetos de destino em todas as imagens, mesmo aquelas que estão parcialmente fora de vista ou ocluídas por outros objetos, caso contrário o modelo prevê mais falsos negativos.
Visão computacional usando conjuntos de dados sintéticos com Amazon Rekognition Custom Labels e Dassault Systèmes 3DEXCITE PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Criar o modelo de detecção de objeto entre domínios

O Rekognition Custom Labels é um serviço totalmente gerenciado; você só precisa fornecer os conjuntos de dados de treinamento e teste. Ele treina um conjunto de modelos e escolhe o de melhor desempenho com base nos dados fornecidos. Neste protótipo, preparamos os conjuntos de dados de treinamento sintéticos de forma iterativa, experimentando diferentes combinações dos métodos de aumento de imagem que mencionamos anteriormente. Um modelo é criado para cada conjunto de dados de treinamento no Rekognition Custom Labels, o que nos permite comparar e encontrar o conjunto de dados de treinamento ideal para este caso de uso especificamente. Cada modelo tem o número mínimo de imagens de treinamento, contém boa diversidade de imagens e fornece a melhor precisão do modelo. Após 15 iterações, alcançamos uma pontuação F1 de 98% de precisão do modelo usando cerca de 10,000 imagens sintéticas de treinamento, o que equivale a 2,000 imagens por objeto em média.
Visão computacional usando conjuntos de dados sintéticos com Amazon Rekognition Custom Labels e Dassault Systèmes 3DEXCITE PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Resultados da inferência do modelo

A imagem a seguir mostra o modelo do Amazon Rekognition sendo usado em um aplicativo de inferência em tempo real. Todos os componentes são detectados corretamente com alta confiança.

Visão computacional usando conjuntos de dados sintéticos com Amazon Rekognition Custom Labels e Dassault Systèmes 3DEXCITE PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Conclusão

Neste post, demonstramos como treinar um modelo de visão computacional em imagens puramente sintéticas e como o modelo ainda pode reconhecer objetos do mundo real de forma confiável. Isso economiza um esforço manual significativo para coletar e rotular os dados de treinamento. Com essa exploração, a Dassault Systèmes está expandindo o valor comercial dos modelos de produtos 3D criados por designers e engenheiros, porque agora você pode usar dados CAD, CAE e PLM em sistemas de reconhecimento de imagens no mundo físico.

Para obter mais informações sobre os principais recursos e casos de uso dos rótulos personalizados do Rekognition, consulte Rótulos personalizados do Amazon Rekognition. Se suas imagens não forem rotuladas nativamente com Ground Truth, como foi o caso deste projeto, consulte Criando um arquivo de manifesto para converter seus dados de rotulagem para o formato que os Rótulos personalizados do Rekognition podem consumir.


Sobre os autores

Visão computacional usando conjuntos de dados sintéticos com Amazon Rekognition Custom Labels e Dassault Systèmes 3DEXCITE PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.Amadeirado Borraccino atualmente é um arquiteto de soluções especialista em machine learning sênior na AWS. Baseado em Milão, Itália, Woody trabalhou no desenvolvimento de software antes de ingressar na AWS em 2015, onde seu crescimento é a paixão pelas tecnologias de Visão Computacional e Computação Espacial (AR/VR/XR). Sua paixão agora está focada na inovação do metaverso. Siga-o em Linkedin.

Visão computacional usando conjuntos de dados sintéticos com Amazon Rekognition Custom Labels e Dassault Systèmes 3DEXCITE PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.Ying Hou, PhD, é Arquiteto de Prototipagem de Machine Learning na AWS. Suas principais áreas de interesse são Deep Learning, Computer Vision, PNL e previsão de dados de séries temporais. Em seu tempo livre, ela gosta de ler romances e fazer caminhadas em parques nacionais no Reino Unido.

Visão computacional usando conjuntos de dados sintéticos com Amazon Rekognition Custom Labels e Dassault Systèmes 3DEXCITE PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.Bernardo Paques atualmente é CTO da Storm Reply com foco em soluções industriais implantadas na AWS. Baseado em Paris, França, Bernard trabalhou anteriormente como Arquiteto de Soluções Principal e Consultor Principal na AWS. Suas contribuições para a modernização empresarial abrangem AWS for Industrial, AWS CDK e agora se originam em TI verde e sistemas baseados em voz. Siga-o em Twitter.

Visão computacional usando conjuntos de dados sintéticos com Amazon Rekognition Custom Labels e Dassault Systèmes 3DEXCITE PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.Carlos Herkt é atualmente estrategista sênior da Dassault Systèmes 3DExcite. Baseado em Munique, Alemanha, ele cria implementações inovadoras de visão computacional que entregam resultados tangíveis. Siga-o em LinkedIn.

Carimbo de hora:

Mais de Aprendizado de máquina da AWS